wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3950|回復: 0
收起左側

串口通信幀的同步方法(識別一幀數據的起始結束)

[復制鏈接]
ID:105323 發表于 2016-2-22 00:31 | 顯示全部樓層 |閱讀模式
引 言
    串口通信是日前單片機和DSP等嵌入式系統之間,以及嵌入式系統與PC機或無線模塊之間的一種非常重要且普遍使用的通信方式在嵌入式系統的硬件結構中,通常只有一個8位或16位的CPU,不僅要完成主流程的工作,同時還要處理隨時發生的各種中斷,因而嵌入式系統中的串口通信程序設計與PC機有很大的不同若嵌入式系統中.中斷服務子程序在系統運行過程中占用了較多的時間,就有可能在中斷眼務子程序正運行時,又產生一個同類型或其他類型的中斷,從而造成主程序得不到執行或后續中斷數據丟失所以,嵌入式系統中的串口通信雖然看似簡單,但其中仍有許多問題值得研究,例如串口通信過程中的幀同步問題本文針對該問題給出了逐次比較、基于FIFO隊列和基于狀態機的3種幀同步方法通過測試、分析和比較得出,基于有限狀態機的方法是嵌入式系統串口通信中很有效的幀同步方法,同時也是一種很不錯的串口通信程序設計結構 。   1 串口通信的數據幀結構
    現代工業控制,往往需要由多個獨立的控制模塊來共同完成它們之間通過串口通信完成復雜的控制過程,必須在通信過程中加入必要的通信協議,以提高系統的可靠性和穩定性;而要完成特定的通信協議,就得有一定的同步機制下面介紹一下簡化的串口通信數據幀結構,以便分析說明嵌入式系統串口通信過程中的幀同步方法。
    假定串口發送的數據幀結構為:
      



    其中:包頭用于同步,一般是一個或多個ASCII字符,本文中假定數據幀同步頭有2字節(0xAA0x55);包長表示數據包中除去包頭和包長的字節數,一般用約定好的幾個字節表示;類型為通信協議里規定的命令類型;數據為應發送的主要信息;校驗通常采用單字節異或的方法。
2 串口通信中的幀同步方法
21 逐次比較的幀同步方法
    首先等待串口數據,將接收到的第1個字節數據與約定好的包頭信息的第1個字節進行比較如果不正確,則等待新字節,直到接收的數據與包頭信息的第1個字節相同第1個字節比較正確以后,將收到的第2個字節與包頭信息的第2個字節進行比較如果仍然正確,則說明串口接收已經同步,可以開始接收數據幀中的數據部分;否則,重新開始同步過程其程序流程如圖1所示。




    此種方法代碼量小,編程簡單,一般用于在主程序中以非中斷方式接收串口數據、實時性很差、數據幀較短的場合但是,在串口速度過快且包頭字節數比較多的情況下,串口實現同步花費的時間很長或很難實現同步例如,串口接收到序列Ox0O OxAA0xAA 0x55,當遇到第一個0xAA時,該方法認為第1個字節正確開始比較第2個同步頭第2個字節仍是0xAA而不是0x55,所以必須等待新的字節重新開始比較第1個同步頭而緊隨其后的是0x55,因而,此時包頭的第1個字節也沒有同步上事實上,0x00 OxAA是干擾字節,0xAA 0x55才是通信協議中的同步頭。
2.2 基于FIFO隊列的幀同步方法
    根據同步包頭的長度,定義一個相同長度的全局字節數組,把該數組看成是一個如圖2所示的先入先出(FIFO)的隊列程序流程如圖3所示。




    本例中定義兩個字節HEADlHEAD2,都初始化為0xFF同步時,丟棄數組頭字節HEADl,數組中的所有數據向前移動一個字節,串口接收到的新字節存入數組末字節HEAD2中,將整個數組與協議中的包頭信息比較如果正確,則置位已同步標志位,然后開始接收、存儲有用數據;否則,繼續等待同步串口數據接收完后,不僅要清除已同步標志,還要把HEADlHEAD2兩個字節都賦值0xFF;否則,將會影響下一幀數據的同步和接收用前面提到的序列0x00 0xAA 0xAA 0x55…”進行測試,隨著串口接收中斷收到新的字節幀同步隊列中的數據依次為:[0xFF[0x00[0xAA[0xAA[0x55此時,該算法檢測出[HEAD2HEAD2]==[0x55,從而實現了同步,置位已同步標志位以便下次進入串口接收中斷服務子程序時開始接收數據包的數據部分。
    此種方法與逐次比較的幀同步方法相比,能夠比較快速、正確地檢測出同步包頭;但是如果包頭的字節數很多,同步過程中每次進入串口中斷服務子程序都要進行大量的字節搬移,將必然耗費很長的時間為了使嵌入式系統更健壯,程序設計應把握的基本原則之一就是使中斷處理程序最短所以基于FIFO隊列的幀同步方法也不是最優的。
2.3 基于有限狀態機的幀同步方法
    為解決以上問題,可以采用基于有限狀態機的設計方法該方法將數據幀的接收過程分為若干個狀態:接收信息頭HEADl狀態、接收信息頭HEAD2狀態、接收包長狀態、接收數據類型狀態、接收數據狀態及接收校驗和狀態系統的初始狀態為HEADl狀態,各接收狀態間的狀態轉移圖如圖4所示,仍用前面提到的序列0x00 0xAA 0xAA 0x55…”進行測試隨著串口接收中斷新字節的接收,系統的接收狀態依次為HEAD1HEAD1HEAD2HEAD2LEN可見此時就是同步狀態該方法也快速、有效地實現了同步;但是需要注意的是,在每一次接收完1幀完整的數據之后,必須把系統的接收狀態重新設置為HEADl,否則將會影響下一幀的數據接收。




    此后,程序按照協議開始依次接收數據幀長度、命令類型、數據和校驗位接收完后,重新設置系統接收狀態為HEADl,同時對該數據幀進行校驗校驗正確后,利用消息機制通知主程序根據命令類型對數據幀進行處理或執行相應的命令操作。
    下面給出該方法在KeilC5l中的示例程序:
   




   
    由于采用了狀態機和消息機制的結構,上述設計思路快速有效地實現了串口通信的同步,而且程序結構清晰,便于維護,也易于向其他的串口通信協議移植另外,串口中斷服務子程序中需要處理的工作很少,每個串口接收中斷平均耗時不超過20個機器周期(在單片機AT89C5l中),大大減輕了串口接收中斷服務程序的壓力,緩解了嵌入式系統有限資源與需求之問的矛盾,提高了嵌入式系統的穩定性。
3 結論
    從上面的分析和測試可以看出,基于有限狀態機的串口通信幀同步方法是本文中提出的3種幀方法中最優的,結構清晰且系統資源利用率高。
    對一個有著完整通信協議的串口中斷來說,因為要比較命令頭、完成校驗、解析數據等需要耗費大量的機器周期,所以嵌入式系統中的串口中斷服務程序設計顯得更為重要在實際的串口通信程序中,可采用狀態機和消息機制相結合的方法,僅在中斷服務程序中設置一個標志,而在主程序中根據相應標志來作處理,這樣就回避了某些中斷可能需要較長處理時間的問題在程序結構上,由于采用狀態機的結構,既提高了可讀性同時又提高了運行速度,因而該方法不僅是一種很好的幀同步方法,還是一種很不錯的串口通信程序設計方法

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
精品一区亚洲| 国产视频一二三四区| 欧美日韩中文在线| aaa在线免费观看| 折磨小男生性器羞耻的故事| 欧美极品美女视频网站在线观看免费| 欧美videosex性极品hd| 波多野结衣理论片| 99久久久精品视频| 日韩中文字幕欧美| 日韩高清不卡在线| 国内精彩免费自拍视频在线观看网址| 最近的中文字幕在线看视频| 挪威xxxx性hd极品| 精品一区二区三区日本| 欧美一区二区三区四区五区| 首页亚洲欧美制服丝腿| 中文字幕这里只有精品| 国产亚洲精品拍拍拍拍拍| 强迫凌虐淫辱の牝奴在线观看| 亚洲r级在线观看| 在线播放一区二区三区| 国产综合成人久久大片91| 五月天激情在线| 亚洲综合爱爱久久网| 国产手机在线视频| 日本a级片免费观看| 久久久在线观看| 黑人欧美xxxx| 中文子幕无线码一区tr| 成人6969www免费视频| 秋霞午夜理伦电影在线观看| √天堂中文www官网| 国精产品一区二区三区| 亚洲三级一区| 久久久视频精品| 日韩高清av一区二区三区| 久久九九99视频| 成人在线一区| 国内精品免费| av片在线观看永久免费| 成年女人午夜毛片免费看| 狠狠人妻久久久久久综合| 亚洲午夜精品一区| 国产欧美一区二区视频| 伊人伊成久久人综合网站| 中文字幕欧美日韩一区| 国产一区二区导航在线播放| 国产精品日韩精品欧美精品| 日韩成人综合网| 亚洲第一区视频| 97理论电影| 成年人视频在线免费看| 精品久久久久久中文字幕人妻最新 | 美女免费视频一区二区| 国产精品1区| 亚洲人av在线| 顶级欧美妇高清xxxxx| 国产成人在线免费观看视频| 中文字幕求饶的少妇| 免费无码av片在线观看| 国产成人av一区二区三区| 亚洲天堂av在线免费观看| 亚洲国产精品久久艾草纯爱| 国内成人免费视频| 麻豆一区二区三| 欧美午夜精品一区二区三区电影| www国产精品| 三级中文字幕在线观看| 色久视频在线播放| 日日干夜夜骑| 日韩在线观看视频一区| 久久国产露脸精品国产| 欧美性猛交乱大交| 日韩专区第三页| 91福利入口| 777777777亚洲妇女| 日韩av在线电影网| 精品伊人久久97| 精品视频全国免费看| 国产精品成人免费| 国产在线视频一区二区三区| 久久精品99国产精品日本| 国内外成人在线| 成人毛片视频在线观看| 石原莉奈一区二区三区在线观看| 免费欧美日韩| 国产精品大片| 国产精品嫩草影院在线看| 2019中文亚洲字幕| caoporn-草棚在线视频最| yiren22综合网成人| 国产视频一二三| 国产成人精品一区二区免费视频| 日本高清视频www| 美女把尿口扒开给男人桶视频| 亚洲欧美天堂| 九九热免费视频| 免费国产h视频在线观看86| 乱精品一区字幕二区| 成人一级免费视频| 亚洲爱情岛论坛永久| 超碰在线观看91| 精品久久在线观看| 亚洲va欧美va| 精品国产二区三区| av网站免费| 欧美狂欢多p性派对| 日日摸夜夜爽人人添| 91传媒在线观看| melody高清在线观看| 免费看男女www网站入口在线| 色综合久久久| 国产高清欧美| 色综合咪咪久久网| 中文在线日韩| 日韩专区精品| 免费高清成人在线| 国产精品日韩精品欧美在线| 国产欧美日韩卡一| 国产精品情趣视频| 欧美综合视频在线观看| 精品国产鲁一鲁一区二区张丽| 亚洲欧洲日韩综合一区二区| 国产精品网站在线| 欧美亚洲综合一区| 日韩免费高清视频| 884aa四虎影成人精品一区| 欧美日韩国产首页| 欧美一级专区免费大片| 久久精品亚洲精品| 97色在线视频| 57pao成人永久免费视频| 97av在线影院| 日韩欧美99| 大地资源第二页在线观看高清版| 91手机视频在线| 中文字幕亚洲影院| 国产无遮挡又黄又爽在线观看| 国产手机在线视频| 一区二区三区小视频| 最新版天堂资源中文官网| 黄色成人羞羞视频| 一级香蕉视频在线观看| 色播色播色播色播色播在线| 浪潮色综合久久天堂| 96sao精品免费视频观看| 亚洲激情中文在线| 奇米888四色在线精品| 国产精品一区二区久激情瑜伽| 成人午夜av影视| 欧美日韩中文字幕在线视频| 91.成人天堂一区| 欧美日本精品在线| 成人激情av在线| 美国av一区二区三区| 日本一区二区三区在线视频| 天天做天天爱天天高潮| 亚洲精品乱码久久| 国产精品50页| 欧美色图亚洲| 男女性激情视频在线观看| 国产小视频在线播放| av电影在线地址| 成人影院天天5g天天爽无毒影院| 国产经典欧美精品| 亚洲免费资源在线播放| 欧美视频专区一二在线观看| 精品久久久av| 欧美日韩一区二区三区免费| 茄子视频成人免费观看| 久久亚洲av午夜福利精品一区| 亚洲视频在线免费播放| 亚洲成年人电影网站| 毛片网站网址| 经典三级一区二区| 日韩二区三区四区| 在线精品视频小说1| 国产精品国产三级国产aⅴ浪潮| 国产视频一区二区不卡| 97超碰免费在线观看| 国产视频一二三四区| 在线播放中文字幕| 精品国产成人| 国产精品自拍毛片| 日韩欧美国产精品| 国产精品中出一区二区三区| 精品国产乱码久久久久久久| 中文字幕久久久av一区| 国产女人精品视频| 国产 欧美 日本| 免费人成在线观看| eeuss影院www免费视频| 爱爱爱免费视频在线观看| 成人a'v在线播放| 国产精品久久午夜| 欧美激情第99页| 性欧美精品一区二区三区在线播放| 亚洲色图久久久| 日韩女优一区二区| yjizz国产| 国产福利电影| 亚洲制服一区| 国产成人免费高清| 日韩精品在线电影| 亚洲午夜精品国产| 日韩免费视频网站| 午夜免费入口| 福利一区二区三区视频在线观看| 久久久久午夜电影| 亚洲二区视频在线| 成人激情视频免费在线| 污污内射在线观看一区二区少妇| 日韩激情文学| 大片免费在线看视频| 狠狠做深爱婷婷综合一区| 亚洲日本乱码在线观看| 在线播放国产精品| 99在线观看视频免费| wwwwww在线观看| 亚洲jizzjizz妇女| 最新亚洲精品| 亚洲国产日产av| 91九色国产视频| 性生生活大片免费看视频| 日韩在线 中文字幕| 欧美欧美欧美| 国产精品免费不| 精品久久久久久久久久久久久久| 成人激情电影一区二区| 国产精品视频在| 国产三级做爰高清在线| 国产精品一区二区三区四区在线观看| 91蝌蚪porny| 日韩美女在线视频| 在线观看一区二区三区三州| www.4hu95.com四虎| free亚洲| 久久久久亚洲| 日韩免费在线观看| 男女日批视频在线观看| 亚洲天堂av片| 香蕉视频免费在线播放| 亚洲精品在线观看91| 欧美伊人久久大香线蕉综合69| 欧美13一14另类| 中文字幕免费在线看| 在线观看av资源| 国产精品日本| 在线亚洲欧美视频| 久久精品久久99| 中文字幕麻豆 | 成年女人a毛片免费视频| 国产免费播放一区二区| 欧美日韩不卡一区| 久操手机在线视频| 最近中文字幕免费mv视频多少集| 欧美激情福利| 99re在线视频这里只有精品| 亚洲男人天堂2024| 99热一区二区三区| 日韩一区二区三区不卡| 91视频亚洲| 日本韩国欧美国产| 国产精品福利视频| www.久久网| 久久精品女人天堂av免费观看| 国产美女精品在线| 久久久欧美一区二区| 一级二级黄色片| 免费在线观看的av| 亚洲国产二区| 欧美大胆人体bbbb| 欧美成年人视频在线观看| 最好看更新中文字幕| 亚洲视频分类| 日韩美女一区二区三区| 五月天开心婷婷| 国产福利图片| 国产揄拍国内精品对白| 国产精品亚洲综合天堂夜夜| 日韩毛片在线视频| 亚洲最大成人| 狠狠躁夜夜躁人人爽超碰91| 欧美黄网在线观看| 国产精品久久久高清免费| 欧美1区2区视频| 精品国产麻豆免费人成网站| 一级黄色香蕉视频| 欧美极度另类videos高清| 国产乱码精品一区二区三区四区 | 久久久影视传媒| 日本国产精品视频| 中国av免费看| 可以在线观看的av| 久久久久久黄色| 欧美久久综合性欧美| 亚洲美女色视频| 91精品啪在线观看国产81旧版| 永久免费毛片在线播放不卡| 亚洲AV无码成人精品区明星换面| 成人午夜剧场免费观看完整版| 免费在线视频一区| 成人情趣片在线观看免费| 国产女人高潮时对白| 99re91这里只有精品| 亚洲国产黄色片| 国产超碰在线播放| 毛片网站大全| av成人老司机| 亚洲在线免费视频| 少妇一级淫片免费看| 国产精品1区| 亚洲第一精品福利| 一级黄色性视频| 92久久精品| 欧美日韩国产精品自在自线| 中文字幕55页| 麻豆免费网站| 2022国产精品视频| 99精品视频网站| 被弄出白浆喷水了视频| 禁久久精品乱码| 日本一区二区三区在线播放| 久久久久久久久一区| 精品无码人妻一区二区三| 亚洲三级欧美| 亚洲二区视频在线| 簧片在线免费看| 3p在线观看| 欧美日韩一区二区三区| 特种兵之深入敌后| 日韩三级免费| 欧美日本免费一区二区三区| 国产精品无码专区| 瑟瑟视频在线看| 日韩精品一区二| 黄色片在线观看网站| 99精品中文字幕在线不卡| 日韩资源在线观看| 中文字幕一区2区3区| 国产精品福利在线观看播放| 热99精品里视频精品| 高h震动喷水双性1v1| 久久福利精品| 国产精品久久久91| 男女爱爱网站| 蜜桃精品在线观看| 亚洲欧美在线网| 欧美又粗又硬又大久久久| 石原莉奈在线亚洲二区| 欧洲精品一区色| 99精产国品一二三产品香蕉| 国产精品欧美一级免费| www.这里只有精品| 91九色国产在线播放| 亚洲第一精品久久忘忧草社区| 久久久久久久久久久久国产| 秋霞综合在线视频| 亚洲欧美国产日韩中文字幕| 国产午夜福利精品| 国产精品美女久久久久久不卡 | 欧美黑人欧美精品刺激| 欧美尤物美女在线| 欧美日韩久久不卡| 午夜精品福利在线视频| 国产一区调教| 奇米一区二区三区四区久久| 先锋影音av中文资源| 国产成人综合亚洲91猫咪| 日本成人在线不卡| 在线视频婷婷| 欧美成人三级在线| 欧美激情黑白配| 黄色精品网站| 图片区小说区区亚洲五月| 午夜成在线www| 91女神在线视频| 午夜免费精品视频| 欧美激情喷水| 久久精品2019中文字幕| 天堂av在线免费| 福利91精品一区二区三区| 亚洲在线色站| 男人的天堂在线免费视频| 欧美精三区欧美精三区| 豆国产97在线 | 亚洲| 欧美精选在线| 国产精品嫩草影院久久久| 婷婷色在线观看| 国产一区二区不卡在线 | 男人先锋资源| 99久久免费视频.com| 污视频网站观看| 成人在线视频www| 国产精品扒开腿做爽爽爽视频| 美女高潮网站| 天天亚洲美女在线视频| 青青草原在线免费观看| 欧美私人啪啪vps|