新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 51單片機的串行口擴展方法設計

        51單片機的串行口擴展方法設計

        作者: 時間:2012-03-21 來源:網絡 收藏

        Intel8251具有獨立的接收/發送器。在異步方式下,用于產生8251內部時序的時鐘CLK輸入至少應為發送或接收時鐘的4.5倍。接收/發送(RXC/TXC)時鐘應為波特率的1倍、16倍或64倍(由8251的工作方式字設定)。

        圖(2)是用Intel8251一個通道的電路原理,圖中,11.0592MHZ晶振經ALE6分頻后于 、組合,產生1.8432MHZ的時鐘頻率,分別作為8251與8253的時鐘輸入,若設定8251通信波特率為9600bps,波特率因子為16,則需要 153.6KHZ的接收/發送時鐘頻率,該頻率可由8253的OUT0產生。

        下面的A51程序段說明了如何設置8253使其產生153.6KHZ的方波,以及如何用8251收/發數據:
        ;設置8253的程序段:
        MOV A,#36H ; 計數器0輸出方波控制字
        MOV DPTR,#0FFFFH ; 指向控制字寄存器
        MOVX @DPTR,A
        MOV DPTR,#0FFFCH ; 指向0計數器地址
        MOV A,#0DH
        MOVX @DPTR,A
        MOV A,#0
        MOVX DPTR,A
        SETB P1.0
        ;操作8251的程序段:

        START: MOV DPTR,#7FFFH ;8251控制、命令口地址
        MOV A,#5EH ;一個停止位,奇校驗,8位數據,異步*16
        MOVX @DPTR,A ;寫入方式字
        MOV A,#15H
        MOVX @DPTR,A ;命令字,啟動發送和接收器

        LOOP: SJMP LOOP ;等待8251中斷
        8251_INT: ;現場保護
        MOV DPTR,#7FFFH
        MOV A,@DPTR
        JB ACC.0,TX_INT
        JB ACC.1,RX_INT
        INT_EXIT: ;恢復現場
        RETI
        ;發送數據
        TX_INT: MOV DPTR,#7FFEH ;8251數據口地址
        MOV A,20H
        MOVX @DPTR,A

        AJMP INT_EXIT
        ;接收數據
        RX_INT: MOV DPTR,#7FFEH
        MOVX A,@DPTR
        MOV 30H,A

        AJMP INI_EXIT

        50.gif

        3 結束語

        為核心的多級分布式系統的應用越來越廣泛,上面討論的兩種口的為此類多串口應用領域提供了一個良好的解決方案。筆者在實際中采用基于SP2538的,了采場瓦斯積聚模擬試驗臺的多級分布式采控系統,效果良好。

        參考文獻
        [1] 孫和平,楊寧,白晶 單片微機原理與接口技術 冶金工業出版社 2003.1
        [2] 胡漢才 原理及其接口技術 清華大學出版社 1996.7
        [3] SP2538數據手冊 成都視普科技有限公司 2003.2.12


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 安溪县| 龙陵县| 肇庆市| 静海县| 安塞县| 盐城市| 中牟县| 化隆| 扎兰屯市| 教育| 辽阳县| 定安县| 丹巴县| 大姚县| 北宁市| 棋牌| 托克托县| 苏尼特左旗| 澄迈县| 五莲县| 佳木斯市| 天柱县| 陇西县| 绥江县| 英吉沙县| 柳江县| 定远县| 景谷| 松滋市| 大同县| 雷波县| 满城县| 松潘县| 上饶县| 达州市| 塔河县| 奉新县| 郓城县| 眉山市| 宁陕县| 察哈|