基于紅外模塊的單片機(jī)電子密碼鎖安全性論證
4.3 遙控模塊電路設(shè)計
當(dāng)鍵盤有鍵按下時,編碼芯片激活,發(fā)送相應(yīng)紅外編碼信號。由遙控器發(fā)送的紅外信號,經(jīng)過紅外一體化接收頭接收、放大、解調(diào)之后,將信號送到單片機(jī)P3.2引腳。本文引用地址:http://2s4d.com/article/171922.htm
5 遙控模塊軟件的安全性設(shè)計方案
(1)HS0038的解調(diào)。一體化紅外接收頭HS0038將接收到的紅外信號放大、解調(diào)才送給單片機(jī)的。接收頭接收到的是38 kHz的串行脈沖信號,經(jīng)過解調(diào)之后轉(zhuǎn)換成TTL電平。接收頭的解調(diào)可簡單理解為:在輸入脈沖串時輸出低電平,否則輸出高電平。一體化紅外接收頭解調(diào)前后的信號對比如圖10所示,可見解調(diào)后信號與編碼信號反相。
當(dāng)按鍵按下后,經(jīng)過HS0038解調(diào)輸出的一幀信號則如圖11所示。
(2)解碼。
7461產(chǎn)生的遙控編碼是連續(xù)的42位二進(jìn)制碼組,其中前26位為用戶識別碼,能區(qū)別不同的紅外遙控設(shè)備,防止不同機(jī)種遙控碼互相干擾。后16位為8位的操作碼和8位的操作反碼用于核對數(shù)據(jù)是否接收準(zhǔn)確。
單片機(jī)解碼是根據(jù)一體化紅外接收頭的解調(diào)信號進(jìn)行的,從上面的分析可知:任意按鍵按下后,都有9 ms的低電平起始碼和4.5 ms的高電平結(jié)果碼作為引導(dǎo)信號,因此應(yīng)該在引導(dǎo)碼之后才能進(jìn)行解碼。
如何識別“0”和“1”是解碼的關(guān)鍵。根據(jù)位定義:“0”、“1”均以0.56 ms的低電平作為起始,兩者區(qū)別在于高電平的寬度不同,即“0”高電平為0.56 ms,“1”高電平為1.68 ms,因此解碼時須根據(jù)高電平的寬度來區(qū)別“0”和“1”。若從0.56 ms低電平過后,開始延時,0.56 ms之后,檢測到的為低電平,則該位為“0”,反之則為“1”。為了保證解碼的可靠性,高電平檢測延時應(yīng)該在0.56~1.12ms,否則如果該位為“0”,讀到的已是下一位的高電平,因此取(1.12+0.56)/2=0.84ms較可靠,一般取0.84ms即可。
評論