當(dāng)前位置:首頁(yè) > 通信技術(shù) > 通信技術(shù)
[導(dǎo)讀]在電子消費(fèi)領(lǐng)域當(dāng)中,紅外產(chǎn)品的使用較為普遍,它多用于簡(jiǎn)單的近距離控制,如家電,玩具,各種抄表系統(tǒng)。本文以Freescale 8位高性能、低功耗單片機(jī)MC9S08GT60為載體,詳細(xì)介紹紅外通信的硬件和軟件設(shè)計(jì)過(guò)程及通信協(xié)議

在電子消費(fèi)領(lǐng)域當(dāng)中,紅外產(chǎn)品的使用較為普遍,它多用于簡(jiǎn)單的近距離控制,如家電,玩具,各種抄表系統(tǒng)。本文以Freescale 8位高性能、低功耗單片機(jī)MC9S08GT60為載體,詳細(xì)介紹紅外通信的硬件和軟件設(shè)計(jì)過(guò)程及通信協(xié)議的使用。

HCS08系列的MCU是Freescale半導(dǎo)體公司最新推出的8位單片機(jī),具有多種低功耗模式,更高的工作頻率,并集成了片上調(diào)試器,而且資源豐富,因此采用了該系列的MC9S08GT60作為載體詳細(xì)討論了一個(gè)簡(jiǎn)單實(shí)用的紅外通信開(kāi)發(fā)系統(tǒng)。

紅外通信過(guò)程主要由紅外發(fā)射和紅外接收兩個(gè)過(guò)程,首先將數(shù)字信號(hào)送給紅外發(fā)射電路,經(jīng)該電路的調(diào)制轉(zhuǎn)變成紅外光信號(hào)在空中傳輸,然后紅外接收電路收到該紅外光信號(hào),經(jīng)過(guò)該電路的解調(diào),將此紅外光信號(hào)還原成可被單片機(jī)處理的信號(hào),由單片機(jī)內(nèi)部處理得到原來(lái)的數(shù)據(jù)編碼。

2 紅外通信協(xié)議

協(xié)議的目的是給收發(fā)雙方一個(gè)約定,使其能夠進(jìn)行同步,并正確的收發(fā)數(shù)據(jù)。本設(shè)計(jì)使用了類(lèi)同步協(xié)議。當(dāng)紅外接收器未收到信號(hào)時(shí),不產(chǎn)生定時(shí)操作,否則,首先接收起始位‘0’,并觸發(fā)中斷,啟動(dòng)定時(shí)器接收數(shù)據(jù),然后判斷是否為起始位,如果是,則繼續(xù)接收數(shù)據(jù),否則將定時(shí)器復(fù)位,重新檢測(cè)起始位,在接收第二個(gè)停止位時(shí),會(huì)觸發(fā)一次中斷來(lái)檢測(cè)第一次接收的停止位是否正確,如果不正確,則復(fù)位定時(shí)器,重新接收,否則已經(jīng)正確接收該數(shù)據(jù)段。

3 紅外通信的原理分析

紅外通信在空中傳輸?shù)氖?strong>載波信號(hào),當(dāng)有載波通過(guò)時(shí),接收端輸出數(shù)字信號(hào)‘0’,反之,輸出數(shù)字信號(hào)‘1’。因此在發(fā)射電路發(fā)送的功能指令碼,一般采用多位二進(jìn)制串行碼。本文中,紅外通信數(shù)據(jù)采用脈沖編碼,就是將每位數(shù)據(jù)信號(hào)用一個(gè)脈沖來(lái)表示,脈寬為526 μs,兩個(gè)這樣的脈沖周期表示‘1’,一個(gè)這樣的脈沖周期表示‘0’。這樣的脈沖信號(hào)都調(diào)制在頻率為38 kHz的載波上再發(fā)送出去,調(diào)制后在空中傳輸?shù)男盘?hào)就是具有一定時(shí)間間隔的載波信號(hào),其占空比由數(shù)據(jù)編碼決定。在紅外接收端,數(shù)據(jù)處理的過(guò)程正好相反,在接收紅外光信號(hào)之后,會(huì)經(jīng)過(guò)整形、放大、濾波、調(diào)制等一系列處理,然后在其輸出端輸出一系列的單片機(jī)能夠處理的數(shù)據(jù)信號(hào)。

4 紅外通信硬件設(shè)計(jì)原理

4.1 發(fā)送電路的硬件設(shè)計(jì)

HCS08GT60單片機(jī)內(nèi)部有兩個(gè)TPM模塊,每個(gè)模塊有兩個(gè)通道,可以用任意一個(gè)通道的PWM功能,輸出38 kHz的載波信號(hào),本文編程設(shè)計(jì)根據(jù)實(shí)驗(yàn)條件的要求采用了TPM1通道1中心脈寬輸出功能產(chǎn)生38 kHz紅外載波信號(hào)。而PTA7口作為普通的輸入輸出口,產(chǎn)生一定脈寬的方波信號(hào),作為數(shù)據(jù)編碼信號(hào)輸入。硬件原理圖如圖1所示。

 

500)this.style.width=500;" border="0" />

原理圖中,電氣節(jié)點(diǎn)CODE跟PTA7口相連,產(chǎn)生數(shù)據(jù)編碼;電氣節(jié)點(diǎn)CLK跟TPM1通道1相連,產(chǎn)生38 kHz紅外載波信號(hào)。三極管基極串接的電阻和R5起到限流保護(hù)的作用,三極管本身則具有信號(hào)放大的功能,另外兩個(gè)三極管級(jí)聯(lián)將編碼調(diào)制在38 kHz的載波上通過(guò)紅外發(fā)射器發(fā)射出去。當(dāng)編碼為‘1’時(shí),Q1,Q2截止,紅外發(fā)射器上無(wú)電流通過(guò),發(fā)射低電平信號(hào),當(dāng)編碼為‘0’時(shí),Q1,Q2導(dǎo)通,此時(shí)載波信號(hào)通過(guò)Q2放大在發(fā)射器上體現(xiàn)出38 kHz的載波信號(hào)。因此在PTA7端口輸入不同的數(shù)據(jù)編碼,通過(guò)該發(fā)送電路,在發(fā)射器上會(huì)出現(xiàn)具有一定間隔的38 kHz載波信號(hào),經(jīng)發(fā)射器將該載波信號(hào)轉(zhuǎn)化成光信號(hào)發(fā)射出去。載波脈沖調(diào)制信號(hào)的時(shí)序圖如圖2所示。

 

500)this.style.width=500;" border="0" />

4.2 接收電路的硬件設(shè)計(jì)

紅外接收電路中使用了HS0038A接收器,HS0038A的內(nèi)部邏輯框圖如圖3所示。

 

500)this.style.width=500;" border="0" />

由此可看出該接收器內(nèi)部實(shí)現(xiàn)了紅外接收、放大、濾波及解調(diào)功能,當(dāng)收到紅外載波光信號(hào)時(shí),紅外接收器輸出低電平,反之紅外接收器輸出高電平,從而可以將時(shí)斷時(shí)續(xù)的紅外光信號(hào)調(diào)制成連續(xù)的方波信號(hào),經(jīng)單片機(jī)內(nèi)部處理可以將其轉(zhuǎn)換成原來(lái)的數(shù)據(jù)。

硬件原理圖如圖4所示。

 

500)this.style.width=500;" border="0" />

由于HS0038A內(nèi)置濾波并且采用環(huán)氧塑封,可以作為紅外濾波器,因此電路中不需要另外增加濾波器,并且HS0038A具備較強(qiáng)的抗干擾能力。

紅外接收器輸出引腳RevData連接在TPM2通道0,使用了TPM的輸入捕捉功能,在上升沿時(shí)發(fā)生輸入捕捉,比較兩次捕捉發(fā)生時(shí)通道寄存器TPM2C0V的值,可以得到一個(gè)周期脈沖的寬度,根據(jù)發(fā)射數(shù)據(jù)的時(shí)序圖,就可知道不同的脈沖寬度對(duì)應(yīng)的數(shù)據(jù)是什么,由此就可將原數(shù)據(jù)還原出來(lái)。

5 紅外通信的軟件設(shè)計(jì)

5.1 38 kHz紅外載波設(shè)計(jì)

MC9S08GT60使用了外部4 MHz的晶振頻率,通過(guò)配置ICG1=0x78,ICG2=0x30,將總線頻率控制為20 MHz。MC9S08GF60內(nèi)部有定時(shí)/脈沖輸出模塊,將TPM1的狀態(tài)控制寄存器的位CPWMS置1,則TPM1工作在中心脈寬輸出模式;將TPM1通道0的狀態(tài)控制寄存器的ELS0B:ELS0A設(shè)置為10,控制發(fā)生輸出比較時(shí)將脈沖信號(hào)置高或置低。為使TPM1C1輸出38 kHz頻率的載波信號(hào),就要對(duì)20 MHz的總線頻率進(jìn)行526分頻,即526個(gè)20 MHz的方波周期產(chǎn)生一個(gè)38 kHz的方波周期,因?yàn)槭侵行拿}寬輸出模式,輸出脈沖寬度是通道值寄存器TPM1C1V中值的2倍,輸出脈沖周期是通道預(yù)置寄存器TPM1M0D中值的2倍,因此令TPM1C1V=131,TPM1M0D=263,啟動(dòng)定時(shí)器后,定時(shí)器1的計(jì)數(shù)器TPM1CNTL在自增1計(jì)數(shù)時(shí),當(dāng)該值跟通道值寄存器TPM1C1V中值匹配時(shí),將脈沖輸出信號(hào)拉低,定時(shí)器1的計(jì)數(shù)器TPMlCNTL在計(jì)數(shù)值開(kāi)始進(jìn)行自減1操作時(shí),當(dāng)下降到跟通道寄存器TPMlClV時(shí),將脈沖輸出信號(hào)拉高。中心脈寬輸出的時(shí)序圖如圖5所示。從此通道輸出的方波頻率通過(guò)示波器查看為37.9 kHz或38 kHz。

 

500)this.style.width=500;" border="0" />

5.2 數(shù)據(jù)編碼的設(shè)計(jì)

MC9S08GT60單片機(jī)有36個(gè)端口,大部分端口都具有雙重功能,本文使用端口PTA7,配置該端口的方向寄存器PTADD_PTADD7為1,即PTA7為輸出,根據(jù)脈沖編碼的規(guī)則,進(jìn)行不同的延時(shí)操作,使該端口輸出一定寬度的數(shù)據(jù)脈沖,通過(guò)示波器查看該端口,可看到穩(wěn)定的脈沖序列。

5.3 接收端信號(hào)的輸入捕捉設(shè)計(jì)

將TPM2的狀態(tài)控制寄存器的位CPWMS置0,則TPM2可以工作在輸入捕捉模式、輸出比較模式、邊沿脈沖輸出模式;為使TPM2通道0工作在輸入捕捉方式,需要進(jìn)一步設(shè)置TPM2通道0狀態(tài)控制寄存器,將TPM2C0SC的模式選擇位MS0B:MS0A設(shè)置為00,選擇了輸入捕捉方式,此外,要設(shè)置捕捉發(fā)生在什么條件下,那么需要設(shè)置TPM2COSC中的極性選擇位ELS0B:ELS0A,使其為01,目的是在該引腳出現(xiàn)上升沿時(shí)發(fā)生捕捉。在發(fā)生捕捉時(shí),通道值寄存器會(huì)將定時(shí)寄存器的值進(jìn)行鎖存,因此比較兩次輸入捕捉時(shí),通道值寄存器的內(nèi)容,根據(jù)編碼規(guī)則,可知道該值對(duì)應(yīng)的編碼是‘1’或‘0’。此外通道值寄存器是16位的,如果希望通過(guò)串口調(diào)試窗口查看比較結(jié)果,因?yàn)榇诮邮諗?shù)據(jù)緩沖寄存器是8位的,那么可以將其分解為兩個(gè)8位的數(shù)據(jù)通過(guò)串口發(fā)送。

以下是輸入捕捉的中斷子程序:

程序功能描述:將捕捉的數(shù)據(jù)發(fā)往串口查看,這樣不管用什么發(fā)射器,都可以通過(guò)觀察串口數(shù)據(jù)得到識(shí)別碼,完成不同的功能。

 

500)this.style.width=500;" />

6 結(jié)語(yǔ)

紅外通信一般用在低數(shù)據(jù)速率,并且短距離的場(chǎng)合中,因此需要低功耗的運(yùn)行要求。而Freescale的這款單片機(jī)工作電壓可達(dá)到1.8 V,在單片機(jī)空閑方式下,通過(guò)設(shè)置SOPT和SPMSC兩個(gè)寄存器來(lái)設(shè)計(jì)不同的停止低功耗模式,或者執(zhí)行一條WAIT指令,使單片機(jī)進(jìn)入等待的低功耗模式,這里就不再詳細(xì)講述其實(shí)現(xiàn)過(guò)程。MC9S08GT60單片機(jī)與其他低電壓、低功耗的單片機(jī)不同之處在于,它并非是以犧牲性能為代價(jià)來(lái)?yè)Q取1.8 V的低電壓。因此本文使用該單片機(jī)討論了發(fā)送和接收紅外電路的設(shè)計(jì)過(guò)程及通信協(xié)議的運(yùn)用,該系統(tǒng)的設(shè)計(jì)切實(shí)可行,對(duì)紅外控制開(kāi)發(fā)者有一定的幫助。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話(huà)語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉