亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        異步串行通信協(xié)議的設(shè)計與實現(xiàn)

        2018-11-08 02:32:28賈昊張燁崔忠政徐曌楊揚徐佳
        電子制作 2018年20期
        關(guān)鍵詞:數(shù)據(jù)位波特率通信協(xié)議

        賈昊,張燁,崔忠政,徐曌,楊揚,徐佳

        (1.大連科技學(xué)院電氣工程學(xué)院,遼寧大連,116052;2.中國華錄松下電子信息有限公司開發(fā)中心,遼寧大連,116000)

        0 引言

        在單片機控制系統(tǒng)中,CPU和外部通信主要有兩種通信方式:并行通信和串行通信。并行通信,即數(shù)據(jù)的各位同時傳送;串行通信,即數(shù)據(jù)一位一位順序傳送。串行通信能夠節(jié)省傳輸線,特別是數(shù)據(jù)位數(shù)很多和遠距離數(shù)據(jù)傳送時,這一優(yōu)點更為突出?,F(xiàn)在流行的高級語言一般都支持對串口的直接操作,常用的單片機也把串行通訊口作為一個標(biāo)準(zhǔn)接口集成在單片機內(nèi),串行通訊接口的開發(fā)具有開發(fā)周期短,開發(fā)簡單等特點。目前異步串行通信已廣泛用于微機之間的通信、工業(yè)控制系統(tǒng)中的數(shù)據(jù)采集與控制、遠程數(shù)據(jù)的傳送等方面。

        1 串口通信的基本原理

        串口在嵌入式系統(tǒng)當(dāng)中是一類重要的數(shù)據(jù)通信接口,其本質(zhì)功能是作為CPU和串行設(shè)備間的編碼轉(zhuǎn)換器。當(dāng)數(shù)據(jù)從CPU經(jīng)過串行端口發(fā)送出去時,字節(jié)數(shù)據(jù)轉(zhuǎn)換為串行的位;在接收數(shù)據(jù)時,串行的位被轉(zhuǎn)換為字節(jié)數(shù)據(jù)。應(yīng)用程序要使用串口進行通信,必須在使用之前向操作系統(tǒng)提出資源申請要求(打開串口),通信完成后必須釋放資源(關(guān)閉串口)。

        典型地,串口用于ASCII碼字符的傳輸。通信使用3根線完成:(1)地線,(2)發(fā)送數(shù)據(jù)線,(3)接收數(shù)據(jù)線。串口通信最重要的參數(shù)是波特率、數(shù)據(jù)位、停止位和奇偶校驗。對于兩個進行通行的端口,這些參數(shù)必須匹配:波特率是一個衡量通信速度的參數(shù),它表示每秒鐘傳送的bit的個數(shù);數(shù)據(jù)位是衡量通信中實際數(shù)據(jù)位的參數(shù),當(dāng)計算機發(fā)送一個信息包,標(biāo)準(zhǔn)的值是5、7和8位。如何設(shè)置取決于你的需求;停止位用于表示單個包的最后一位,典型的值為1,1.5和2位,停止位不僅僅是表示傳輸?shù)慕Y(jié)束,并且提供計算機校正時鐘同步的機會;奇偶校驗位是串口通信中一種簡單的檢錯方式,有四種檢錯方式—偶、奇、高和低,也可以沒有校驗位。

        2 異步串行通信協(xié)議的設(shè)計

        通信協(xié)議是通信雙方共同遵守的約定,這種約定還包括對同步方式、傳送速度、傳送步驟及檢糾錯方式定義等問題做出統(tǒng)一規(guī)定。

        在控制系統(tǒng)中,單片機間通信一般采用異步串行通信,傳統(tǒng)的異步串行通信協(xié)議一般采用如圖1所示的命令格式,命令消息包括幀頭(命令碼)、數(shù)據(jù)幀、校驗幀;響應(yīng)消息為ACK信號(ACK取不同的值,例如:正確響應(yīng) ACK =0x55;錯誤響應(yīng) ACK = 0xAA)。由于在串口通信中還存在很多不可靠的因素,例如由于電磁干擾造成的幀字節(jié)丟失、傳輸誤碼,以及因主從單片機處理繁忙而造成的響應(yīng)延遲等。傳統(tǒng)的通信協(xié)議難以克服由于單片機處理繁忙而造成的響應(yīng)延遲現(xiàn)象。如圖2所示,當(dāng)主芯片發(fā)送[命令1]后,當(dāng)超過響應(yīng)等待時間而沒有得到ACK時,主芯片發(fā)[命令2],而此時在下一個響應(yīng)等待時間內(nèi)收到兩次[ACK],這時將導(dǎo)致主芯片做出錯誤判斷,調(diào)用并非本意的程序執(zhí)行,嚴(yán)重影響系統(tǒng)的正常運行。因此,本文在通信協(xié)議的設(shè)計中,采用響應(yīng)消息加權(quán)的方法,提高了通信的可靠性,保證系統(tǒng)正常運行。

        圖1 通信命令格式

        圖2 通信時序

        本響應(yīng)消息加權(quán)式通信協(xié)議,實現(xiàn)方式如下:通信協(xié)議采用如圖3所示的格式,命令消息和響應(yīng)消息采用相同的幀格式,包括幀頭(命令碼)、數(shù)據(jù)幀、校驗幀;其中響應(yīng)消息幀頭 = 命令消息幀頭的加權(quán)(RPS = CMD | 0x80 或RPS= CMD | 0xC0),主控芯片通過對響應(yīng)消息的處理,識別出響應(yīng)的類型。通信協(xié)議各數(shù)據(jù)位的定義如表1所示,本協(xié)議由nByte(n是由用戶自己定義的任意值正整數(shù))構(gòu)成,D1[7:6]為通信類型,D1[5:0]為指令碼,D2~Dn-1為數(shù)據(jù)位,Dn為校驗位。

        表1 通信命令

        程序處理過程如圖4所示,當(dāng)有響應(yīng)發(fā)生時,響應(yīng)處理程序?qū)憫?yīng)消息幀頭進行0xC0加權(quán)處理,還原并判斷響應(yīng)類型;同時經(jīng)過對幀頭進行0x3F加權(quán)處理,還原出當(dāng)前響應(yīng)相對應(yīng)的命令消息,然后調(diào)用相應(yīng)的應(yīng)用程序執(zhí)行。例如,當(dāng)主芯片發(fā)送命令消息,命令消息幀頭D1=0x02,從芯片正常接收并進行加權(quán)響應(yīng),響應(yīng)消息幀頭D1=0x82,主芯片再經(jīng)過加權(quán)處理判斷響應(yīng)類型并還原出與之相對應(yīng)的命令消息幀頭0x02。然后調(diào)用相應(yīng)的程序執(zhí)行,完成一次通信周期。

        圖3 加權(quán)響應(yīng)命令格式

        圖4 響應(yīng)處理流程圖

        3 程序設(shè)計

        通信程序在設(shè)計時充分考慮了主從單片機在通信過程中的不確定因素,因此通信協(xié)議采用加權(quán)響應(yīng)式通信協(xié)議,克服主從單片機處理繁忙而造成的響應(yīng)延遲;對于通信過程中的干擾而導(dǎo)致通信數(shù)據(jù)丟失、傳輸誤碼等現(xiàn)象,可以在程序設(shè)計時采用超時定時、計數(shù)重發(fā)等方法,保證通信的準(zhǔn)確性。

        軟件程序設(shè)計中,主控芯片采用芯片內(nèi)部的串口2,通信波特率為9600 bit /s,8 位數(shù)據(jù),1位停止位。其中軟件編寫要嚴(yán)格按照異步通信的時序進行,其響應(yīng)處理程序流程如圖5所示。

        圖5 整體軟件流程圖

        4 系統(tǒng)的實現(xiàn)及應(yīng)用

        本協(xié)議的設(shè)計是初衷是為一款內(nèi)嵌DTMB接收功能的便攜式DVD產(chǎn)品的操作控制芯片與DTV解碼芯片間的通信服務(wù)。由于該產(chǎn)品為商業(yè)性產(chǎn)品,因此質(zhì)量是產(chǎn)品的生命。為保證產(chǎn)品質(zhì)量,提高通信的可靠性,本設(shè)計在異步串行通信上采用筆者設(shè)計的響應(yīng)加權(quán)式通信協(xié)議。系統(tǒng)通信控制實現(xiàn)如下:

        硬件系統(tǒng)操作控制部由主控芯片和DTV解碼芯片構(gòu)成,原理框圖如圖6所示。通過主控芯片內(nèi)部串口2的收發(fā)引腳與DTV解碼芯片的收發(fā)引腳相連接。主控芯片在整個通信過程起主導(dǎo)作用,用于通信控制的發(fā)起與對DTV解碼芯片的響應(yīng)判斷。DTV解碼芯片接收主控芯片發(fā)送的命令,解析后進行相關(guān)的動作。

        圖6 原來的電路原理圖

        5 結(jié)論

        本協(xié)議的設(shè)計初衷是為了克服主從單片機處理繁忙而造成的響應(yīng)延遲現(xiàn)象,同時又具有可擴展性,其中數(shù)據(jù)位的字節(jié)長度可以由用戶自行定義。

        將本協(xié)議應(yīng)用到DVD產(chǎn)品的通信控制時,經(jīng)測過試,在波特率9600bit/s下可以成功通信;并且本協(xié)議能保證主控端正確識別響應(yīng)類型以及還原出當(dāng)前響應(yīng)相對應(yīng)的命令消息,保證主控芯片的做出正確的處理,從而保證整個系統(tǒng)的正確運行。

        猜你喜歡
        數(shù)據(jù)位波特率通信協(xié)議
        A320飛機大氣數(shù)據(jù)的采集和計算在排故中的應(yīng)用
        CAN 總線波特率自適應(yīng)程序設(shè)計
        智能制造(2020年5期)2020-07-03 06:24:00
        基于FPGA的異步串行通信波特率容錯設(shè)計
        電子測試(2018年7期)2018-05-16 06:27:18
        基于Z-Stack通信協(xié)議棧的紅外地溫采集電路設(shè)計
        一種適用于FPGA系統(tǒng)中的變速箱電路設(shè)計
        基于DMX512通信協(xié)議的多路轉(zhuǎn)發(fā)器設(shè)計與研究
        基于NS-3的PLC多頻通信協(xié)議仿真平臺設(shè)計與實現(xiàn)
        電測與儀表(2016年2期)2016-04-12 00:24:52
        減少調(diào)度自動化設(shè)備通訊串口丟包率的措施
        電子測試(2016年3期)2016-03-12 04:46:52
        RSSP-I、RSSP-Ⅱ及SAHARA三種安全通信協(xié)議實現(xiàn)技術(shù)簡介
        C*Core芯片SCI串口波特率容限優(yōu)化
        亚洲精品6久久久久中文字幕| 97久久精品人妻人人搡人人玩 | 欧美金发尤物大战黑人| 久久久精品3d动漫一区二区三区| 丰满人妻中文字幕乱码| 久久久精品国产免费看| а√天堂资源官网在线资源| 亚洲国产精品久久久久久久| 久九九久视频精品网站| 亚洲一区二区三区av资源| 久久久无码精品亚洲日韩蜜臀浪潮| 无码夜色一区二区三区| 国产一区二区丁香婷婷| 高清在线有码日韩中文字幕| 国产精品成人va在线观看| 亚洲产国偷v产偷v自拍色戒| 成年人视频在线播放视频| 久久精品久99精品免费| 中国老熟女重囗味hdxx| 精品手机在线视频| 午夜av福利亚洲写真集| 亚洲国产中文字幕视频| 青青草原精品99久久精品66| 亚洲中文字幕乱码免费| 丝袜美腿诱惑区在线播放| 亚洲av无码国产综合专区| 亚洲男人av香蕉爽爽爽爽| 日韩久久免费精品视频| 精品国产精品久久一区免费式| 成年免费视频黄网站zxgk| 亚洲AV无码成人精品区网页| 99久久久69精品一区二区三区| 成人欧美一区二区三区在线观看| 97一区二区国产好的精华液 | 久久精品国产亚洲av沈先生| 玩弄少妇人妻中文字幕| 国产精品久久久久久人妻精品| 国产精品,在线点播影院| 美女主播福利一区二区| 国产成人精品电影在线观看| 久久精品亚洲精品毛片|