一類基于軟件載波的學(xué)習(xí)型遙控器的設(shè)計與實現(xiàn)
在設(shè)計中采用計數(shù)器對信號高低電平計時的方法來采集數(shù)據(jù)并保存。當(dāng)系統(tǒng)識別到起始碼的低電平時,系統(tǒng)啟動設(shè)計的采集信號對低電平進行采集,同時計數(shù)器開始計數(shù),當(dāng)起始碼的低電平結(jié)束時,并保存計數(shù)器此時的值,記錄下起始碼的低電平信號脈沖寬度值。然后依次保存采集到的編碼信號脈沖寬度值,如果采集到編碼信號位數(shù)大于設(shè)定值M(程序中設(shè)定值),就認為編碼采集已經(jīng)結(jié)束,學(xué)習(xí)子程序結(jié)束,如圖3所示:本文引用地址:http://butianyuan.cn/article/166997.htm
2.3 紅外遙控信號的發(fā)射
由軟件實現(xiàn)遙控信號的載波合成,用定時中斷0產(chǎn)生38 kHz的載波信號,用學(xué)習(xí)到的遙控編碼信號的低電平去控制載波的輸出,此時定時器O定時長度由相應(yīng)的遙控信號低電平寬度計數(shù)值確定,即如果需發(fā)射的遙控信號為高電平時,關(guān)定時中斷O;如果為低電平,則開定時中斷0。輸出38 kHz載波信號到紅外發(fā)射控制腳(P3.7),從而實現(xiàn)遙控信號的脈寬調(diào)制發(fā)射。不考慮紅外信號的編碼方式,只采集其高低電平寬度的方法,如圖4所示。發(fā)射時并不需要用到38 kHz載波電路,而是采用以單片機的定時器TO產(chǎn)生載波,程序代碼如下所示:
3 結(jié) 語
該次設(shè)計中紅外遙控器,可以準確采集到紅外編碼脈沖信號,并將原始的紅外編碼信號保存,發(fā)送,能成功學(xué)習(xí)各種不同家用紅外遙控器,對各種家用紅外遙控器進行控制,解決了家庭用戶眾多遙控器的煩勞。
評論