紅外遙控芯片BA5104的軟件解碼方法探討
3.2 遙控碼“0”和遙控碼“1”的提取
根據(jù)BA5104芯片的編碼格式,當(dāng)保存在數(shù)據(jù)緩沖區(qū)中的數(shù)值為1/4T=1/4×1.687 9ms≈422μs時(shí),判定為接收到遙控碼“0”;當(dāng)數(shù)據(jù)緩沖區(qū)中的數(shù)值為3/4T=3/4x1.687 9 ms≈126 6μ時(shí),判定為接收到遙控碼“1”。在實(shí)際應(yīng)用中,由于單片機(jī)和紅外遙控發(fā)射器所使用的晶振頻率與標(biāo)稱值有一定的偏差,所以在編寫程序時(shí)要留有一定的容限誤差。提取12位遙控碼的子程序如下:
4 測試結(jié)果與分析
測試條件:AVR單片機(jī)ATmega16外接晶振為8 MHz,系統(tǒng)內(nèi)部進(jìn)行8分頻。經(jīng)過實(shí)驗(yàn),用外部中斷法和輸入捕獲功能法均能測出接收脈沖下降沿到上升沿的時(shí)間間隔。表1為測試所得的結(jié)果。在實(shí)驗(yàn)中發(fā)現(xiàn),用外部中斷法測得的第一幀遙控碼的第1位(即S2)比較容易受到外界的干擾,造成解碼偶爾會(huì)出現(xiàn)錯(cuò)誤。而用輸入捕獲功能法進(jìn)行解碼極少出現(xiàn)錯(cuò)誤,主要是因?yàn)锳Tmega16工作在輸入捕獲模式并打開噪音消除功能時(shí),單片機(jī)以時(shí)鐘頻率連續(xù)4次采樣ICP1引腳,當(dāng)4次采樣數(shù)據(jù)相同時(shí),才認(rèn)為輸入捕獲信號(hào)有效,具有較強(qiáng)的抗干擾能力。外部中斷法要占用單片機(jī)的一個(gè)外部中斷源和內(nèi)部的一個(gè)定時(shí)器,而輸入捕獲功能法僅占用單片機(jī)內(nèi)部的一個(gè)定時(shí)器。由此可見輸入捕獲功能解碼法明顯優(yōu)于外部中斷解碼法。本文引用地址:http://www.ex-cimer.com/article/170619.htm
5 結(jié)束語
用AVR單片機(jī)進(jìn)行軟件解碼紅外遙控芯片BA5104的2種方法均已在實(shí)際電路中得到驗(yàn)證。經(jīng)過分析和比較,得出輸入捕獲功能解碼法優(yōu)于外部中斷解碼法的結(jié)論。文中介紹的2種解碼方法只是針對(duì)以BA5104芯片組成的遙控器,對(duì)于其它不同編碼格式的遙控器,解碼的思路是相同的,只須根據(jù)實(shí)際遙控器的編碼格式將程序中的一些參數(shù)修改即可,不用更換接收電路,非常方便。
評(píng)論