IrDA是一種標(biāo)準(zhǔn)化的無線紅外數(shù)據(jù)通信方法?,F(xiàn)代產(chǎn)品通常支持RS-232和IrDA,滿足傳統(tǒng)要求。本應(yīng)用筆記描述了使用單個(gè)UART實(shí)現(xiàn)兩個(gè)接口的方法。
背景
術(shù)語數(shù)據(jù)通信接口是模棱兩可的,但它可以解析為三個(gè)易于理解的層:物理層定義電氣特性和硬件通信速度,協(xié)議層定義數(shù)據(jù)格式,應(yīng)用層使用這種數(shù)據(jù)格式在給定設(shè)備中執(zhí)行任務(wù)。例如,IrDA中的應(yīng)用層IrTran-P用于數(shù)碼相機(jī)和其他成像設(shè)備中以傳輸圖像。
RS-232僅包含物理層,但I(xiàn)rDA包含所有三個(gè)層(物理,協(xié)議和應(yīng)用)。IrDA包括幾個(gè)不同的物理層:SIR(115kbps),MIR(1Mbps),F(xiàn)IR(4Mbps)和VFIR(16Mbps)。由于RS-232和IrDA SIR使用相同的數(shù)據(jù)成幀器(通常稱為UART),因此本文僅考慮RS-232和IrDA SIR物理層。
由于RS-232(直到最近)在過去三十五年中幾乎包含在每臺(tái)計(jì)算機(jī)中,因此它是異步串行通信中使用最廣泛的物理層。大多數(shù)個(gè)人計(jì)算機(jī)正在用通用串行總線(USB)取代RS-232,但RS-232在網(wǎng)絡(luò)設(shè)備、工業(yè)控制設(shè)備和銷售點(diǎn)設(shè)備中仍然很常見(表1)。
規(guī)范 | 最低 | 最大 |
每條數(shù)據(jù)線的變送器數(shù)量 | 1 TX | |
每條數(shù)據(jù)線的接收器數(shù)量 | 1 個(gè)接收 | |
電纜長(zhǎng)度 | C < 2500pF | |
數(shù)據(jù)速率 | 20k比特/秒* | |
負(fù)載驅(qū)動(dòng)器輸出范圍 (0V 失調(diào)) | ±5V | ±15V |
最大驅(qū)動(dòng)器短路電流 | 100毫安 | |
TX 負(fù)載電阻 | 3kΩ | 7kΩ |
最大壓擺率 | <30V/us | |
接收輸入范圍 | -25V | +25V |
接收輸入靈敏度 | -3V | +3V |
接收輸入電阻 | 3kΩ | 7kΩ |
* 盡管有此規(guī)格,但某些器件支持高達(dá) 1Mbit/s 的數(shù)據(jù)速率。 |
紅外數(shù)據(jù)協(xié)會(huì)(IrDA)成立于1993年,其目標(biāo)是定義一個(gè)允許紅外設(shè)備之間通信的3層接口。IrDA SIR成立于1994年,此后不久,微軟在Windows 95中增加了對(duì)IrDA的支持。IrDA現(xiàn)在可用于筆記本電腦,手機(jī),數(shù)碼相機(jī),個(gè)人數(shù)字助理(PDA)和尋呼機(jī)等設(shè)備。表 2 列出了對(duì) IrDA SIR 物理層重要的一些規(guī)格。??
規(guī)范 | 最低 | 最大 |
傳輸 | ||
峰值波長(zhǎng) | 850納米 | 900納米 |
角度范圍內(nèi)的強(qiáng)度 | 40毫瓦/秒 | 500毫瓦/秒 |
半角 | ±15° | ±30° |
數(shù)據(jù)速率 |
115.2千字節(jié) |
|
脈沖持續(xù)時(shí)間 @ 2.4kbps | 1.41us | 88.55us |
脈沖持續(xù)時(shí)間 @ 115.2kbps | 1.41us | 2.23us |
上升和下降時(shí)間 | 600ns | |
收到 | ||
角范圍內(nèi)的輻照度 | 4uW/厘米2 | 500毫瓦/厘米2 |
半角 | ±15° | |
接收器延遲 | 10毫秒 |
傳統(tǒng)方法
在只有一個(gè)UART的系統(tǒng)中實(shí)現(xiàn)IrDA和RS-232通常需要四個(gè)IC:雙通道SPDT模擬開關(guān)、編碼器/解碼器(ENDEC)、RS-232收發(fā)器和IR收發(fā)器(圖1)。表3顯示了適合所得電路的IC。
圖1.這種傳統(tǒng)的單UART方法使用四個(gè)IC實(shí)現(xiàn)IrDA和RS-232。
雙單刀雙擲模擬開關(guān) | |
美信集成 | MAX4567 |
恩德克 | |
安捷倫 | HSDL-7000 |
德州儀器 | TIR1000 |
RS232 收發(fā)器 | |
美信集成 | MAX232、MAX232A*、MAX3232E** |
紅外收發(fā)器 | |
美信集成 | MAX3120 |
* 改進(jìn)的規(guī)格。 ** 其他改進(jìn)的規(guī)格。 |
模擬開關(guān)由 μP 或 μC 的通用輸出控制,并將發(fā)送 (TX) 和接收 (RX) 信號(hào)引導(dǎo)至相應(yīng)的收發(fā)器或從相應(yīng)的收發(fā)器發(fā)出。為了滿足 IrDA SIR 操作的標(biāo)準(zhǔn),TX 信號(hào)必須通過 ENDEC 的編碼器部分,該部分將傳統(tǒng)的 UART NRZ 信號(hào)壓縮為 IR 收發(fā)器所需的單個(gè) RZ 脈沖(圖 2-3)。RX信號(hào)需要相反的處理,因此從紅外收發(fā)器路由到ENDEC的解碼器部分。解碼器將單個(gè)脈沖拉伸為UART可以識(shí)別的傳統(tǒng)NRZ信號(hào)。然后,紅外收發(fā)器僅在紅外光譜中發(fā)送和接收信息。
圖2.編碼器(脈沖壓縮機(jī))前的UART幀。
圖3.編碼器(脈沖壓縮機(jī))之后的紅外幀。
更直接的是RS-232操作,其中模擬開關(guān)將TX和RX信號(hào)引導(dǎo)到RS-232收發(fā)器或從RS-232收發(fā)器引出。由于RS-232收發(fā)器不需要ENDEC,因此可以直接接受進(jìn)出UART的TTL/CMOS信號(hào)。RS-5收發(fā)器只不過是一個(gè)電平轉(zhuǎn)換器,其中TTL/CMOS電平反轉(zhuǎn),然后使用內(nèi)部電荷泵轉(zhuǎn)換為大于+5V和小于-<>V的電平。
替代方法
圖1的常用替代方案是無需使用模擬開關(guān)。這種方法也在單UART系統(tǒng)中實(shí)現(xiàn)了IrDA和RS-232,只需要三個(gè)IC:編碼器/解碼器(ENDEC),RS-232收發(fā)器和IR收發(fā)器。IR 和 RS-232 收發(fā)器的 TX 線連接在一起,因此無需模擬開關(guān)。類似的連接適用于兩個(gè)收發(fā)器的 RX 線路。
通用TX線同時(shí)向IR和RS-232變送器傳輸數(shù)據(jù),但同時(shí)激活兩個(gè)變送器會(huì)浪費(fèi)功率,并且在應(yīng)用中很少需要。許多設(shè)計(jì)人員試圖通過以電子方式斷開未使用的收發(fā)器的電源來解決這個(gè)問題,但這種安排是無效的,因?yàn)槲词褂玫氖瞻l(fā)器仍然通過內(nèi)部保護(hù)二極管由發(fā)射器輸入線路上的電壓供電。因此,替代方法需要仔細(xì)選擇兩種發(fā)射器,使其不如傳統(tǒng)方法萬無一失。因此,您應(yīng)確保圖 232 中的 IR 和 RS-4 收發(fā)器具有關(guān)斷功能,無需斷開電源即可啟用(圖 4)。表4列出了適合該電路的IC。
圖4.這種替代的單UART方法使用三個(gè)IC實(shí)現(xiàn)IrDA和RS-232。
恩德克 | |
安捷倫 | HSDL-7000 |
德州儀器 | TIR1000 |
RS232 收發(fā)器 | |
美信集成 | MAX3222 |
紅外收發(fā)器 | |
美信集成 | MAX3120 |
更好的方法
在只有一個(gè)UART的系統(tǒng)中實(shí)現(xiàn)IrDA和RS-232不再需要三個(gè)或四個(gè)IC。相反,圖1中的傳統(tǒng)電路現(xiàn)在可以通過單個(gè)IC實(shí)現(xiàn)(圖5)。該IC (MAX3130)在單個(gè)28引腳SSOP封裝中包含了四個(gè)必要的功能。施加到/IRMODE引腳的邏輯信號(hào)控制雙通道SPDT型的內(nèi)部模擬開關(guān)。該開關(guān)在高電平時(shí)將信號(hào)引導(dǎo)至 RS-232 收發(fā)器/從 RS-16 收發(fā)器引導(dǎo)信號(hào),在低電平時(shí)將信號(hào)引導(dǎo)至 IR 收發(fā)器。內(nèi)部 ENDEC 借助 UART 的 BAUDOUT 信號(hào)提供的波特 232 時(shí)鐘壓縮和拉伸這些信號(hào)。獨(dú)立的RS-3130和IR關(guān)斷電路可在不使用時(shí)關(guān)閉IC的某些部分,從而延長(zhǎng)便攜式應(yīng)用中的電池壽命。MAX4與圖1所示的<>-IC電路相當(dāng),因?yàn)樗€包括邊緣檢測(cè)電路,用于監(jiān)測(cè)未使用接口上的活動(dòng)。
圖5.更好的單UART方法僅使用一個(gè)IC實(shí)現(xiàn)IrDA和RS-232。
改進(jìn)了其他常見問題的解決方案
當(dāng)今的許多微處理器和微控制器(μP和μC)都包含多個(gè)內(nèi)部UART,如果系統(tǒng)處理器中有兩個(gè)UART可用,則不需要雙SPDT模擬開關(guān)。對(duì)于此類系統(tǒng),MAX3131在單個(gè)232引腳SSOP封裝中集成了ENDEC、IR收發(fā)器和RS-28收發(fā)器,具有獨(dú)立的關(guān)斷電路(無模擬開關(guān))(圖6)。這種方法不需要μP I/O引腳,因?yàn)樗话ㄒ刂频哪M開關(guān)。
圖6.更好的雙UART方法僅使用一個(gè)IC實(shí)現(xiàn)IrDA和RS-232。
某些μC內(nèi)部的UART無法提供與行業(yè)標(biāo)準(zhǔn)16550 UART產(chǎn)生的BAUDOUT信號(hào)等效的信號(hào)。(波特率信號(hào)只是一個(gè)比所選波特率快 16 倍的時(shí)鐘。所有 ENDEC 在某個(gè)時(shí)候都需要這個(gè)波特 16 時(shí)鐘,為 9600 波特以外的速率創(chuàng)建這樣的時(shí)鐘并非易事。首先,在任何通信之前都必須存在波特16時(shí)鐘,并且第一次通信是9600波特。當(dāng)時(shí),兩個(gè)連接的 IrDA 系統(tǒng)就每個(gè)系統(tǒng)支持的最快數(shù)據(jù)速率達(dá)成一致。然后必須相應(yīng)地調(diào)整(增加)波特16時(shí)鐘,以更快和當(dāng)前的波特率構(gòu)建所有新通信。您不能簡(jiǎn)單地用一些觸發(fā)器和跳線來劃分晶體振蕩器信號(hào);系統(tǒng)必須通過軟件控制波特16時(shí)鐘。
圖7所示為配置MAX3100和現(xiàn)有SPI的方法?端口,因此只需使用一個(gè)額外的 I/O 引腳 (/CS16) 即可通過軟件修改 Baud2 時(shí)鐘。作為世界上最小的帶有SPI前端的UART,MAX3100還可以通過SPI端口產(chǎn)生軟件可調(diào)的波特16時(shí)鐘??雌饋砗芷婀郑珪r(shí)鐘實(shí)際上是從MAX3100的/RTS引腳中產(chǎn)生的。圖7所示為MAX3100向MAX16發(fā)送波特3131字節(jié)時(shí)鐘,但其它需要波特16字節(jié)時(shí)鐘的ENDEC IC(包括MAX3130)也可以。
圖7.MAX3100電路僅需一個(gè)額外的μC I/O即可實(shí)現(xiàn)軟件可調(diào)波特16時(shí)鐘發(fā)生器。
某些應(yīng)用要求每個(gè)通信接口使用單獨(dú)的UART,但設(shè)計(jì)人員可能迫于成本或現(xiàn)有設(shè)計(jì)限制,只能使用一個(gè)內(nèi)部UART的μP。這種情況會(huì)產(chǎn)生一個(gè)昂貴而復(fù)雜的系統(tǒng)。更糟糕的是,如果μP上沒有八個(gè)I/O引腳來連接到第二個(gè)并行硬件UART,則選項(xiàng)很快就會(huì)耗盡。圖8顯示了世界上最小的硬件UART(MAX3100)如何通過SPI端口連接到1P或1C,從而提供第二個(gè)UART。
圖8.世界上最小的硬件UART(MAX3100)通過SPI端口連接到微處理器(或微控制器),以提供第二個(gè)UART。
結(jié)論
電子設(shè)備通常包含多個(gè)數(shù)據(jù)通信接口,將IrDA SIR添加到已經(jīng)支持RS-232的設(shè)備中可以增加便利性,而不會(huì)增加太多成本。另一方面,將RS-232添加到僅支持IrDA的系統(tǒng)中,使該系統(tǒng)與其他類型的設(shè)備兼容。此外,已經(jīng)支持RS-232和IrDA的舊系統(tǒng)是升級(jí)以減少關(guān)鍵電路板空間和成本的絕佳前景。因此,在將RS-232和IrDA SIR設(shè)計(jì)到單個(gè)設(shè)備中時(shí),了解模塊如何組合在一起以及您的選擇會(huì)非常有幫助。
審核編輯:郭婷
-
振蕩器
+關(guān)注
關(guān)注
28文章
3807瀏覽量
138821 -
電路板
+關(guān)注
關(guān)注
140文章
4881瀏覽量
97239 -
RS-232
+關(guān)注
關(guān)注
0文章
386瀏覽量
49841
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論