1、引言 紅外通信是目前比較常用的一種無線數據傳輸手段,其具有無污染、信息傳輸穩定、信息安全性高以及安裝使用方便等優點,并且可以在很多場合應用,如家電產品,工業控制、娛樂設施等領域。紅外通信是利用950nm近紅外波段的紅外線作為傳遞信息的載體,通過紅外光在空中的傳播來傳遞信息,由紅外發射器和接收器實現。發射端將二進制數字信號調制成某一頻率的脈沖序列,經電光轉換電路,驅動紅外發射管以光脈沖的形式發送到空中。接收端將接收到的光脈沖轉換成電信號,再經解調和譯碼后恢復出原二進制數字信號。本文設計了一種基于單片機PIC18F248的主從式紅外通信系統,主要設計了紅外接口電路以及主機和從機通信軟件流程。 2、系統硬件電路設計 在主從式紅外通信系統中,主機及從機的紅外發射電路相同,紅外線的載波頻率都為38KHz,在同一時間內,可以是主機發射,從機接收;或者從機發射,主機接收。 2.1 紅外發射電路設計 紅外發射器電路主要由單片機,驅動管Q1和Q2、紅外發射管D1等組成,電路如下: 紅外發射器工作原理為:單片機通過I/O端口控制整個發射過程。其中,紅外載波信號采用頻率為38KHz的方波,由PIC18F248的CCP模塊的PWM功能實現,并由CCP1端口傳輸到三極管T2的基極。待發送到數據由單片機的TX端口以串行方式送出并驅動三極管Q1,當TX為“0”時使Q1管導通,通過Q2管采用脈寬調制(PWM)方式調制成38KHz的載波信號,并由紅外發射管D1以光脈沖的形式向外發送。當TX為“1”時使Q1管截止,Q2管也截止,連接Q1和Q2的兩個上拉電阻R1和R3把三極管的基極拉成高電平,分別保證兩個三極管可靠截止,紅外發射管D1不發射紅外光。因此通過待發送數據的“0”或“1”就可控制調制后兩個脈沖串之間的時間間隔,即調制PWM的占空比。比如若傳送數據的波特率為1200bps,則每個數位“0”就對應32個載波脈沖調制信號。紅外發射管D1采用TSAL6200紅外發射二極管,其實現將電信號轉變成一定頻率的紅外光信號,它發射一種時斷時續的高頻紅外脈沖信號,由于脈沖串時間長度是恒定的,根據脈沖串之間的間隔大小就可以確定傳輸的數據是“0”還是“1”。 2.2 紅外接收電路設計 紅外接收電路主要采用Vishay公司的專用紅外接收模塊HS0038B。接收電路及HS0038B內部結構如下: 接收電路工作原理為:當接收到載波頻率為38KHz的脈沖調制信號時,首先,HS0038B內的紅外敏感元件將脈沖調制紅外光信號轉換成電信號,再由前置放大器和自動增益控制電路進行放大處理,然后通過帶通濾波器進行濾波,濾波后的信號由解調電路進行解調,最后由輸出電路進行反向放大并輸出低電平;未接收到載波信號時,電路則輸出高電平。這樣就可以將斷斷續續的紅外光信號解調成一定周期的連續方波信號,并通過單片機的串口輸入單片機,由單片機處理后便可以恢復出原始數據信號。 3、主從式紅外通信軟件設計 主從式紅外通信中主機紅外接收、發送電路與從機的電路完全相同,紅外線的載波頻率也相同。在紅外通信系統中,若采用不同載波頻率來區分主機及從機之間的通信可以通過改善紅外發射和接收電路的頻率特性,但是這樣會大大提高硬件成本,本系統通過配置適當的通信協議來降低硬件成本。為了避免發射時造成對本機的干擾,系統采用異步半雙工通信模式,在同一時間內可以是主機發送,從機接收;也可以是從機發射,主機接收。主機及從機通信流程如下: 主機通信過程為:(1) 上電初始化,完成UART的工作模式、波特率的設置(系統波特率為2400bps);CCU模塊PWM工作模式、PWM頻率設定。CCU模塊工作在對稱的、非反向的PWM模式,頻率38KHz,占空比50%;(2) 等待數據發送控制信號到來;(3) 若接收到發送控制信號,則立即通過紅外串行發送16字節數據;(4) 通過紅外接口接收從機返回的16字節數據;(5) 比較接收到的16字節與發送到16字節數據,若一致則發送下一個數據,否則重發該數據。 從機通信過程為:(1) 上電初始化,完成UART的工作模式、波特率設置;CCU模塊PWM工作模式、PWM頻率設定;(2) 通過紅外接口從主機接收16字節數據;(3) 判斷是否為重發數據,若是則覆蓋前次接收到的數據。 主機和從機通信過程包括的函數主要有系統初始化函數UART_Init(),向串口發送數據函數UART_SendByte()、 串口接收紅外信號數據 UART_RcvByte( )等。部分函數程序代碼如下: UART_SendByte(unit8 dat) //向串口發送數據 { SBUF = dat; //發送數據 while(TI = =0; // 等待發送完畢 TI = 0; } unit8 UART_RcvByte() //接收串口數據 {if(RI = =0) return(0); //若沒有接收到數據,則返回0 *dat = SBUF; RI = 0; return(1); } 4、結束語 紅外通信可用于許多需短距離及非接觸式傳輸數據的場合。本文設計的主從式紅外通信接口具有硬件電路簡單、成本低、通信可靠等特點,實現了主機及從機雙方非接觸式的數據傳輸。適當修改通信軟件就可以讓系統用于紅外抄表、遙控、遙測等許多場合。 |