1 引言
PC/104嵌入式控制PC出現(xiàn)于80年代末,并于 1992年形成IEEEP966.1標(biāo)準(zhǔn)。它一方面繼承了所有的PC資源,另一方面又對PC機的結(jié)構(gòu)、體積、功耗、可靠性等方面重新優(yōu)化設(shè)計,使它與IBM PC完全兼容,并具有了體積小、功耗低、工作溫度寬、可靠性高等特點。PC/104嵌入式控制PC采用了獨特的“自棧式”總線連接,模塊化結(jié)構(gòu),使用起來靈活方便。它所采用的面向?qū)ο蟮挠布O(shè)計方法使得在PC/104標(biāo)準(zhǔn)上開發(fā)的擴展模塊具有更強的通用性和更長的生命期。正因為具有了這么多的優(yōu)點,PC/104被越來越多地使用于各種嵌入式系統(tǒng)中,特別是在一些可靠性要求高而工作環(huán)境又比較惡劣的地方,比如軍事指揮系統(tǒng)、武器控制系統(tǒng)或工業(yè)控制系統(tǒng)中的應(yīng)用。在這些系統(tǒng)中往往不是單個計算機的控制,而是多個計算機組成通信網(wǎng)絡(luò)共同完成控制作用,因此,對于每一個嵌入式計算機除了連接必需的外設(shè)之外,還需要考慮計算機之間的通信。計算機間最常用的通信方式是利用串行口來實現(xiàn)的,所以在設(shè)計這些控制系統(tǒng)的時候,常常面臨串行口資源短缺的問題。
同臺式PC機一樣,PC/104嵌入式控制PC一般也提供兩個RS-232串行口,常用的串行通信有RS-232和RS-485兩種。RS-232主要用于點對點通信,特別是通過MODEM進行遠距離的兩點之間的通信;RS-485主要用于多機通信,采用平衡差分電路雙線傳輸,總線連接的方式,距離在1km以內(nèi)時最大速率是100kbps,允許并聯(lián)32臺驅(qū)動器和32臺接收器以半雙工方式工作。PC/104所提供的兩個串行口資源在很多情況下會不夠用,因為使用串行口的外設(shè)的數(shù)量和種類在增加,而且串行口的功能也在擴展,比如有些PC/104可將接到串行口的設(shè)備作為系統(tǒng)控制臺使用,它們都要占用寶貴的串行口資源;此外,隨著計算機之間通信需求的增加,在多機通信或需要采用多種通信方式的系統(tǒng)中,串行口資源就不夠用了。另外,在一些PC/ 104中兩個串口的地址往往是不能改變的,這給使用帶來不便; PC/104也不提供RS-442或RS-485串行口,在需要利用RS-485總線實現(xiàn)多機通信時就必須另外配備RS-232到RS-485的轉(zhuǎn)換器。對于這些困難,最好的解決方法就是按照PC/104標(biāo)準(zhǔn)開發(fā)嵌入式擴展通信板。
本設(shè)計是根據(jù)實際系統(tǒng)的需求開發(fā)的,為了在有限的空間中提供盡可能多的功能并保證電路的可靠性,設(shè)計中利用了高集成度的異步通信單元芯片,外圍控制電路由可編程邏輯器件實現(xiàn),接口按照PC/104標(biāo)準(zhǔn)設(shè)計。板上提供兩個RS-232串行口和兩個RS-485串行口,串行口地址和中斷請求號可由用戶選擇。設(shè)計中也考慮了擴展通信板的通用性,所設(shè)計的通信板符合PC/104標(biāo)準(zhǔn),支持即插即用功能,用戶可根據(jù)系統(tǒng)資源條件和實際需要設(shè)置串行口地址和中斷請求號,因此本設(shè)計可作為開發(fā)PC/104標(biāo)準(zhǔn)嵌入式串口通信板的參考。另外,在本設(shè)計中RS-485串行口的硬件電路中有一個獨特的結(jié)構(gòu),結(jié)合通信協(xié)議,可實現(xiàn)信號極性的自動設(shè)別和轉(zhuǎn)換。
2 通信板的設(shè)計方法
2.1 總體結(jié)構(gòu)
本設(shè)計的總體原理如圖1所示。圖中PC/104總線是兼容于PC/AT的ISA總線,設(shè)計中使用了8位數(shù)據(jù)信號D 0~D7,它們通過數(shù)據(jù)緩沖電路連接異步通信單元;10根地址線A0~A9,讀寫控制信號 IOR、IOW,地址使能信號AEN和復(fù)位信號RESET,這些信號同地址選擇電路以及PLD電路中設(shè)計的邏輯電路一起完成串行口的地址選擇和各種邏輯控制,對每一個串口的內(nèi)部寄存器的操作由地址的低三位A 0、A1、A2選擇確定;利用中斷號選擇電路結(jié)合PLD電路內(nèi)部邏輯提供了IRQ3、4、5、7、9、10、11、15八個中斷請求號供選擇。
異步通信單元使用TI公司的TL16C554,它包含了四個異步收發(fā)單元,每一個都與16550兼容,加上電平轉(zhuǎn)換電路就可構(gòu)成一個串行口。
RS-232電平轉(zhuǎn)換電路采用MAX213,它提供了五路232到TTL電平的轉(zhuǎn)換和四路TTL到232電平的轉(zhuǎn)換,一片MAX213就可實現(xiàn)完整的RS-232接口功能。
RS-485電平轉(zhuǎn)換電路采用SN75176,它提供了 485標(biāo)準(zhǔn)電平與TTL電平之間的轉(zhuǎn)換,接收和發(fā)送部分可單獨控制。
數(shù)據(jù)緩沖由74HC245承擔(dān),其傳輸方向由主機 IOR信號控制,片選信號由PLD產(chǎn)生。
地址選擇電路提供給用戶設(shè)置串行口地址,通過短路塊將地址的高四位A6~A9置0或置1實現(xiàn)地址的設(shè)定。
2.2 異步通信單元
TL16C554是TI公司的產(chǎn)品,集成度高,性能穩(wěn)定,其內(nèi)部包含了四個可獨立操作的可編程異步收發(fā)單元16C550,它們共用了數(shù)據(jù)線D 7~D0、內(nèi)部寄存器地址線A2 ~A0、讀寫信號線IOR和IOW、DMA讀寫控制TXRDY和RXRDY、復(fù)位RESET、時鐘XTL1和XTL2。每個收發(fā)單元都有自己的片選信號CS、中斷請求INT、數(shù)據(jù)輸出TX、數(shù)據(jù)輸入RX及MODEM邏輯控制信號CTS、DCD、DSR、 DTR、RI、RTS。其內(nèi)部功能模塊如圖2所示。
每一個內(nèi)部的異步收發(fā)單元都等同于一個 16550,它向下兼容16450,包含了16字節(jié)的先進先出寄存器,從而減少了對CPU的中斷次數(shù)。可編程設(shè)定的波特率最大可達1Mbps,接口的字符結(jié)構(gòu)可由用戶選擇,自動完成起始位、停止位、奇偶校驗位的加入和刪除,具有可程序化中斷控制和完整的MODEM控制邏輯功能。
2.3 PLD電路
考慮到104標(biāo)準(zhǔn)的尺寸限制,設(shè)計中應(yīng)盡量采用緊湊的結(jié)構(gòu),因此用PLD電路來產(chǎn)生異步通信單元、數(shù)據(jù)緩沖電路的控制信號,還利用此電路實現(xiàn) 485連接時信號極性的自動轉(zhuǎn)換。PLD電路采用了ALTERA公司的EPM7064,它包含了4個邏輯陣列塊,64個宏單元,有1250個邏輯門可供使用。開發(fā)工具使用MAX+PLUSⅡ。
PLD電路主要完成以下功能:
(1)每一個異步收發(fā)單元的選擇。利用八根地址信號A9~A3和讀寫控制信號IOR、IOW之間的邏輯關(guān)系產(chǎn)生片選信號,其中A9~A6 位地址信號同地址選擇電路的信號一起先送到一個4位比較器中進行地址比較,地址選擇電路可由用戶設(shè)定,這樣,通過改變地址選擇電路中的短路塊就改變了相應(yīng)位的地址,從而增加了用戶對地址的選擇范圍和使用的靈活性。
(2)雙向數(shù)據(jù)緩沖器的片選。利用A 9~A6和讀寫控制信號產(chǎn)生。
(3)485信號極性選擇。485采用總線方式連接,利用差分方式傳輸,兩根連接線之間的信號正負極性不同,使用時必須使同極性端相連。
當(dāng)節(jié)點之間比較遠或者使用者并不清楚信號線的極性關(guān)系時往往不能保證正確接線,需要多次改變接線和調(diào)試,因此我們設(shè)計了極性的自動轉(zhuǎn)換電路以方便嵌入式系統(tǒng)使用。基本思路是這樣的,設(shè)置一個電子開關(guān),在通信初始化期間由主機發(fā)一個固定的測試信號,如果從機發(fā)現(xiàn)接收到的信號不對,就自動切換電子開關(guān)換向,如果接收到的測試信號正確就保持原來的連接。電子開關(guān)由異或門充當(dāng),它可以反轉(zhuǎn)或保持發(fā)送和接收的信號,即當(dāng)輸入端中的一個信號置1時就可使另一個輸入信號在輸出端反相,而當(dāng)將其置0時輸出信號保持不變。電子開關(guān)的控制由D觸發(fā)器實現(xiàn),在初始化期間從機根據(jù)所接收信號的正誤,選通D觸發(fā)器,產(chǎn)生合適的控制電平,實現(xiàn)電子開關(guān)的控制。其邏輯原理如圖3所示。
2.4 RS-485接口電路
當(dāng)計算機利用RS-485總線方式通信,在進行系統(tǒng)連接時,需要在拓撲結(jié)構(gòu)最遠端的兩個計算機的RS-485接口上加匹配電阻以消除信號的反射,還需要給信號傳輸線加一個固定的偏置電壓以增加抗干擾能力。為了提高電路的通用性,方便嵌入式系統(tǒng)的使用,RS-485接口電路設(shè)計如圖4。圖中R 1=120Ω,R2=R3 =560Ω,在進行總線連接時就可以根據(jù)需要設(shè)置不同節(jié)點的計算機的RS-485 接口電路。
責(zé)任編輯:gt
-
芯片
+關(guān)注
關(guān)注
458文章
51419瀏覽量
428636 -
嵌入式
+關(guān)注
關(guān)注
5096文章
19227瀏覽量
308658 -
計算機
+關(guān)注
關(guān)注
19文章
7563瀏覽量
88847
發(fā)布評論請先 登錄
相關(guān)推薦
嵌入式通信
嵌入式通信
嵌入式Socket通信怎么實現(xiàn)?
嵌入式SQL語句與主語言之間的通信
基于嵌入式調(diào)試器的網(wǎng)絡(luò)通信方法設(shè)計與實現(xiàn)
異步事件驅(qū)動模型在嵌入式系統(tǒng)中的應(yīng)用
嵌入式手持設(shè)備的無線數(shù)據(jù)通信模塊擴展方法

嵌入式PLC的設(shè)計及通信功能的擴展
一種嵌入式手持設(shè)備的無線數(shù)據(jù)通信模塊擴展方法
嵌入式系統(tǒng)無線通信技術(shù)研究
嵌入式通信軟件開發(fā)設(shè)計

ARM11嵌入式系統(tǒng)實時網(wǎng)絡(luò)通信和PWM波輸出控制的實現(xiàn)

arm11嵌入式系統(tǒng)實時網(wǎng)絡(luò)通信和lcd顯示的實現(xiàn)

嵌入式通信電源有什么優(yōu)勢?

評論