日韩一区二区三区精品,欧美疯狂xxxxbbbb牲交,热99re久久免费视精品频,人妻互换 综合,欧美激情肉欲高潮视频

歷史上的今天

今天是:2024年11月27日(星期三)

正在發(fā)生

2019年11月27日 | 單片機CRC源碼

發(fā)布者:Whisper123 來源: eefocus關(guān)鍵字:單片機  CRC  校驗 手機看文章 掃描二維碼
隨時隨地手機看文章

 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高位。

關(guān)鍵字:單片機  CRC  校驗 引用地址:單片機CRC源碼

上一篇:STM8S IO口基本輸入輸出
下一篇:STM8S103之tim1PWM輸出

推薦閱讀

日前,EEWORLD記者參加了德國慕尼黑電子展,提到電子和德國的結(jié)合,自然離不開汽車,而談到汽車,羅森伯格亞太副總裁兼汽車產(chǎn)品事業(yè)部總經(jīng)理丁磊則有許多話要對產(chǎn)業(yè)界說。羅森伯格亞太副總裁兼汽車產(chǎn)品事業(yè)部總經(jīng)理丁磊 今年,是羅森伯格成立60周年的日子,公司是產(chǎn)業(yè)界最久遠的國際頂端無線射頻和光纖通信技術(shù)制造商之一。羅森伯格自1997年開啟中國大陸之...
近日,美國國家運輸安全委員會(National Transportation Safety Board,簡稱:NTSB)公布了對2018年美國亞利桑那州坦佩市一起自動駕駛汽車事故的最終調(diào)查結(jié)果,報告稱“一系列的軟件設(shè)計缺陷使得自動駕駛系統(tǒng)無法對違規(guī)橫穿馬路的行人作出正確反應,從而導致撞車事件發(fā)生。”無辜的生命逝去理應得到緬懷,而“人為”的禍事更值得整個行業(yè)深刻反思。自...
  電動車電池怎么檢測電池好壞  用萬用表一般不能直接測試電瓶的好壞,除非電瓶一點電充不進去了,判斷電瓶好壞一般從電瓶內(nèi)阻上可以知道一些,因此用萬用表判斷電瓶好壞可以從這一點下手,電瓶內(nèi)阻是可以用萬用表測試出來,但是卻不能直接用萬用表檢測出來,切記不要用電阻檔直接量。給大家分享一種計算電瓶內(nèi)阻的方法,方法也很簡單?! 蕚湟粋€負...
有投資者在投資者互動平臺提問:兆易創(chuàng)新產(chǎn)品渠道端價格有所松動,加上境外競爭對手產(chǎn)能的逐漸恢復。所以想了解就目前來講,兆易創(chuàng)新四季度的產(chǎn)品交付量相較三季度是持平還是下降了?11月26日,兆易創(chuàng)新(603986.SH)在投資者互動平臺表示,現(xiàn)貨市場的價格情況并不在所關(guān)注的鏈條上。兆易創(chuàng)新NOR Flash今年四季度以及明年的景氣度還是很樂觀,供給還是處于...

史海拾趣

問答坊 | AI 解惑

想在DSP寫一個完整的BOOTLODAD,給點建議吧!

    前在C6713上,寫過一個簡單的bootloader代碼,但是現(xiàn)在看來,實用價值太低,而且還有錯誤,主要體現(xiàn)在對不同的段的處理上,沒有很好的處理const段落。     現(xiàn)在,想重新寫一個BootLoader的程序,不知道各位能否給點建議! ...…

查看全部問答∨

睡眠能通過中斷喚醒嗎?

用的wince6的系統(tǒng),現(xiàn)在睡眠后,需要外部事件喚醒,請問能用外部中斷喚醒嗎?如果能的話,該如何做,謝謝.…

查看全部問答∨

職場人員如何面對“潛規(guī)則”

1. 切勿輕信他人   職場是一個利益交換的場所,品德好的人往往樹敵眾多,而壞人卻順風順水。你可以不學壞人那樣去害人,但至少要有保護自己的能力。別人要來害你,最簡單 的方式是利用你的善良,其次是因為你輕信于人。而在職場中,信任往往應該 ...…

查看全部問答∨

UART 中斷完整接收一條報文

用UART接收報文,一般的單片機都是采用超時(自己在寫的定時器的函數(shù))來判斷一條報文是否結(jié)束。 在看STM32的時候,發(fā)現(xiàn)USART帶有一個空閑總線的中斷標志,于是想通過這個來判斷,一條報文是否結(jié)束。 但,從調(diào)試的結(jié)果來看,讓人很無語。 通過在 ...…

查看全部問答∨

做開關(guān)電源的請進

本帖最后由 paulhyde 于 2014-9-15 03:56 編輯 做出來這個題的,曬曬自己的經(jīng)驗心得吧!你們的方案是怎么樣的,怎么解決分流的?   沒做出來的壇友們期待高手們的回答。   沒做出來的也說說自己失誤在那?是不夠努力,還是這個題確 ...…

查看全部問答∨

M4 Hanker開發(fā)板:uc/GUI的移植(加觸摸功能+心得體會)

發(fā)現(xiàn)Triton.zhang老大提供的uc/GUI例程沒有觸摸功能,所以將觸摸功能加入,同時跑了幾個uc/GUI的小例子,因為下周有好多考試,所以沒有進行深入的擴展,不足之處還請見諒!順便請假一周!不然要掛啦!要說uc /GUI的c文件,那叫一個多呀!為了方便編 ...…

查看全部問答∨

avr studio 6.0 下 mega 64 串口中斷問題

我是AVR 新手,在avr studio 6.0 下學習 mega64 的串口0 ,波特率已經(jīng)配置成9600,發(fā)送函數(shù)調(diào)試成功,現(xiàn)在調(diào)不通中斷方式下的接收程序,程序片段如下,望知道的好友指導指導,謝謝 中斷使能 void Usart0InterruptConfig() {    &nb ...…

查看全部問答∨

Keil MDK-ARM Version 5.00下載

迅雷下載 百度網(wǎng)盤地址: http://pan.baidu.com/s/1Fueni…

查看全部問答∨

STM32 USART2 發(fā)送字符錯位

STM32  USART2  共發(fā)送3個字符{0x55,0x55,0x55},但串口調(diào)試助手接收到的第一個總為00,后面再顯示兩個0x55,幫忙看看為什么,困擾一天了,非常感謝各位大俠…

查看全部問答∨
小廣播
設(shè)計資源 培訓 開發(fā)板 精華推薦

最新單片機文章

 
EEWorld訂閱號

 
EEWorld服務(wù)號

 
汽車開發(fā)圈

 
機器人開發(fā)圈

電子工程世界版權(quán)所有 京ICP證060456號 京ICP備10001474號-1 電信業(yè)務(wù)審批[2006]字第258號函 京公網(wǎng)安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved