<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于單片機(jī)的簡(jiǎn)易紅外遙控密碼鎖設(shè)計(jì)與實(shí)現(xiàn)

          基于單片機(jī)的簡(jiǎn)易紅外遙控密碼鎖設(shè)計(jì)與實(shí)現(xiàn)

          作者: 時(shí)間:2012-12-10 來源:網(wǎng)絡(luò) 收藏

          2 系統(tǒng)軟件

          軟件部分的匯編語(yǔ)言,采用模塊化思想,以主程序?yàn)楹诵脑O(shè)置了多個(gè)功能模塊子程序。主程序主要起到一個(gè)導(dǎo)向和決策功能,決定什么時(shí)候系統(tǒng)該做什么,系統(tǒng)的各種功能主要是通過調(diào)用具體的子程序來。

          2.1 發(fā)射模塊程序的設(shè)計(jì)

          發(fā)射模塊的編碼與調(diào)制工作是由軟件編程的。當(dāng)按鍵K按下時(shí),密碼信號(hào)依次送往數(shù)據(jù)緩沖器SBUF,然后利用“0”電平調(diào)制、“1”電平不調(diào)制的方法,將二進(jìn)制信號(hào)調(diào)制成頻率為38.5 kHz的間斷脈沖串信號(hào),通過P3.O口輸出,驅(qū)動(dòng)發(fā)光二極管,最后以波長(zhǎng)940 nm的光發(fā)出紅外信號(hào)。紅外發(fā)射模塊程序流程圖如圖6所示。

          38.5 kHz已調(diào)波的實(shí)現(xiàn)是依據(jù)匯編語(yǔ)言具有嚴(yán)格的指令周期來實(shí)現(xiàn)的,低電平與高電平均持續(xù)13個(gè)機(jī)器周期,這里采用的時(shí)鐘晶振是12 MHz,所以產(chǎn)生的調(diào)制波的精確頻率為38.46 kHz。

          2.2 本機(jī)接收處理模塊程序的設(shè)計(jì)

          本機(jī)處理部分可以實(shí)現(xiàn)密碼設(shè)置和修改、本機(jī)按鍵*、按鍵提示、密碼錯(cuò)誤報(bào)警、超次提示、*和按鍵之間超過3 s自動(dòng)復(fù)位等所有的功能。本機(jī)處理的主程序流程圖如圖7所示。

          2.2.1 密碼設(shè)置子程序的設(shè)計(jì)

          系統(tǒng)只有內(nèi)部上電復(fù)位的時(shí)候才能設(shè)置或者修改密碼。當(dāng)系統(tǒng)復(fù)位時(shí),即進(jìn)入了等待用戶按鍵設(shè)置新密碼狀態(tài),用戶輸入的8位密碼依次保存在RAM存儲(chǔ)單元的41H~48H單元。當(dāng)8位密碼設(shè)置完成后,蜂鳴器鳴響1 s提示密碼已成功設(shè)置。當(dāng)按鍵*時(shí),輸入的密碼依次和RAM存儲(chǔ)器中41H~48H單元的數(shù)相比較,只要有1位不相同,門鎖不但不能打開,而且還發(fā)出報(bào)警信號(hào)。

          2.2.2 按鍵間隔超時(shí)的判斷及復(fù)位

          前文提到了當(dāng)按鍵間隔超過3 s有自動(dòng)復(fù)位的功能,設(shè)置密碼和按鍵*時(shí)分別采用定時(shí)器T0和T1來實(shí)現(xiàn)。兩定時(shí)器均設(shè)為50 ms定時(shí)中斷,連續(xù)產(chǎn)生60次中斷的時(shí)間是3 s。當(dāng)確實(shí)有鍵按下并彈起時(shí),打開相應(yīng)定時(shí)器中斷并允許其計(jì)數(shù)。假如在下一按鍵按下時(shí),發(fā)生定時(shí)中斷還不到60次,則定時(shí)器停止計(jì)數(shù)并重設(shè)計(jì)數(shù)初值及定時(shí)中斷次數(shù);如果在下一按鍵按下之前,定時(shí)器已發(fā)生60次中斷,表示3 s已到,則系統(tǒng)自動(dòng)進(jìn)行軟件復(fù)位。設(shè)置密碼時(shí)按鍵間隔超時(shí)的復(fù)位程序代碼如下:

          以上程序當(dāng)執(zhí)行完RETI指令后,PC指針指向0000H,程序從地址0000H處開始執(zhí)行,即實(shí)現(xiàn)了軟件復(fù)位。

          當(dāng)鍵盤*時(shí),如果按鍵間隔超過3 s,這時(shí)的程序“復(fù)位”并不是從地址0000H處執(zhí)行,而是回到“密碼設(shè)置結(jié)束提示音”后的那一條指令處開始執(zhí)行,利用單步執(zhí)行指令的方法得到了此條指令的地址:0FC00H。

          3 結(jié)語(yǔ)

          該設(shè)計(jì)的亮點(diǎn)在于沒有擴(kuò)展任何E2PROM的情況下,實(shí)現(xiàn)了任意修改密碼的功能,且采用軟件復(fù)位的方法取消無(wú)效按鍵。通過對(duì)本系統(tǒng)設(shè)置密碼、鍵盤*、紅外*等各方面的情況進(jìn)


          上一頁(yè) 1 2 3 下一頁(yè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();