1 /******************************************************************************************
2 * 函數(shù)功能:CRC校驗用函數(shù)
3 * 函數(shù)輸入:puchMsgg是要進行CRC校驗的消息,usDataLen是消息中字節(jié)數(shù)
4 * 函數(shù)輸出:計算出來的CRC校驗碼。
5 ****************************************************************8*************************/
6 uint16_t CRC16(uint8_t *puchMsgg,uint8_t usDataLen)//puchMsgg是要進行CRC校驗的消息,usDataLen是消息中字節(jié)數(shù)
7 {
8 uint8_t uchCRCHi = 0xFF ; /* 高CRC字節(jié)初始化*/
9 uint8_t uchCRCLo = 0xFF ; /* 低CRC 字節(jié)初始化*/
10 uint8_t uIndex ; /* CRC循環(huán)中的索引*/
11 while (usDataLen--) /* 傳輸消息緩沖區(qū)*/
12 {
13 uIndex = uchCRCHi ^ *puchMsgg++ ; /* 計算CRC */
14 uchCRCHi = uchCRCLo ^ auchCRCHi[uIndex] ;
15 uchCRCLo = auchCRCLo[uIndex] ;
16 }
17 return ((uchCRCHi<< 8) | uchCRCLo) ;
18 }
用法舉例:
1 void MessageHandle(uint8_t *pointer_in,uint8_t *pointer_out)
2 {
3 CalKey = CRC16(pointer_in+1,*pointer_in-2); //對接收到的命令進行CRC校驗,得到新的校驗碼
4 //寫入校驗碼
5 SendKey = CRC16(Pointer_out+1,3);
6 //將計算出來的校驗碼裝入輸出數(shù)據(jù)緩存中
7 *(Pointer_out+4) = (uint8_t)(SendKey>>8);
8 *(Pointer_out+5) = (uint8_t)(SendKey&0x00FF);
9 }
用法中,對于發(fā)送幀,是先放CRC高位,后放CRC低位,但在標準ModBus中,先放CRC低位,后放CRC高位。
上一篇:STM8S IO口基本輸入輸出
下一篇:STM8S103之tim1PWM輸出
推薦閱讀
史海拾趣
隨著技術(shù)的不斷進步,Analog Power公司始終保持著對技術(shù)創(chuàng)新的熱情。他們不斷研發(fā)新的電源管理技術(shù)和產(chǎn)品,推出了一系列具有高性能、高效率、低功耗特點的電源管理解決方案。這些創(chuàng)新產(chǎn)品不僅滿足了客戶的需求,也引領(lǐng)了市場的發(fā)展潮流,使得Analog Power在行業(yè)中逐漸嶄露頭角。
除了在制表業(yè)取得顯著成就外,ETERNA還在生物技術(shù)領(lǐng)域進行了積極探索。公司利用專有的非病毒、非DNA方法,使用mRNA進行細胞重編程研究。這一技術(shù)旨在通過表達特定的蛋白質(zhì)來逆轉(zhuǎn)細胞的老化過程,實現(xiàn)“倒轉(zhuǎn)時鐘”的效果。雖然ETERNA在mRNA領(lǐng)域的具體成果尚未對外公布,但其在該領(lǐng)域的探索精神和技術(shù)實力已經(jīng)引起了業(yè)界的廣泛關(guān)注。
為了進一步擴大市場份額,Antenna Factor公司積極尋求與各行各業(yè)的合作伙伴建立合作關(guān)系。他們與多家通信設(shè)備制造商、電信運營商以及互聯(lián)網(wǎng)企業(yè)簽訂了戰(zhàn)略合作協(xié)議,共同推動無線通信技術(shù)的發(fā)展和應(yīng)用。這些合作不僅為公司帶來了更多的商業(yè)機會,也提升了其在行業(yè)中的影響力。
隨著公司實力的不斷增強,Cal-Chip Electronics公司開始將目光投向國際市場。在XXXX年,公司成功開拓了歐洲市場,并在當?shù)卦O(shè)立了分支機構(gòu)。隨后,公司又陸續(xù)進入北美、亞洲等多個國家和地區(qū),實現(xiàn)了業(yè)務(wù)的全球化布局。在國際市場的拓展過程中,公司不僅提升了品牌知名度,也積累了豐富的國際運營經(jīng)驗。
隨著產(chǎn)品線的不斷豐富和技術(shù)實力的提升,Cofan Usa Inc公司開始積極拓展國內(nèi)外市場。通過與各大電商平臺和實體零售商建立合作關(guān)系,公司成功將產(chǎn)品推向更廣泛的消費者群體。同時,公司注重品牌建設(shè),通過精準的市場定位和有效的營銷策略,逐漸樹立了獨特的品牌形象。
基于DDS的幅值可調(diào)信號發(fā)生器的設(shè)計 本帖最后由 paulhyde 于 2014-9-15 03:40 編輯 本系統(tǒng)設(shè)計是以單片機AT89S52為控制器,以微處理器應(yīng)用技術(shù)和DDS AD9850技術(shù)為核心,通過微處理器控制AD9850,實現(xiàn)頻率預(yù)置、控制字的設(shè)置等功能。AD9850實現(xiàn)信號發(fā)生器功能,微處理器控制D/A轉(zhuǎn)換器 ...… 查看全部問答∨ |
如何創(chuàng)建二級菜單呢? 我現(xiàn)在是在一級菜單中,選擇對應(yīng)項去TrackPopupMenuEx另一個菜單.... 但是如何把菜單設(shè)置成含有二級菜單呢? 不太會用SetMenuItemInfo 求教~… 查看全部問答∨ |
int icmpv6_NS(char *pIfname, struct in6_addr *dst) { int sockfd = -1; int sockopt = 0; int rc = 0; char buff[512] ...… 查看全部問答∨ |
有兩個問題向大家請教:(1)CE6。0 ARM V5 的模擬器 有沒有?是否需要自己定制` (2)是否有人定制過無人機界面的CE6.0 操作系統(tǒng)… 查看全部問答∨ |
#include<stdio.h>#include<stdlib.h> int cmp(const void *p, const void *q); int cmp(const void *p, const void *q){ return(*(int*)p - *(int*)q);} intmain(int argc, char **argv){ &n ...… 查看全部問答∨ |
|
STM8S用內(nèi)部RC,外部引腳OSCIN,OSCOUT有沒有必要加上CL1和CL2這 為什么板子用內(nèi)部RC,外部引腳OSCIN,OSCOUT加上CL1和CL2這兩個電容,為什么時不時引起復(fù)位呢? [ 本帖最后由 kgdfntxgt 于 2012-7-22 17:39 編輯 ]… 查看全部問答∨ |
|
發(fā)一段調(diào)試串口的代碼,請高手看看哪里有問題 前幾天寫了一段小程序,驗證一下串口的。我的意思是每次從電腦的串口調(diào)試助手里發(fā)字符"OK"過去,lunchpad一次返回‘A\'、\'B\'、\'C\'。不過每次它都返回的是A。而改變rx_count這個變量,直接給它賦值(而不是自加),它三個字母都可以分別返回 ...… 查看全部問答∨ |
書來了!《OP放大器應(yīng)用技巧100例》看后可長知識啦!需要收藏 有的朋友就不要下了,,沒有的童鞋,可以認真看看。例子很多。 這里來一本書,《OP放大器應(yīng)用技巧100例-最佳選擇與運用》 … 查看全部問答∨ |
設(shè)計資源 培訓(xùn) 開發(fā)板 精華推薦
- 英飛凌穩(wěn)居微控制器領(lǐng)域榜首,鞏固其在全球車用半導(dǎo)體市場的領(lǐng)導(dǎo)地位
- 迅為imx6ull開發(fā)板使用c語言調(diào)用shell命令控制led燈
- 迅為IMX8MM開發(fā)板Android編譯環(huán)境搭建
- 迅為IMX6ULL開發(fā)板NFS服務(wù)器的使用
- 迅為ITOP4412開發(fā)板Qt界面添加圖片
- 迅為IMX6開發(fā)板OTA遠程升級-SWUpdata概述和使用
- 迅為IMX6ULL開發(fā)板NFS服務(wù)器的搭建
- 迅為IMX6開發(fā)板Buildroot文件系統(tǒng)4G撥號上網(wǎng)工具測試
- 實驗分享丨迅為IMX6ULL開發(fā)板點亮第一個led燈
- 我愛 TI Webench 之學(xué)課程傳設(shè)計,贏禮100% !
- 免費下載|是德科技邀你體驗各種測試軟件
- 【說出你的故事】跨平臺轉(zhuǎn)換——你做?還是不做?
- ADI 生命體征監(jiān)測技術(shù):對人體實施狀態(tài)監(jiān)控,答題有好禮
- 是德科技感恩月直播已結(jié)束|高速示波器基礎(chǔ)與是德新品示波器解析
- 【EEWORLD中秋國慶專輯】你身邊的電子牛人秀
- EEWorld邀你來拆解第9期——電機驅(qū)動專場,拆舊物 贏電機等好禮
- 金秋十月,我們跟金爾雅老師學(xué)MSP432
- 2024 DigiKey 應(yīng)用說:大模型時代的智能汽車