【導(dǎo)讀】看著工作臺(tái)上的硬件燃起滾滾濃煙,我不禁目瞪口呆。就在片刻之前,電路還一直像期望的那樣好好工作著,突然就聽(tīng)見(jiàn)如同qiāng聲一樣的電路自毀聲傳來(lái)。待測(cè)硬件自毀導(dǎo)致了意外的結(jié)果:一直使用的通過(guò)USB-to-UART轉(zhuǎn)換器與硬件進(jìn)行通信的計(jì)算機(jī)發(fā)生了不可恢復(fù)的USB故障?,F(xiàn)在電腦受損,變成了一堆廢鐵。
可以用便宜的簡(jiǎn)單隔離電路保護(hù)計(jì)算機(jī)上的USB端口。嵌入式系統(tǒng)開(kāi)發(fā)人員日常習(xí)慣于將一些奇怪的硬件和元器件插入他們的電腦中,很少考慮他們這樣做會(huì)帶來(lái)什么樣的后果。
本設(shè)計(jì)實(shí)例介紹了一種使用Sparkfun USB-to-UART通用板(BOB)搭建的低成本隔離型USB-to-UART轉(zhuǎn)換器。
隔離型USB-to-UART轉(zhuǎn)換器遲早會(huì)派上用場(chǎng)。舉例來(lái)說(shuō),在電池供電設(shè)備的開(kāi)發(fā)過(guò)程中,經(jīng)常會(huì)將USB-to-UART轉(zhuǎn)換器連接在設(shè)備上,在沒(méi)有采取隔離措施的情況下,會(huì)將主機(jī)的地和大地連在一起。設(shè)備可能工作非常正常,但當(dāng)跟電腦分開(kāi)時(shí),它就不能正常工作了。隔離型轉(zhuǎn)換器將設(shè)備和主機(jī)的地分隔開(kāi)來(lái),因此能很早地發(fā)現(xiàn)任何接地問(wèn)題。
隔離USB-to-UART轉(zhuǎn)換器的最重要用途當(dāng)然是在故障條件下。考慮將一個(gè)未經(jīng)測(cè)試的電路板連接到比如MacBook Pro這種昂貴的筆記本電腦的后果吧。USB規(guī)范和硬件層確實(shí)有保護(hù)電路,但它們不是針對(duì)工作在數(shù)百伏直流電壓的設(shè)備設(shè)計(jì)的。當(dāng)一臺(tái)設(shè)備發(fā)生USB總線故障,并有可能給總線施加超過(guò)5V的電壓或很大的電流時(shí),花20美元隔離兩臺(tái)設(shè)備是一種明智的決策。
隔離器的選擇需要仔細(xì)斟酌。UART一般被認(rèn)為是低速器件,但現(xiàn)代的微控制器和接口可以支持超過(guò)1Mbps的波特率。許多隔離器、特別是光耦隔離器的最大波特率都在100kbps以下。Silicon Labs公司的Si8421BB-D-IS是適合這種應(yīng)用的器件,但不推薦在新設(shè)計(jì)中使用。取而代之的是ADUM3211ARZ,但這種器件尚未經(jīng)過(guò)嚴(yán)格的測(cè)試,因此使用需慎重。
Si8421BB可以支持2.5kV的隔離電壓約一分鐘之久。這種隔離器能夠支持高達(dá)150Mbps的波特率。Si8421BB-D-IS的小批量?jī)r(jià)格僅1.46美元,但如果還嫌貴的話,可以選擇僅1.05美元的Si8421AB-D-IS(最大波特率是1Mbps)。Si8421BB-D-IS的另外一個(gè)優(yōu)點(diǎn)是,它有兩個(gè)采用8引腳SOIC封裝的隔離器,因此非常適合Tx/Rx信號(hào)對(duì)。這種隔離器是單向的,但布局上可以與Sparkfun USB-to-UART BOB做到引腳兼容。
搭建隔離器
需要訂購(gòu)少量器件:
這些元器件的總價(jià)加上運(yùn)輸費(fèi)也就20美元左右。大多數(shù)開(kāi)發(fā)人員手頭至少有一個(gè)項(xiàng)目,因此購(gòu)買(mǎi)足夠的材料搭建兩到三個(gè)產(chǎn)品有助于抵消運(yùn)輸成本。完整的元器件集應(yīng)該類似于圖1所示:
圖1:隔離型USB-to-UART元件。
組裝隔離器
從把隔離器焊接到SOIC BOB開(kāi)始(圖2)。然后給兩塊電路板增加插頭,如圖3所示。
圖2:SOIC-8 BOB準(zhǔn)備。
USB-to-UART BOB需要一個(gè)4腳插頭,4個(gè)引腳分別是Gnd、Tx、Rx和VCC。
圖3:插頭布局。
現(xiàn)在隔離板就可以直接焊接到USB-to-UART BOB上了。Si8421BB-D-IS的引腳1是電源,應(yīng)該對(duì)接轉(zhuǎn)換板上的FTDI232R IC提供的3.3V。隔離型USB-to-UART轉(zhuǎn)換器的裝配至此結(jié)束!
圖4:裝配好的隔離型USB-to-UART轉(zhuǎn)換器。
測(cè)試轉(zhuǎn)換器
USB-to-UART板是通過(guò)連接主機(jī)的USB電纜中的USB 5V引腳供電的。板載FTDI232R輸出的3.3V給隔離器的第一面供電,第二面需要由待測(cè)設(shè)備的硬件供電,可以是3.3V或5V。測(cè)試隔離型轉(zhuǎn)換器的最簡(jiǎn)單方法是給Si8421BB-D-IS的第二面提供電源和地,然后通過(guò)連接Tx和Rx形成一個(gè)環(huán)路。隔離板裝置的一個(gè)便利之處是,SOIC-8 BOB上未打標(biāo)簽的引腳直接關(guān)聯(lián)到USB-to-UART絲印,因此Vcc、Tx、Rx和GND都是對(duì)準(zhǔn)的。
圖5:測(cè)試轉(zhuǎn)換器。
最后一步就是測(cè)試電路板了。運(yùn)行你最喜愛(ài)的終端應(yīng)用,打開(kāi)虛擬串口(VCP,就像FTDI設(shè)備驅(qū)動(dòng)器創(chuàng)建的那樣)。為了充分發(fā)揮性能極限,我將終端速率設(shè)置為最大值921.6kbps。在終端內(nèi)輸入字符應(yīng)該會(huì)向隔離器發(fā)送數(shù)據(jù),數(shù)據(jù)再通過(guò)環(huán)路返回,終端上應(yīng)該顯示你敲入的字符(圖6)。如果有問(wèn)題,可以觀察USB-to-UART電路板上的Tx和Rx LED燈。在終端上輸入字符時(shí)這兩個(gè)燈正常應(yīng)該同時(shí)點(diǎn)亮。如果有一個(gè)燈沒(méi)亮,那么你就能知道從隔離器的哪一側(cè)去找問(wèn)題。
圖6:隔離型USB-to-UART轉(zhuǎn)換器的環(huán)回測(cè)試。
最后的思考
搭建這樣一個(gè)簡(jiǎn)單的隔離電路板至少有助于提供一開(kāi)始未能到位的保護(hù)功能。作為進(jìn)一步加固措施,你還可以在UART側(cè)增加靜電放電(ESD)保護(hù)功能。