新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 80C152單片機上HDLC通信規程中的應用

        80C152單片機上HDLC通信規程中的應用

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

        是一種基于MCS-51的高集成度8位微控制器,也是一種通用控制器。它既適用于外圍系統或器件的智能管理,也適用于低成本,高速串行場合。是80C51的派生產品,保留了80C51的所有功能;增加了新的功能和外圍電路,包括:一種叫做全局串行通道(GSC)的高速多協議串行通訊接口,兩個直接存儲器存取(DMA)通道,HOLD/HLDA總線控制,第5、6、7個I/O口。較大的片內RAM容量。因而特別適用于綜合業務數字網(ISDN)、局域網和用戶定義的串行多機系統。

        本文引用地址:http://www.104case.com/article/171537.htm

        1 的主要特性與結構

        80C152的主要特性如下:

        (1)MCS-51兼容的UART;

        (2)多種省電工作方式;

        (3)可尋址64K字節數據存儲器;

        (4)可尋址64K字節程序存儲器;

        (5)兩個通用定時/計數器;

        (6)多協議串行I/O口(最大2.048Mbps/2.4Mbps),支持CSMA/CD和SDLC/,用戶定義協議;

        (7)全雙工/半雙工通信;

        (8)256字節片內RAM;

        (9)兩個片內DMA通道;

        (10)保持/響應(HOLD/HLDA)總線控制;

        (11)7個I/O口;

        (12)58個SFR;

        (13)11個中斷源,除包含80C51的5個中斷源外,新增的6個中斷源用于全局串行通道。

        上述(1)~(5)是與80C51相同的特性,(6)~(13)是80C152所特有或比80C51提高的特性。

        其結構簡圖如圖1所示。

        6.gif

        2 全局串行通道

        全局串行通道(GSC)是一個多協議、高性能的串行接口,用作通信控制器。GSC接口支持同步數據鏈路控制(SDLC)、具有沖突檢測的載波監聽多址訪問(CSMA/CD)、用戶客義協議和高速數據鏈路控制()協議的子集。GSC功能包括:地址識別、沖突解決、CRC產生、標志產生、自動重發送和硬件應答特性。在使用片內時鐘時可實現高至2Mbps數據速率,在使用外部時鐘可實現高至2.4Mbps數據速率。在使用串行通道的中,GSC可實現國際標準化組織(ISO)參考模型中所描述的開放系統互連(OSI)的數據鏈數層和物理鏈路層。

        2.1 GSC通道的DMA服務

        有兩種方法來控制GSC:一是CPU控制;二是DMA控制。在用戶軟件處理一些任務時(如裝入TFIFO、讀RFIFO、檢查狀態標志、發送過程一般跟蹤),采用CPU控制。當任務數據增加及使用較高的數據速率。CPU所需開銷成為主要時間消耗,最后,會達到CPU花費100%的時間去響應GSC請求。DMA通道可由用戶軟件設置為由DMA控制器來處理GSC數據傳送。80C152有兩個DMA通道,一個通道用于接收,一個通道用于發送。使用DMA通道時,CPU可省去為GSC緩沖器基本服務所需的時間。DMA通道可提供的服務類型為:裝入TFIFO、從RFIFO中移出數據、在收發結束時通千CPU和響應一定的出錯條件。在使用DMA通道時,準備串行發送的數據源或目的可以是內部存儲器、外部數據存儲器或任何SFR。對DMA和GSC寄存器進行初始化手的唯一任務是允許適當地中斷并通知DMA控制器什么時候啟動DMA。在DMA啟動后,CPU所需做的事就是響應出錯條件或等待傳送結束。80C152專門為GSC數據傳送提供了6個中斷源,它們是:GSCRV(GSC接收正確)、GSCRE(GSC接收出錯)、GSCTV(GSC發送正確)、GSCTE(GSC發送出錯)、DMA0(DMA通道0完成)、DMA1(DMA通道1完成)。


        上一頁 1 2 3 4 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 漳州市| 新乡市| 海林市| 石门县| 宁陕县| 蓬安县| 柳河县| 安义县| 比如县| 东丰县| 涡阳县| 汉源县| 达拉特旗| 桐庐县| 龙泉市| 德州市| 永定县| 兴安县| 邹城市| 佛山市| 余干县| 温州市| 达尔| 福贡县| 陇川县| 宝应县| 若羌县| 嘉禾县| 忻州市| 洱源县| 舞钢市| 彰化县| 固始县| 新昌县| 浦北县| 娱乐| 合川市| 西吉县| 阿荣旗| 抚顺市| 铜山县|