單片機(jī)雙向并行接口總線的長線傳輸技術(shù)
三、總線驅(qū)動(dòng)能力問題及其解決方案
與一般單片機(jī)總線擴(kuò)展技術(shù)中考慮的總線驅(qū)動(dòng)能力問題不同,在用長線電纜實(shí)現(xiàn)總線接口連接時(shí)也會(huì)產(chǎn)生總線驅(qū)動(dòng)能力問題。前者主要考慮的是總線的交、直流負(fù)載能力,從而確定總線上允許掛接的負(fù)載個(gè)數(shù);后者產(chǎn)生的根本原因是長線電纜本身表現(xiàn)為高容性負(fù)載(分布電感的影響很小,一般不予考慮),在有限電流的驅(qū)動(dòng)下,信號(hào)在電纜一端傳送到另一端時(shí),就會(huì)產(chǎn)生明顯的信號(hào)衰減和畸變現(xiàn)象,如圖2所示。所以用長線電纜實(shí)現(xiàn)總線驅(qū)動(dòng)時(shí)主要考慮的是長線本身作為負(fù)載對(duì)總線驅(qū)動(dòng)能力的要求。
工程實(shí)踐中發(fā)現(xiàn),晶體管-晶體管邏輯(TTL)電平的單端信號(hào)幾乎很難在一個(gè)輸入/輸出(I/O)周期內(nèi)驅(qū)動(dòng)1 m以上(甚至更短)的電纜;而且我們還發(fā)現(xiàn)一個(gè)有意思的現(xiàn)象,盡管互補(bǔ)金屬氧化物半導(dǎo)體(CMOS)邏輯電平的抗干擾噪聲容限明顯高于TTL電平,但相同電源電壓(5 V)下的高速CMOS(HCMOS)接口器件(主要指緩沖器端)的長線驅(qū)動(dòng)能力卻明顯地低于TTL接口器件。定性地理解這一現(xiàn)象可解釋為,噪聲容限大的器件往往產(chǎn)生的噪聲也大,CMOS器件屬于容性負(fù)載,每個(gè)引腳有大約10 pF的輸入電容,輸入阻抗極高,對(duì)長線電纜的阻抗不匹配導(dǎo)致的反射現(xiàn)象尤為嚴(yán)重,故抗干擾能力比TTL器件差許多。器件抗干擾能力通常與輸入阻抗有關(guān),輸入阻抗越低,抗干擾能力越強(qiáng)。
在通常的總線接口驅(qū)動(dòng)器/緩沖器方案中,例如使用74245芯片作驅(qū)動(dòng)器/緩沖器,要提高長線電纜連接時(shí)的總線驅(qū)動(dòng)能力,解決辦法主要有2種,一是適當(dāng)降低傳輸速率,二是在總線兩端加上拉電阻。前者是為了避開容性負(fù)載對(duì)脈沖前沿的平滑作用和反射波的干擾,這是一個(gè)暫態(tài)過程;后者是為了提高信號(hào)高電平,也起到降低輸入阻抗、減小反射波干擾的作用。筆者曾經(jīng)想利用這種方案在一個(gè)I/O周期內(nèi)實(shí)現(xiàn)2 m長電纜的雙向并口通信,但失敗了。正如前面強(qiáng)調(diào)指出的那樣,失敗原因當(dāng)然并不僅僅是總線驅(qū)動(dòng)能力問題。成功的實(shí)踐是使用OC門作驅(qū)動(dòng)器。OC門具有很強(qiáng)的總線驅(qū)動(dòng)能力,它允許輸出端直接相連實(shí)現(xiàn)“線與”功能。設(shè)計(jì)難點(diǎn)在于如何把單向驅(qū)動(dòng)改造為雙向驅(qū)動(dòng),圖3給出了具體電路方案。
其工作原理為:數(shù)據(jù)寫出時(shí)由地址譯碼電路的片選信號(hào)選通74373鎖存器,再由OC門7405驅(qū)動(dòng)至遠(yuǎn)端緩沖器74244;數(shù)據(jù)讀入時(shí)先向74373輸出邏輯“0”,使已方OC門置于邏輯高狀態(tài),正確實(shí)現(xiàn)“線與”功能,再由地址譯碼選通74244讀數(shù)。
圖3的方案具有相當(dāng)?shù)脑O(shè)計(jì)啟發(fā)性,稍加改造就可以適應(yīng)許多要求高速、大容量雙向通信的場(chǎng)合。比如在74LS244側(cè)增加或干脆換成先進(jìn)先出(FIFO)器件,就可以支持高速、大容量的成塊數(shù)據(jù)交換。
四、電磁干擾及其解決方案
使用單端信號(hào)進(jìn)行長線電纜傳輸時(shí),有2種電磁干擾是不能忽視的:線間竄擾和地線噪聲。線間竄擾是當(dāng)2條或多條較長的的導(dǎo)線相平行而又靠得很近時(shí),其中一條導(dǎo)線上的信號(hào)將對(duì)其它導(dǎo)線產(chǎn)生干擾。線間竄擾是一種近場(chǎng)(即距離干擾源小于的場(chǎng),其中λ為電磁波長)耦合干擾,受擾線上的影響來源于傳輸線間的分布電容和分布電感引起的電磁耦合。線間竄擾大多發(fā)生在多芯電纜、束捆導(dǎo)線或印制板上的平行導(dǎo)線之間,竄擾強(qiáng)度與相鄰兩信號(hào)線間互阻抗和信號(hào)線本身的特性阻抗有關(guān),并與線間距成反比,與線平行長度成正比。對(duì)線間竄擾的抑制,一般采用一些常規(guī)而有效的方法。當(dāng)用扁平電纜作連接電纜時(shí),在相鄰信號(hào)線之間插入地線,可把導(dǎo)線間的耦合電容轉(zhuǎn)化為對(duì)地電容;如果竄擾比較嚴(yán)重,還可以使用帶雙絞線結(jié)構(gòu)的扁平電纜,這種電纜對(duì)抑制靜電干擾和空間電磁干擾也有效果;也可以考慮采用多股雙絞線結(jié)構(gòu)的屏蔽電纜。
地線造成電磁干擾的主要原因是地線存在阻抗,當(dāng)電流流過地線時(shí),會(huì)在地線上產(chǎn)生電壓,這就是地線噪聲。在這個(gè)電壓的驅(qū)動(dòng)下,會(huì)產(chǎn)生地線環(huán)路電流,形成地環(huán)路干擾。當(dāng)2個(gè)電路共用一段地線時(shí),會(huì)形成公共阻抗耦合。增加地線的直徑對(duì)于減小直流電阻是十分有效的,但對(duì)于減小交流阻抗的作用很有限;減小交流阻抗,一個(gè)有效的辦法是多根地線并聯(lián)。當(dāng)2根導(dǎo)線并聯(lián)時(shí),其總電感:
ИL=(L1+M)/2 (7)И
式中L1是單根導(dǎo)線的電感;
M是兩根導(dǎo)線之間的互感。
正是因?yàn)榈鼐€的交流阻抗特性,使得地線成了電路中事實(shí)上的最大噪聲源。單端信號(hào)的傳輸長度最終受限于地線長度。抑制地線噪聲的最理想的辦法是對(duì)電纜兩側(cè)的電路進(jìn)行電氣隔離。參考文獻(xiàn)[2]給出了一種利用高速光耦6N137對(duì)MCS-51系列單片機(jī)的系統(tǒng)總線進(jìn)行雙向高速隔離的很新穎的方案。但筆者認(rèn)為這種隔離方案對(duì)以雙向并行通信為目的應(yīng)用來說,已基本失去實(shí)用價(jià)值。因?yàn)楣怦钍菃蜗騻鬏斊骷?,最終隔離的結(jié)果將是全雙工信道,而并行全雙工信道的長線傳輸方案因技術(shù)、器件、線路成本上升很多而在工程上很少應(yīng)用。所以,對(duì)TTL電平的單端信號(hào)的雙向傳輸來說,必須嚴(yán)格限制電纜長度,一般不能超過5 m。
五、 結(jié)束語
雙機(jī)并行通信技術(shù)普遍應(yīng)用于短距、高速、大容量通信場(chǎng)合,但其高速性能受通信距離的影響很大,以更多的技術(shù)來實(shí)現(xiàn)并行通信長線傳輸?shù)目煽啃院透咝栽诮?jīng)濟(jì)上是得不償失的。本文針對(duì)單片機(jī)系統(tǒng)之間的雙向并行總線的長線傳輸問題進(jìn)行了一些分析和討論,并給出了幾種廉價(jià)的解決方案。一般說來,對(duì)2 m長的并行通信電纜,數(shù)據(jù)傳輸率是完全可以達(dá)到500 kbit/s~1 Mbit/s。遵循器件解決的原則,也可以考慮采用并行接口標(biāo)準(zhǔn)器件,如IEEE-1284并行接口標(biāo)準(zhǔn),這些標(biāo)準(zhǔn)接口器件已集成了端接元件并對(duì)連接器、電纜有嚴(yán)格的電氣要求。但即使這樣,在2 m長的電纜上也很難達(dá)到2 Mbit/s的數(shù)據(jù)傳輸率。
參考文獻(xiàn)
[1]邵時(shí),張汝杰.高速計(jì)算機(jī)系統(tǒng)中信號(hào)可靠傳輸技術(shù)[J].微型機(jī)與應(yīng)用,1998,(12).
[2]劉大健,陳降道.單片機(jī)系統(tǒng)總線級(jí)的光電隔離[J].微型機(jī)與應(yīng)用,
1998,(6).
[3]張松春,竺子芳,趙秀芬,蔣春寶.電子控制設(shè)備抗干擾技術(shù)及其應(yīng)用(第2版)[M].北京:機(jī)械工業(yè)出版社,1995.
[4]王幸之,王雷,翟成等.單片機(jī)應(yīng)用系統(tǒng)抗干擾技術(shù)[M].北京:北京航空航天大學(xué)出版社,1999
評(píng)論