那曲檬骨新材料有限公司

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
電子發燒友網>電子資料下載>單片機>51單片機進行串口通信的發送與接收的實例程序免費下載

51單片機進行串口通信的發送與接收的實例程序免費下載

2019-08-20 | pdf | 0.15 MB | 次下載 | 1積分

資料介紹

  51單片機的串口,是個全雙工的串口,發送數據的同時,還可以接收數據。當串行發送完畢后,將在標志位 TI 置 1,同樣,當收到了數據后,也會在 RI 置 1。無論 RI 或 TI 出現了 1,只要串口中斷處于開放狀態,單片機都會進入串口中斷處理程序。在中斷程序中,要區分出來究竟是發送引起的中斷,還是接收引起的中斷,然后分別進行處理。看到過一些書籍和文章,在串口收、發數據的處理方法上,很多人都有不妥之處。接收數據時,基本上都是使用“中斷方式”,這是正確合理的。

  即:每當收到一個新數據,就在中斷函數中,把 RI 清零,并用一個變量,通知主函數,收到了新數據。發送數據時,很多的程序都是使用的“查詢方式”,就是執行 while(TI ==0); 這樣的語句來等待發送完畢。這時,處理不好的話,就可能帶來問題。

  看了一些網友編寫的程序,發現有如下幾條容易出錯:

  1.有人在發送數據之前,先關閉了串口中斷!等待發送完畢后,再打開串口中斷。這樣,在發送數據的等待期間內,如果收到了數據,將不能進入中斷函數,也就不會保存的這個新收到的數據。這種處理方法,就會遺漏收到的數據。

  2.有人在發送數據之前,并沒有關閉串口中斷,當 TI = 1 時,是可以進入中斷程序的。但是,卻在中斷函數中,將 TI 清零! 這樣,在主函數中的while(TI ==0);,將永遠等不到發送結束的標志。

  3.還有人在中斷程序中,并沒有區分中斷的來源,反而讓發送引起的中斷,執行了接收中斷的程序。對此,做而論道發表自己常用的方法:

  接收數據時,使用“中斷方式”,清除 RI 后,用一個變量通知主函數,收到新數據。發送數據時,也用“中斷方式”,清除 TI 后,用另一個變量通知主函數,數據發送完畢。這樣一來,收、發兩者基本一致,編寫程序也很規范、易懂。更重要的是,主函數中,不用在那兒死等發送完畢,可以有更多的時間查看其它的標志。

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

評論

查看更多

下載排行

本周

  1. 1TC358743XBG評估板參考手冊
  2. 1.36 MB  |  330次下載  |  免費
  3. 2開關電源基礎知識
  4. 5.73 MB  |  6次下載  |  免費
  5. 3100W短波放大電路圖
  6. 0.05 MB  |  4次下載  |  3 積分
  7. 4嵌入式linux-聊天程序設計
  8. 0.60 MB  |  3次下載  |  免費
  9. 5基于FPGA的光纖通信系統的設計與實現
  10. 0.61 MB  |  2次下載  |  免費
  11. 651單片機窗簾控制器仿真程序
  12. 1.93 MB  |  2次下載  |  免費
  13. 751單片機大棚環境控制器仿真程序
  14. 1.10 MB  |  2次下載  |  免費
  15. 8基于51單片機的RGB調色燈程序仿真
  16. 0.86 MB  |  2次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應用800例(新編版)
  4. 0.00 MB  |  33564次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關電源設計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數字電路基礎pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅動電路設計》 溫德爾著
  16. 0.00 MB  |  6653次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  4. 78.1 MB  |  537796次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191185次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費
澳门百家乐怎玩| 澳门赌场图片| 百家乐官网分路单| 三公百家乐在线哪里可以玩| 云浮市| 百家乐最低压多少| 皇冠博彩| 百家乐美女真人| 澳门赌场着装| 百家乐官网开户| 沙龙国际网站| 九州百家乐娱乐城| 灌阳县| 钱隆百家乐分析| 澳门百家乐怎么| 百家乐官网视频游戏掉线| 百家乐博娱乐网赌百家乐的玩法技巧和规则 | 太阳城金旭园| 香港百家乐官网赌城| 大发888怎么赢钱| 联众百家乐官网的玩法技巧和规则| 大发888娱乐平台下注| 在线百家乐官网作弊| 最新皇冠网止| 百家乐龙虎| 百家乐官网推筒子| 大发888 casino下载| 百家乐官网套利| 棋牌真钱游戏| 百家乐7scs娱乐场| 安阳百家乐官网赌博| 大发888老虎机手机版| 百家乐官网路单统| 香港| 百家乐真人游戏娱乐| 百家乐官网斗地主| 博王国际娱乐| 百人百家乐软件供应| 澳门百家乐官网庄闲的玩法| 大发888娱乐真钱游戏下载| 百家乐视频游戏双扣|