紅外通信的設計與實(shí)現
在電子消費領(lǐng)域當中,紅外產(chǎn)品的使用較為普遍,它多用于簡(jiǎn)單的近距離控制,如家電,玩具,各種抄表系統。本文以Freescale 8位高性能、低功耗單片機MC9S08GT60為載體,詳細介紹紅外通信的硬件和軟件設計過(guò)程及通信協(xié)議的使用。
本文引用地址:http://dyxdggzs.com/article/157893.htmHCS08系列的MCU是Freescale半導體公司最新推出的8位單片機,具有多種低功耗模式,更高的工作頻率,并集成了片上調試器,而且資源豐富,因此采用了該系列的MC9S08GT60作為載體詳細討論了一個(gè)簡(jiǎn)單實(shí)用的紅外通信開(kāi)發(fā)系統。
紅外通信過(guò)程主要由紅外發(fā)射和紅外接收兩個(gè)過(guò)程,首先將數字信號送給紅外發(fā)射電路,經(jīng)該電路的調制轉變成紅外光信號在空中傳輸,然后紅外接收電路收到該紅外光信號,經(jīng)過(guò)該電路的解調,將此紅外光信號還原成可被單片機處理的信號,由單片機內部處理得到原來(lái)的數據編碼。
2 紅外通信協(xié)議
協(xié)議的目的是給收發(fā)雙方一個(gè)約定,使其能夠進(jìn)行同步,并正確的收發(fā)數據。本設計使用了類(lèi)同步協(xié)議。當紅外接收器未收到信號時(shí),不產(chǎn)生定時(shí)操作,否則,首先接收起始位‘0’,并觸發(fā)中斷,啟動(dòng)定時(shí)器接收數據,然后判斷是否為起始位,如果是,則繼續接收數據,否則將定時(shí)器復位,重新檢測起始位,在接收第二個(gè)停止位時(shí),會(huì )觸發(fā)一次中斷來(lái)檢測第一次接收的停止位是否正確,如果不正確,則復位定時(shí)器,重新接收,否則已經(jīng)正確接收該數據段。
3 紅外通信的原理分析
紅外通信在空中傳輸的是載波信號,當有載波通過(guò)時(shí),接收端輸出數字信號‘0’,反之,輸出數字信號‘1’。因此在發(fā)射電路發(fā)送的功能指令碼,一般采用多位二進(jìn)制串行碼。本文中,紅外通信數據采用脈沖編碼,就是將每位數據信號用一個(gè)脈沖來(lái)表示,脈寬為526 μs,兩個(gè)這樣的脈沖周期表示‘1’,一個(gè)這樣的脈沖周期表示‘0’。這樣的脈沖信號都調制在頻率為38 kHz的載波上再發(fā)送出去,調制后在空中傳輸的信號就是具有一定時(shí)間間隔的載波信號,其占空比由數據編碼決定。在紅外接收端,數據處理的過(guò)程正好相反,在接收紅外光信號之后,會(huì )經(jīng)過(guò)整形、放大、濾波、調制等一系列處理,然后在其輸出端輸出一系列的單片機能夠處理的數據信號。
4 紅外通信硬件設計原理
4.1 發(fā)送電路的硬件設計
HCS08GT60單片機內部有兩個(gè)TPM模塊,每個(gè)模塊有兩個(gè)通道,可以用任意一個(gè)通道的PWM功能,輸出38 kHz的載波信號,本文編程設計根據實(shí)驗條件的要求采用了TPM1通道1中心脈寬輸出功能產(chǎn)生38 kHz紅外載波信號。而PTA7口作為普通的輸入輸出口,產(chǎn)生一定脈寬的方波信號,作為數據編碼信號輸入。硬件原理圖如圖1所示。
原理圖中,電氣節點(diǎn)CODE跟PTA7口相連,產(chǎn)生數據編碼;電氣節點(diǎn)CLK跟TPM1通道1相連,產(chǎn)生38 kHz紅外載波信號。三極管基極串接的電阻和R5起到限流保護的作用,三極管本身則具有信號放大的功能,另外兩個(gè)三極管級聯(lián)將編碼調制在38 kHz的載波上通過(guò)紅外發(fā)射器發(fā)射出去。當編碼為‘1’時(shí),Q1,Q2截止,紅外發(fā)射器上無(wú)電流通過(guò),發(fā)射低電平信號,當編碼為‘0’時(shí),Q1,Q2導通,此時(shí)載波信號通過(guò)Q2放大在發(fā)射器上體現出38 kHz的載波信號。因此在PTA7端口輸入不同的數據編碼,通過(guò)該發(fā)送電路,在發(fā)射器上會(huì )出現具有一定間隔的38 kHz載波信號,經(jīng)發(fā)射器將該載波信號轉化成光信號發(fā)射出去。載波脈沖調制信號的時(shí)序圖如圖2所示。
評論