- 相關(guān)推薦
一種用于單片機(jī)的紅外串行通信接口
摘要:闡述紅外通信的基本工作原理;結(jié)合在單相電度表抄表系統(tǒng)中的具體應(yīng)用,介紹一種適合單片機(jī)系統(tǒng)的紅外通信方案,設(shè)計(jì)具體的硬件接口電路,說明其工作原理,給出應(yīng)用于紅外通信的程序流程,并指出在實(shí)施過程中應(yīng)注意的一些問題。引言
在很多單片機(jī)應(yīng)用系統(tǒng)中,常常利用非電信號(hào)(如光信號(hào)、超聲波信號(hào)等)傳送控制信息和數(shù)據(jù)信息,以實(shí)現(xiàn)遙控或遙測(cè)的功能。例如在單相電度表抄表系統(tǒng)中,就是使用手持抄表器通過遙控的方式,來完成電度表用電量的抄錄、設(shè)置表底數(shù)、電度表校時(shí)等工作。紅外通信具有控制簡(jiǎn)單、實(shí)施方便、傳輸可靠性高的特點(diǎn),是一種較為常用的通信方式。實(shí)現(xiàn)單片機(jī)系統(tǒng)紅外通信的關(guān)鍵在于紅外接口電路的設(shè)計(jì)以及接口驅(qū)動(dòng)程序的設(shè)計(jì)。
1 紅外通信的基本原理
紅外通信是利用950nm近紅外波段的紅外線作為傳遞信息的媒體,即通信信道。發(fā)送端采用脈時(shí)調(diào)制(PPM)方式,將二進(jìn)制數(shù)字信號(hào)調(diào)制成某一頻率的脈沖序列,并驅(qū)動(dòng)紅外發(fā)射管以光脈沖的形式發(fā)送出去;接收端將接收到的光脈轉(zhuǎn)換成電信號(hào),再經(jīng)過放大、濾波等處理后送給解調(diào)電路進(jìn)行解調(diào),還原為二進(jìn)制數(shù)字信號(hào)后輸出。
簡(jiǎn)而言之,紅外通信的實(shí)質(zhì)就是對(duì)二進(jìn)制數(shù)字信號(hào)進(jìn)行調(diào)制與解調(diào),以便利用紅外信道進(jìn)行傳輸;紅外通信接口就是針對(duì)紅外信道的調(diào)制解調(diào)器。
2 紅外通信接口的硬件電路設(shè)計(jì)
單片機(jī)本身并不具備紅外通信接口,但可以利用單片機(jī)的串行接口與片外的紅外發(fā)射和接收電路,組成一個(gè)應(yīng)用于單片機(jī)系統(tǒng)的紅外串行通信接口,如圖1所示。
2.1 紅外發(fā)送器
紅外發(fā)送器電路包括脈沖振蕩器、驅(qū)動(dòng)管T1和T2、紅外發(fā)射管D1和D2等部分。其中脈沖振蕩器由NE555定時(shí)器、電阻(R1、R2)和電容(C1、C2)組成,用以產(chǎn)生38kHz的脈沖序列作為載波信號(hào);紅外發(fā)射管D1和D2選用Vishay公司生產(chǎn)的TSAL6238,用來向外發(fā)射950nm的紅外光束。
紅外發(fā)送器的工作原理為:串行數(shù)據(jù)由單片機(jī)的串行輸出端TXD送出并驅(qū)動(dòng)T1管,數(shù)位“0”使T1管導(dǎo)通,通過T2管調(diào)制成38kHz的載波信號(hào),并利用兩個(gè)紅外發(fā)射管D1和D2以光脈沖的形式向外發(fā)送。數(shù)位“1”使T1管截止,紅外發(fā)射管D1和D2不發(fā)射紅外光。若傳送的波特率設(shè)為1200bps,則每個(gè)數(shù)位“0”對(duì)應(yīng)32個(gè)載波脈沖調(diào)制信號(hào)的時(shí)序,如圖2所示。
2.2 紅外接收器
紅外接收電路選用Vishay公司生產(chǎn)的專用紅外接收模塊TSOP1738。該接收模塊是一個(gè)三端元件,使用單電源 5V電源,具有功耗低、抗干擾能力強(qiáng)、輸入靈敏度高、對(duì)其它波長(zhǎng)(950nm以外)的紅外光不敏感的特點(diǎn),其內(nèi)部結(jié)構(gòu)框圖如圖3所示。
TSOP1738的工作原理為:首先,通過紅外光敏元件將接收到的載波頻率為38kHz的脈沖調(diào)制紅外光信號(hào)轉(zhuǎn)化為電信號(hào),再由前放大器和自動(dòng)增益控制電路進(jìn)行放大處理。然后,通過帶通濾波器和進(jìn)行濾波,濾波后的信號(hào)由解調(diào)電路進(jìn)行解調(diào)。最后,由輸出級(jí)電路進(jìn)行反向放大輸出。
為保證紅外接收模塊TSOP1738接收的準(zhǔn)確性,要求發(fā)送端載波信號(hào)的頻率應(yīng)盡可能接近38kHz,因此在設(shè)計(jì)脈沖振蕩器時(shí),要選用精密元件并保證電源電壓穩(wěn)定。再有,發(fā)送的數(shù)位“0”至少要對(duì)應(yīng)14個(gè)載波脈沖,這就要求傳送的波特率不能超過2400bps。利用上述紅外收發(fā)電路構(gòu)成的紅外信道最大通信距離為8m。
3 紅外通信的軟件設(shè)計(jì)
3.1 通信方式
考慮到紅外光反射的原因,在全雙工方式下發(fā)送的信號(hào)也可能會(huì)被本身接收,因此紅外通信需采用異步半雙工方式,即通信的某一方發(fā)送和接收是交替進(jìn)行的。這里設(shè)置單片機(jī)的串行口采用方式3通信;通信的數(shù)據(jù)格式為每幀11位,包括1位起始位、8位數(shù)據(jù)位、1位奇偶校驗(yàn)位和1位停止位;片內(nèi)定時(shí)器T1作為波特率發(fā)生器,選擇傳送的波特率為1200bps,則定時(shí)器T1的初值應(yīng)設(shè)置為TL1=TH1=E8H,另外應(yīng)禁止定時(shí)器T1中斷,以免因定時(shí)器T1溢出而產(chǎn)生不必要的中斷。
3.2 通信協(xié)議
進(jìn)行紅外通信之前,通信雙方首先要根據(jù)系統(tǒng)的功能要求制訂某種特定的通信協(xié)議,然后才能編寫相應(yīng)的通信程序。例如在電度表抄表系統(tǒng)中,紅外通信的一方是單相電度表,另一方是手持抄表器,雙方遵循表1格式的通信協(xié)議。
表1 抄表系統(tǒng)的通信協(xié)議
操 作操作碼地址碼數(shù) 據(jù)結(jié)束符讀取表數(shù)AAH3字節(jié)BCD碼3字節(jié)BCD碼EDH設(shè)置表號(hào)BBH-3字節(jié)BCD碼EDH設(shè)置表底數(shù)CCH3字節(jié)BCD碼3字節(jié)BCD碼EDH開/關(guān)表設(shè)備DDH3字節(jié)BCD碼A0H/B0HEDH校驗(yàn)出錯(cuò)EEH3字節(jié)BCD碼-EDH
3.3 單相電度表通信程序
【一種用于單片機(jī)的紅外串行通信接口】相關(guān)文章:
多網(wǎng)融合應(yīng)用于通信工程的研究08-15
數(shù)字視頻接口-DVI 1.005-31
ISDN網(wǎng)與普通電話接口(POTS)設(shè)計(jì)05-29
通信技術(shù)論文11-21
用于壓縮感知的無線傳感網(wǎng)測(cè)量矩陣設(shè)計(jì)方法05-27
電壓電流轉(zhuǎn)換接口AM442原理及應(yīng)用05-29
網(wǎng)絡(luò)通信技術(shù)的作用03-30
通信技術(shù)論文15篇11-22
通信技術(shù)論文(15篇)11-22