雙向透明串口擴(kuò)展技術(shù)在嵌入式系統(tǒng)中的實現(xiàn)
2.2數(shù)據(jù)由HOST端發(fā)送到用戶設(shè)備
為了使HOST端的數(shù)據(jù)能夠及時準(zhǔn)確地發(fā)送到各個用戶設(shè)備,就需要和AT89C2051之間定義好通信協(xié)議。其協(xié)議如下。
AT89C2051始終監(jiān)視HOST終端發(fā)出的信息,一旦收到HOST終端發(fā)出的串口選擇命令,如表1所示,立即對P3.4和P3.5引腳進(jìn)行設(shè)置來控制 CD4052模擬開關(guān)選通對應(yīng)通道并控制相應(yīng)的LED燈以作指示。串口選擇后, HOST終端需要根據(jù)AT89C2051指令執(zhí)行和模擬開關(guān)切換時間延遲一定時間后再開始向?qū)?yīng)用戶設(shè)備發(fā)送數(shù)據(jù)/命令。HOST端數(shù)據(jù)發(fā)送結(jié)束則由接收端的用戶設(shè)備向AT89C2051發(fā)送中斷結(jié)束信號,其結(jié)束處理與數(shù)據(jù)由用戶設(shè)備發(fā)送到HOST端的結(jié)束處理相同。如果同時有用戶設(shè)備向 AT89C2051請求發(fā)送數(shù)據(jù)到HOST端,則優(yōu)先響應(yīng)HOST端的發(fā)送數(shù)據(jù)/命令請求,即HOST端的發(fā)送數(shù)據(jù)/命令請求的優(yōu)先級最高。本文引用地址:http://www.ex-cimer.com/article/152376.htm
本文在設(shè)計中將HOST端的TXD引腳連接到AT89C2051的RXD引腳,這樣就可以通過AT89C2051的串口接收中斷和HOST端通信, HOST端發(fā)送數(shù)據(jù)/命令時首先發(fā)送串口選擇命令字,其次再發(fā)送數(shù)據(jù)/命令去控制用戶設(shè)備的數(shù)據(jù)采集,例如增益大小、是否啟動血壓測量等命令。
3軟件設(shè)計
軟件設(shè)計分為主函數(shù)、串口中斷服務(wù)程序、外部中斷0和1服務(wù)程序4個部分,如圖3所示。
在很多場合需要進(jìn)行串口擴(kuò)展以滿足系統(tǒng)集成多個串口設(shè)備,擴(kuò)展方法很多,各有優(yōu)缺點。本文提出的用單片機AT89C2051為AT91RM9200擴(kuò)展串口的方案是基于單片機價格低廉、體積小,完全可以替代一般的專用接口芯片,作為真正意義上的可編程接口,實現(xiàn)雙向通信,使串口擴(kuò)展模塊變得透明。這種方案使用靈活,與一般接口芯片相比對外部用戶設(shè)備具有更好的適用性,經(jīng)實驗驗證達(dá)到了設(shè)計目標(biāo)。將單片機等同于普通接口芯片使用,是一種新思路,具有一定的啟迪作用和實際參考價值。
評論