chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>C語言|源代碼>單片機(jī)進(jìn)行多字節(jié)串口接收的資料和程序免費(fèi)下載

單片機(jī)進(jìn)行多字節(jié)串口接收的資料和程序免費(fèi)下載

2019-09-11 | pdf | 0.10 MB | 次下載 | 1積分

資料介紹

  工作了一年多,寫了不少單片機(jī)串口程序。感覺串口多字節(jié)接收部分的邏輯相對(duì)于配置寄存器跟串口回復(fù)來說,是有點(diǎn)難度的——寄存器配置基本上都是死的,串口回復(fù)多字節(jié)跟回復(fù)一字節(jié)只是多了一個(gè)循環(huán)。

  串口接收程序是基于串口中斷的,單片機(jī)的串口每次接收到一字節(jié)數(shù)據(jù)產(chǎn)生一次中斷,然后再讀取某個(gè)寄存器就可以得到串口接收的數(shù)據(jù)了。然而在實(shí)際應(yīng)用當(dāng)中,基本上不會(huì)有單字節(jié)接收的情況。一般都是基于一定串口通信協(xié)議的多字節(jié)通信。在422或者485通信中,還可能是一個(gè)主機(jī)(一般是計(jì)算機(jī))帶多個(gè)從機(jī)(相應(yīng)的有單片機(jī)的板卡)。這就要求我們的單片機(jī)能夠在連續(xù)接收到的串口數(shù)據(jù)序列中識(shí)別出符合自己板卡對(duì)應(yīng)的通信協(xié)議,來進(jìn)行控制操作,不符合則不進(jìn)行任何操作。簡(jiǎn)而言之就是,單片機(jī)要在一串?dāng)?shù)據(jù)中找到符合一定規(guī)律的幾個(gè)字節(jié)的數(shù)據(jù)。

  先來說下怎樣定串口協(xié)議吧。這個(gè)協(xié)議指的不是串口底層的協(xié)議,而是前面提到的數(shù)據(jù)幀協(xié)議。一般都是有幀頭(2~3個(gè)字節(jié)吧),數(shù)據(jù)(長度根據(jù)需要),結(jié)束位(1位,有時(shí)候設(shè)計(jì)成校驗(yàn)字節(jié),最簡(jiǎn)單的校驗(yàn)也就是前面所有數(shù)據(jù)求和)。比如0xaa 0x55 +(數(shù)據(jù)部分省略)+校驗(yàn)和(除了aa 55 之外數(shù)據(jù)的和),如果要是多板卡的話有時(shí)候還要在幀頭后面加一個(gè)板選字節(jié)(相當(dāng)于3字節(jié)幀頭了)。第一次寫串口接收程序的時(shí)候,我首先想到的就是定義一個(gè)全局變量(實(shí)際上最好是定義局部靜態(tài)變量),初始值設(shè)置為 0,然后每進(jìn)一次中斷+1,然后加到串口通信協(xié)議的長度的時(shí)候再清零。然后判斷幀頭、校驗(yàn)。寫完了之后我自己都覺得不對(duì),一旦數(shù)據(jù)錯(cuò)開了一位,后面就永遠(yuǎn)都接收不到數(shù)了。

  無奈看了一下前輩們的代碼,跟我的思路差不多,只不過那個(gè)計(jì)數(shù)值跟接收到的數(shù)據(jù)時(shí)同時(shí)判斷的,而且每次中斷都要判斷,一旦不對(duì)計(jì)數(shù)的那個(gè)變量就清零。廢話少說,直接上一段代碼讓大家看看就明白了。(通信協(xié)議姑且按照簡(jiǎn)單的aa 55 一個(gè)字節(jié)數(shù)據(jù) 一個(gè)字節(jié)校驗(yàn),代碼是基于51單片機(jī)的)。接收成功則在中斷程序中把串口接收成功標(biāo)志位置1。

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1常用電子元器件集錦
  2. 1.72 MB   |  24485次下載  |  免費(fèi)
  3. 2ssd1306單片 CMOS OLED/PLED 驅(qū)動(dòng)芯片中文手冊(cè)
  4. 1.66 MB   |  4次下載  |  1 積分
  5. 3低壓降肖特基整流管SR340L數(shù)據(jù)手冊(cè)
  6. 0.78 MB   |  2次下載  |  免費(fèi)
  7. 4高壓MOS管MDD12N65F/MDD12N65P數(shù)據(jù)手冊(cè)
  8. 2.36 MB   |  2次下載  |  免費(fèi)
  9. 5FP6195 60V、800mA、480KHz異步降壓轉(zhuǎn)換器規(guī)格書
  10. 0.88 MB   |  2次下載  |  免費(fèi)
  11. 6CPCI6310型復(fù)合視頻采集板資料
  12. 0.04 MB   |  1次下載  |  免費(fèi)
  13. 7STM32F10xxx參考手冊(cè)
  14. 13.64 MB   |  1次下載  |  1 積分
  15. 8PC2456高壓浪涌抑制器控制器數(shù)據(jù)手冊(cè)
  16. 3.03 MB   |  1次下載  |  免費(fèi)

本月

  1. 1常用電子元器件集錦
  2. 1.72 MB   |  24485次下載  |  免費(fèi)
  3. 2三相逆變主電路的原理圖和PCB資料合集免費(fèi)下載
  4. 27.35 MB   |  111次下載  |  1 積分
  5. 3運(yùn)算放大器基本電路中文資料
  6. 1.30 MB   |  16次下載  |  免費(fèi)
  7. 4蘋果iphone 11電路原理圖
  8. 4.98 MB   |  12次下載  |  5 積分
  9. 5常用電子元器件介紹
  10. 3.21 MB   |  10次下載  |  免費(fèi)
  11. 6EMC電路設(shè)計(jì)工程師必備的EMC基礎(chǔ)
  12. 0.42 MB   |  6次下載  |  2 積分
  13. 7相關(guān)協(xié)議信號(hào)總結(jié)
  14. 0.94 MB   |  4次下載  |  免費(fèi)
  15. 8ssd1306單片 CMOS OLED/PLED 驅(qū)動(dòng)芯片中文手冊(cè)
  16. 1.66 MB   |  4次下載  |  1 積分

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935130次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
  4. 1.48MB  |  420064次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233089次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費(fèi)下載
  8. 340992  |  191390次下載  |  10 積分
  9. 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
  10. 158M  |  183345次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81591次下載  |  10 積分
  13. 7Keil工具M(jìn)DK-Arm免費(fèi)下載
  14. 0.02 MB  |  73816次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65989次下載  |  10 積分