• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > 單片機串行通信波特率的自適應實現方法

    單片機串行通信波特率的自適應實現方法

    作者: 時間:2012-02-13 來源:網絡 收藏

    異步中,目前率自動檢測并的設計思想有多種,可是他們或者需要額外的硬件支持,或者繁雜且軟件開銷大。文章介紹了一種簡單可靠的用軟件率自動,并給出了仿真調試電路原理圖,給出了同步程序的詳細框圖。該提高了率解調的便捷性和兼容性。

    本文引用地址:http://www.czjhyjcfj.com/article/172120.htm

    1 仿真電路

    SST89C54/58是MCS-51系列的派生產品,他們在指令系統、硬件結構和片內資源上與標準8052完全兼容。實際上 SST公司的SST89C54/58是一款使用非常方便51系列單片機,如不考慮其看門狗定時器和內部Flash程序存儲器,可以將其看成是一個可在線編程的標準8052單片機。圖1為實現仿真調試硬件原理圖,這是一個通用的接口電路INT0腳用來啟動從機同步。同步建立后的數據傳送過程中外部中斷0被禁止,而一批數據傳送完畢后進入待機監控狀態時則開 放外中斷。

    23.jpg

    2 波特率自適應實現原理

    2.1 波特率

    對于8052單片機,串行通信用定時器1或定時器2作波特率發生器,波特率取決于他們的溢出率。當串行口在工作方式1,3,用定時器1作波特率發生器時, 則波特率計算如下:

    24.jpg

    當定時器1工作方式2時,n=8,X為定時器1初值。

    當定時器1工作方式1時,n=16,X為定時器1初值。

    若用定時器2作波特率發生器時,則波特率計算公式如下:

    25.jpg

    其中:X為定時器2的初值。

    2.2 波特率自適應原理

    主機端要求和從機建立通信時,先發送同步字符80H,從機根據此同步字符來計算當前的通信速率,并設置此值為本從機的波特率,從而完成通信速率的自適應。以串行通信方式1為例,他是一個10位的數據格式,如圖2所示。

    26.jpg

    所以,在發送同步字符80H時,在數據線上他所呈現的電平狀態如圖3所示。

    從機通過檢測本機RXD引腳的信號,并利用定時器對RXD信號的低電平進行寬度測量,其負脈寬時間TDOWN剛好是8位數據的寬度,這有利于波特率發生器初值的計算。采用定時器0方式1并置初值0對TDOWN進行定時,可得計數值TH0,TL0,用XT來表示,設從機晶振為ff,

    27.jpg


    上一頁 1 2 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 渝中区| 临泉县| 翁牛特旗| 九江县| 北流市| 崇州市| 沙湾县| 江口县| 石屏县| 静乐县| 巧家县| 大石桥市| 长沙市| 东明县| 淮北市| 九江市| 清徐县| 大城县| 新晃| 遵义市| 富锦市| 绥棱县| 鲜城| 白玉县| 永年县| 江西省| 清远市| 法库县| 新建县| 冷水江市| 区。| 黔东| 屏东市| 大同市| 类乌齐县| 北宁市| 巫山县| 阿图什市| 永寿县| 神农架林区| 临江市|