雙向透明串口擴展技術(shù)在嵌入式系統中的實(shí)現
1.2硬件設計方案
串口擴展模塊主要由2部分組成:?jiǎn)纹瑱CAT89C2051及模擬開(kāi)關(guān)CD4052、雙4通道模擬開(kāi)關(guān)。
串口擴展模塊拓撲結構圖如圖2所示,其中虛線(xiàn)框內為串口擴展模塊的主要部分。本文引用地址:http://dyxdggzs.com/article/152376.htm
2 通信協(xié)議設計
2.1數據由用戶(hù)設備發(fā)送到HOST端
由于各模塊是分時(shí)復用的,為了避免用戶(hù)設備之間發(fā)生競爭,需要AT89C2051對4個(gè)用戶(hù)設備通道進(jìn)行仲裁,本文采用以下方案。
4個(gè)用戶(hù)設備各用一根I/O口線(xiàn)分別與AT89C2051的P1.0~P1.3引腳相連,同時(shí)還與一個(gè)4輸入或非門(mén)相連,將某根或某幾根I/O口線(xiàn)置高電平并經(jīng)過(guò)該4輸入或非門(mén)來(lái)觸發(fā)中斷,通知AT89C2051有用戶(hù)設備請求向HOST終端發(fā)送數據,同時(shí)AT89C2051進(jìn)行用戶(hù)設備號查詢(xún)。AT89C2051收到請求信號后,首先判斷 HOST端與其他用戶(hù)設備之間的數據發(fā)送是否結束,若結束,則根據仲裁機制通過(guò)與各用戶(hù)設備相連的P1.4~P1.7引腳置高給出應答響應信號,同時(shí) AT89C2051根據中斷查詢(xún)到的用戶(hù)設備號對P3.4和P3.5引腳進(jìn)行設置來(lái)控制CD4052模擬開(kāi)關(guān)選通對應通道,用戶(hù)設備收到應答響應信號后就開(kāi)始發(fā)送數據;若未結束,則屏蔽此次中斷,直到數據發(fā)送結束才開(kāi)中斷。用戶(hù)設備數據發(fā)送結束時(shí)則將通過(guò)一個(gè)4輸入或非門(mén)來(lái)觸發(fā)中斷,通知AT89C2051此次數據發(fā)送結束。在響應數據發(fā)送請求時(shí)會(huì )涉及到多個(gè)用戶(hù)設備請求,從而需要AT89C2051進(jìn)行仲裁。仲裁機制如下:心電和血氧模塊是50 ms定時(shí)發(fā)送數據,而血壓模塊需要HOST端發(fā)來(lái)啟動(dòng)測量命令后才向HOST端發(fā)送血壓數據,因此需要將血壓模塊發(fā)送數據的請求設置為較高優(yōu)先級,才能保證血壓數據正確及時(shí)地發(fā)送到HOST端,而心電和血氧模塊設置為低優(yōu)先級輪流發(fā)送。
評論