版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 摘 要</b></p><p> 單片機(jī)遙控系統(tǒng)是將紅外遙控技術(shù)和單片機(jī)應(yīng)用技術(shù)相結(jié)合的一種方案。本系統(tǒng)為紅外遙控電子密碼鎖的控制管理部分,只要再連接上不同用途的電磁鎖即可成為一個(gè)完整的紅外遙控電子密碼鎖系統(tǒng)應(yīng)用到各種領(lǐng)域中。而且本系統(tǒng)還設(shè)計(jì)有學(xué)習(xí)NEC紅外編碼遙控器的功能,通過(guò)紅外接收解碼電路,把遙控器的鍵碼還原并儲(chǔ)存起來(lái),再利用查找對(duì)比的方法便能夠識(shí)
2、別不同的遙控器,大大提高了系統(tǒng)的靈活性和實(shí)用性。</p><p> 本系統(tǒng)以單片機(jī)作為核心元件將電子密碼鎖和無(wú)線遙控技術(shù)結(jié)合起來(lái),使其具有修改密碼、報(bào)警鎖定等功能,不僅能進(jìn)行遠(yuǎn)距離遙控解鎖,還能實(shí)現(xiàn)近距離按鍵密碼初始化及復(fù)位解除報(bào)警。同時(shí)采用E2PROM作為存儲(chǔ)單元,方便用戶存儲(chǔ)、修改密碼和遙控器鍵碼;采用LCD顯示令使用更加方便直觀。紅外線遙控電子密碼鎖能實(shí)現(xiàn)多種控制功能,改善了傳統(tǒng)機(jī)械鎖的各種缺點(diǎn),有較好的
3、市場(chǎng)發(fā)展前景和技術(shù)應(yīng)用價(jià)值。而且本系統(tǒng)的紅外接收解碼部分延時(shí)計(jì)數(shù)準(zhǔn)確,并且有錯(cuò)誤校驗(yàn),所以整個(gè)接收解碼的準(zhǔn)確性非常高。</p><p> 設(shè)計(jì)電路主要由紅外線解碼學(xué)習(xí)電路、密碼修改和存儲(chǔ)電路、聲光提示報(bào)警電路、LCD顯示電路組成。系統(tǒng)能完成輸入密碼開(kāi)鎖、出錯(cuò)報(bào)警、超次鎖定、修改用戶密碼等基本的密碼鎖的功能,并且還能實(shí)現(xiàn)遠(yuǎn)距離遙控、按鍵密碼初始化、掉電存儲(chǔ)、聲光提示、遙控器學(xué)習(xí)識(shí)別等附加功能。</p>
4、<p> 關(guān)鍵詞:電子密碼鎖 紅外遙控 單片機(jī) NEC編碼 遙控器學(xué)習(xí)</p><p><b> 目 錄</b></p><p> 1 設(shè)計(jì)目的意義 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5、 . . . . . . 4</p><p> 2 在線編程電路和實(shí)物圖. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5</p><p> 2.1在線編程電路. . . . . . . . . . . . . . . . . . . . . . .
6、. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5</p><p> 2.2實(shí)物圖. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5</p><
7、;p> 3 設(shè)計(jì)方案. . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12</p><p> 3.1發(fā)射模塊的方案. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8、 . . . . . . . . . . . . . . . . . . . . .12</p><p> 3.2接收模塊的方案. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12</p><p> 4硬件分析及設(shè)計(jì). . . . . .
9、 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12</p><p> 4.1發(fā)射模塊原理. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10、. . . . .12</p><p> 4.1.1紅外發(fā)送系統(tǒng)原理. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12</p><p> 4.1.2 NEC編碼格式介紹. . . . . . . . . . . . . . . . . . . . .
11、. . . . . . . . . . . . . . . . . . . . . . . . .12</p><p> 4.2接收模塊原理. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14</p><p> 4.2.1接收解碼
12、原理. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14</p><p> 4.2.2該模塊的硬件電路. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13、 . . . . .14</p><p> 4.3存儲(chǔ)模塊原理. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14</p><p> 4.4液晶顯示模塊原理. . . . . . . . . . . . . . . . . . .
14、 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15</p><p> 5 軟件設(shè)計(jì). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15</p><
15、;p> 5.1編程語(yǔ)言. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13</p><p> 5.2主要程序說(shuō)明及流程圖.. . . . . . . . . . . . . . . . . . . . . . . . . . . .
16、 . . . . . . . . . . . . . . .13</p><p> 5.2.1主程序. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13</p><p> 5.2.2接收解碼程序. . . . .
17、. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14</p><p> 5.2.3密碼判斷、報(bào)警及修改程序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13</p>&
18、lt;p> 5.2.4主函數(shù). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13</p><p> 6功能分析及總結(jié). . . . . . . . . . . . . . . . . . . . . . . . . . . . .
19、. . . . . . . . . . . . . . . . . . . . . . .13</p><p> 7具體操作流程. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13</p><p> 參考文獻(xiàn). . . .
20、 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16</p><p> 附錄. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21、. . . . . . . . . . . . . . . . . . . . . . 16</p><p><b> 1 設(shè)計(jì)目的意義</b></p><p> 隨著人們生活水平的提高,如何實(shí)現(xiàn)家庭防盜這一問(wèn)題也變得尤其重要。目前國(guó)內(nèi),大部分人使用的還是傳統(tǒng)的機(jī)械鎖。傳統(tǒng)的機(jī)械鎖由于其構(gòu)造的簡(jiǎn)單,被撬的事件屢見(jiàn)不鮮。即使是一把質(zhì)量過(guò)關(guān)的機(jī)械鎖,通過(guò)急開(kāi)鎖,甚至可
22、以在不損壞鎖的前提下將鎖打開(kāi)。而且,在日常的生活和工作中,若使用傳統(tǒng)的機(jī)械式鑰匙開(kāi)鎖,人們常需攜帶多把鑰匙,使用極不方便,且鑰匙丟失后安全性即大打折扣。為此,本系統(tǒng)試著設(shè)計(jì)具有防盜報(bào)警功能的紅外線遙控電子密碼鎖來(lái)代替?zhèn)鹘y(tǒng)的機(jī)械式密碼鎖,克服了機(jī)械式密碼鎖密碼量少、安全性能差的缺點(diǎn)。而且還添加了紅外遙控、遙控器學(xué)習(xí)識(shí)別和LCD顯示等功能,可以實(shí)現(xiàn)遠(yuǎn)距離開(kāi)關(guān)鎖、修改密碼等,系統(tǒng)靈活性強(qiáng),操作簡(jiǎn)單直觀、使用非常方便。由于這是一次學(xué)生的實(shí)習(xí)項(xiàng)目
23、,本產(chǎn)品未必能盡善盡美,但基本的要求還是可以滿足。</p><p> 2 在線編程電路和實(shí)物圖</p><p> 2.1在線編程電路(詳見(jiàn)附錄1)</p><p><b> 2.2實(shí)物圖</b></p><p><b> 圖1 實(shí)物圖</b></p><p><
24、b> 3 設(shè)計(jì)方案</b></p><p> 3.1 發(fā)射模塊的方案</p><p> 使用NEC編碼格式紅外線遙控編碼芯片uPD6122G等作為主芯片再加上外圍電路完成發(fā)射部分,或直接購(gòu)買(mǎi)紅外線遙控編碼芯片的遙控器成品作為系統(tǒng)的發(fā)射部分。因?yàn)槭羌t外線遙控編碼專(zhuān)用芯片,其內(nèi)部已經(jīng)集成了按鍵檢測(cè)、處理和紅外編碼模塊。而且無(wú)須編程,使用十分方便。故市面上的絕大多數(shù)的紅外
25、遙控器都是使用類(lèi)似的方案,可見(jiàn)這方面的技術(shù)已經(jīng)相當(dāng)成熟。在抗干擾能力上,因?yàn)闆](méi)有涉及到軟件,故其抗干擾能力強(qiáng)。</p><p> 3.2 接收模塊的方案</p><p> 發(fā)射模塊使用型號(hào)為HZ-FT007的20鍵車(chē)載MP3紅外遙控器和創(chuàng)維RC-585型DVD遙控器,因?yàn)樗鼈兌际遣捎肗EC編碼格式的紅外遙控芯片作為主要芯片;使用一體化紅外接收頭SM0038和單片機(jī)STC89C52RC結(jié)
26、合的方式完成接收解碼模塊,學(xué)習(xí)識(shí)別NEC編碼格式的不同遙控器;使用單片機(jī)內(nèi)部eeprom作為存儲(chǔ)模塊;使用LCD1602A實(shí)現(xiàn)系統(tǒng)的顯示模塊。系統(tǒng)的總框圖如圖3所示。這樣的選擇使系統(tǒng)在較低成本的情況下較好地實(shí)現(xiàn)系統(tǒng)的功能,而且系統(tǒng)有著較高的抗干擾性和穩(wěn)定性。</p><p> 圖2 選用方案系統(tǒng)框圖</p><p><b> 4硬件分析及設(shè)計(jì)</b></p&
27、gt;<p> 4.1 發(fā)射模塊原理</p><p> 4.1.1紅外發(fā)送系統(tǒng)原理</p><p> 紅外遙控信號(hào)是一連串的二進(jìn)制脈沖碼。為了使其在無(wú)線傳輸過(guò)程中免受其他紅外信號(hào)的干擾,通常都是先將其調(diào)制在特定的載波頻率上,然后再經(jīng)紅外發(fā)光二極管發(fā)射出去,紅外線接收裝置則會(huì)濾除其它雜波只接收該特定頻率的信號(hào)并將其還原成二進(jìn)制脈沖碼。在本紅外遙控系統(tǒng)中,紅外信號(hào)的載波頻率
28、為38KHz。</p><p> 通常,紅外遙控系統(tǒng)中所采用的編碼方式有兩種:通過(guò)脈沖寬度來(lái)實(shí)現(xiàn)信號(hào)調(diào)制的脈寬調(diào)制(PWM)和通過(guò)脈沖串之間的時(shí)間間隔來(lái)實(shí)現(xiàn)信號(hào)調(diào)制的脈時(shí)調(diào)制(PPM)。本系統(tǒng)是采用PPM方法,即用兩個(gè)脈沖之間的時(shí)間間隔來(lái)表示二進(jìn)制信息。</p><p> 為了確保發(fā)送端和接收端之間數(shù)據(jù)傳輸?shù)臏?zhǔn)確無(wú)誤,紅外線信號(hào)還要按照特定的傳輸協(xié)議來(lái)進(jìn)行信號(hào)傳輸。常用的紅外線信號(hào)傳輸
29、協(xié)議有NEC協(xié)議、RC-5協(xié)議、RC-6協(xié)議、Sharp協(xié)議等。</p><p> 4.1.2 NEC編碼格式介紹</p><p> 本系統(tǒng)使用的型號(hào)為HZ-FT007的20鍵車(chē)載MP3紅外遙控器和創(chuàng)維RC-585型DVD遙控器請(qǐng)參看附錄2中的實(shí)物圖,它們主要芯片都是NEC編碼格式的紅外遙控芯片。NEC編碼廣泛應(yīng)用于電視機(jī),DVD,PC電腦,音響等,是比較常用的一種紅外編碼格式。<
30、;/p><p> 下面以NEC編碼標(biāo)準(zhǔn)的紅外編碼芯片uPD6122G作為例子介紹。NEC遙控編碼是連續(xù)的32位二進(jìn)制碼組,其中的前十六位是用戶碼,后16位為8位的數(shù)據(jù)碼及其反碼。在每次編碼之前還會(huì)發(fā)送9ms高電平和4.5ms低電平組成的引導(dǎo)碼(或稱起始碼)。而且第二段的用戶碼也可以在遙控應(yīng)用電路中被設(shè)置為第一段用戶碼的反碼。它的幀結(jié)構(gòu)如下圖所示。</p><p><b> 圖3
31、幀結(jié)構(gòu)</b></p><p> NEC編碼標(biāo)準(zhǔn)是以用不同脈沖的時(shí)間間隔來(lái)區(qū)分‘0’和‘1’的,uPD6122G以脈寬為0.56ms、間隔0.565ms、周期為1.125ms的組合表示二進(jìn)制的‘0’;以脈寬為0.56ms、間隔1.69ms,周期為2.25ms的組合表示二進(jìn)制的‘1’。其波形如下圖所示。</p><p><b> 圖4 脈沖波形圖</b>
32、</p><p> 使用455KHz晶振時(shí)各代碼所占的時(shí)間如下圖所示:</p><p> 圖5 晶振時(shí)各代碼所占時(shí)間</p><p> uPD6122G按鍵輸出有兩種方式:一種是每次按鍵都輸出完整的一幀數(shù)據(jù);另一種是按下按鍵不松開(kāi)時(shí),發(fā)送完整的一幀數(shù)據(jù)后再發(fā)送重復(fù)碼,直到按鍵被松開(kāi)。其波形如下圖所示。</p><p><b>
33、 圖6 按鍵輸出波形</b></p><p><b> 4.2接收模塊原理</b></p><p> 4.2.1接收解碼原理</p><p> 接收解碼的關(guān)鍵是如何識(shí)別‘0’和‘1’,本系統(tǒng)使用的是一體化紅外接收頭進(jìn)行紅外信號(hào)接收,在沒(méi)有信號(hào)的時(shí)候其輸出端是高電平,而有信號(hào)的時(shí)候是低電平,所以其輸出信號(hào)電平正好和遙控發(fā)射端相
34、反。從上面的討論可以發(fā)現(xiàn)在遙控發(fā)射端‘0’和‘1’均以0.56ms的高電平開(kāi)始,不同的是低電平的寬度,‘0’為0.565ms,‘1’為1.69ms,所以必須根據(jù)低電平的寬度區(qū)別‘0’和‘1’。本系統(tǒng)用中斷的方式實(shí)現(xiàn)從接收頭到MCU的信號(hào)傳輸。如圖9所示,紅外接收頭的輸出端連接到單片機(jī)的INT0腳。接收頭輸出端有低電平信號(hào)輸出時(shí)引起單片機(jī)的中斷。單片機(jī)響應(yīng)中斷并進(jìn)行信號(hào)的接收解碼。解碼后的信號(hào)就變成相應(yīng)的遙控器按鍵代碼,從而可以成為密碼鎖
35、的密碼。</p><p> 圖7 中斷接收示意圖</p><p> 4.2.2該模塊的硬件電路</p><p> 接收解碼電路由一體化紅外接收頭SM0038和單片機(jī)STC89C52RC組成。 </p><p> STC系列單片機(jī)具有在系統(tǒng)中直接可編程特性,其好處是:省去購(gòu)買(mǎi)通用編程器,單片機(jī)在用戶系統(tǒng)上即可下載/燒錄用戶程序,而無(wú)須將
36、單片機(jī)從已生產(chǎn)好的產(chǎn)品上拆下,再用通用編程器將程序代碼燒錄進(jìn)單片機(jī)內(nèi)部。有些程序尚未定型的產(chǎn)品可以一邊生產(chǎn),一邊完善,加快了產(chǎn)品進(jìn)入市場(chǎng)的速度,減小了新產(chǎn)品由于軟件缺陷帶來(lái)的風(fēng)險(xiǎn)。由于可以在用戶的目標(biāo)系統(tǒng)上將程序直接下載進(jìn)單片機(jī)看運(yùn)行結(jié)果對(duì)錯(cuò),故無(wú)須仿真器,因此選擇使用這款單片機(jī)。</p><p> 一體化紅外接收頭SM0038是集信號(hào)放大、濾波、檢波、整形于一體的紅外接收器,電路內(nèi)置PIN二極管和前置放大器,
37、采用可以紅外濾波的環(huán)氧樹(shù)脂材料封裝,可靠性高,不易受環(huán)境影響并可以防止非控制信號(hào)的輸出脈沖出現(xiàn)。它的內(nèi)部電路如圖10所示。</p><p> 圖8 SM0038內(nèi)部結(jié)構(gòu)圖</p><p> SM0038內(nèi)置帶通濾波器、積分器、和自動(dòng)增益控制電路以抑制各種干擾和噪音。數(shù)據(jù)信號(hào)和干擾信號(hào)的主要區(qū)別在于載波頻率、脈沖波長(zhǎng)和工作周期上。所以數(shù)據(jù)信號(hào)應(yīng)該滿足載波信號(hào)的頻率盡量接近帶通濾波器的中心
38、頻率(38KHZ);脈沖長(zhǎng)度在300us以上;數(shù)據(jù)的編碼類(lèi)型相兼容。而本系統(tǒng)選用的SM0038在這三方面和NEC編碼格式是相配的。</p><p> 4.3 存儲(chǔ)模塊原理</p><p> STC89C51、52內(nèi)部都自帶有2K字節(jié)的EEPROM,54、55和58都自帶有16K字節(jié)的EEPROM,STC單片機(jī)是利用IAP技術(shù)實(shí)現(xiàn)的EEPROM,內(nèi)部Flash擦寫(xiě)次數(shù)可達(dá)100,000
39、次以上,先來(lái)介紹下ISP與IAP的區(qū)別和特點(diǎn)。</p><p> STC單片機(jī)內(nèi)部有幾個(gè)專(zhuān)門(mén)的特殊功能寄存器負(fù)責(zé)管理ISP/IAP功能的,見(jiàn)表1。</p><p> 表1 ISP/IAP相關(guān)寄存器列表</p><p> ISP_DATA:ISP/IAP操作時(shí)的數(shù)據(jù)寄存器。</p><p> ISP/IAP從Flash讀出的數(shù)據(jù)放在此處
40、,向Flash寫(xiě)入的數(shù)據(jù)也需放在此處。</p><p> ISP_ADDRH:ISP/IAP操作時(shí)的地址寄存器高八位。</p><p> ISP_ADDRL:ISP/IAP操作時(shí)的地址寄存器低八位。</p><p> ISP_CMD:ISP/IAP操作時(shí)的命令模式寄存器,須命令觸發(fā)寄存器觸發(fā)方可生效。命令模式如表2所示。</p><p>
41、; 表2 ISP_CMD寄存器模式設(shè)置</p><p> 程序在系統(tǒng)ISP程序區(qū)時(shí)可以對(duì)用戶應(yīng)用程序區(qū)/數(shù)據(jù)Flash區(qū)(EEPROM)進(jìn)行字節(jié)讀/字節(jié)編程/扇區(qū)擦除;程序在用戶應(yīng)用程序區(qū)時(shí),僅可以對(duì)數(shù)據(jù)Flash區(qū)(EEPROM)進(jìn)行字節(jié)讀/字節(jié)編程/扇區(qū)擦除。STC89C51RC/RD+系列單片機(jī)出廠時(shí)已經(jīng)固化有ISP引導(dǎo)碼,并設(shè)置為上電復(fù)位進(jìn)入ISP程序區(qū),并且出廠時(shí)就已完全加密。</p>
42、<p> ISP_TRIG:ISP/IAP操作時(shí)的命令觸發(fā)寄存器。</p><p> 在ISPEN(ISP_CONTR.7) =1時(shí),對(duì)ISP_TRIG 先寫(xiě)入46h,再寫(xiě)入B9h,ISP/IAP命令才會(huì)生效。</p><p> STC89C52RC,STC89LE52RC單片機(jī)內(nèi)部可用Data Flash(EEPROM)的地址如表3所示,其它型號(hào)單片機(jī)請(qǐng)查閱相關(guān)資料。&
43、lt;/p><p> 表3 STC89C52RC、STC89LE52RC單片機(jī)內(nèi)部EEPROM地址表</p><p> 每個(gè)扇區(qū)為512字節(jié),建議大家在寫(xiě)程序時(shí),將同一次修改的數(shù)據(jù)放在同一個(gè)扇區(qū), 方便修改,因?yàn)樵趫?zhí)行擦除命令時(shí),一次最少要擦除一個(gè)扇區(qū)的數(shù)據(jù),每次在更新數(shù)據(jù)前都必須要擦除原數(shù)據(jù)方可重新寫(xiě)入新數(shù)據(jù),不能直接在原來(lái)數(shù)據(jù)基礎(chǔ)上更新內(nèi)容。</p><p
44、> 4.4 液晶顯示模塊原理</p><p> 系統(tǒng)中采用LCD1602作為顯示器件輸出信息。與傳統(tǒng)的LED數(shù)碼管顯示器件相比,液晶顯示模塊具有體積小、功耗低、顯示內(nèi)容豐富等優(yōu)點(diǎn),而且不需要外加驅(qū)動(dòng)電路,現(xiàn)在液晶顯示模塊已經(jīng)是單片機(jī)應(yīng)用設(shè)計(jì)中最常用的顯示器件了。LCD1602可以顯示2行×16個(gè)字符,具有8位數(shù)據(jù)總線D0-D7,和RS、R/W、E三個(gè)控制端口,工作電壓為5V,并且?guī)в凶址麑?duì)比度
45、調(diào)節(jié)和背光設(shè)置。LCD1602與單片機(jī)的連接電路圖參考附錄3。</p><p> 其管腳功能簡(jiǎn)介如下:</p><p> VL:LCD對(duì)比度調(diào)節(jié)端,電壓調(diào)節(jié)范圍為0-5V。接正電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高,可以用一個(gè)10K的電位器來(lái)調(diào)整對(duì)比度;</p><p> RS:數(shù)據(jù)或者指令選擇端。處理器寫(xiě)入指令時(shí),RS為低電平,寫(xiě)入數(shù)據(jù)時(shí),RS為高電平;&l
46、t;/p><p> R/W:讀寫(xiě)控制端。R/W為高電平時(shí),讀取數(shù)據(jù);R/W為低電平時(shí),寫(xiě)入數(shù)據(jù);</p><p> E:LCD模塊使能信號(hào)控制端。寫(xiě)數(shù)據(jù)時(shí),需要下降沿觸發(fā)模塊;</p><p> D0-D7:8位數(shù)據(jù)總線,三態(tài)雙向;</p><p> BLA: LED背光正極。需要背光時(shí),BLA串接一個(gè)限流電阻接VCC;</p>
47、;<p> BLK: LED背光負(fù)極。</p><p><b> 5軟件設(shè)計(jì)</b></p><p><b> 5.1 編程語(yǔ)言</b></p><p> 目前,對(duì)單片機(jī)的編程主要采用匯編和C語(yǔ)言。匯編語(yǔ)言有執(zhí)行效率高、速度快、與硬件結(jié)合緊密等特點(diǎn)。尤其在進(jìn)行I/O端口管理時(shí),使用匯編語(yǔ)言有快捷、直觀
48、的優(yōu)點(diǎn)。但是使用匯編語(yǔ)言相對(duì)于使用高級(jí)語(yǔ)言編程難度要大一些,且程序可讀性低,開(kāi)放性差,從系統(tǒng)開(kāi)發(fā)時(shí)間來(lái)看,效率不是很高。</p><p> C語(yǔ)言是一種結(jié)構(gòu)化語(yǔ)言,可產(chǎn)生緊湊代碼。C語(yǔ)言可以用許多機(jī)器級(jí)函數(shù)直接控制操作8051硬件。與匯編語(yǔ)言相比,C語(yǔ)言有如下的優(yōu)點(diǎn):</p><p> 不要求了解單片機(jī)的指令系統(tǒng),僅要求對(duì)8051的存儲(chǔ)結(jié)構(gòu)有初步了解;</p><p
49、> 寄存器分配,不同存儲(chǔ)器的尋址及數(shù)據(jù)類(lèi)型等細(xì)節(jié)可由編譯器管理;</p><p> 程序有規(guī)范的結(jié)構(gòu),可分為不同的函數(shù),這種方式可使程序結(jié)構(gòu)化;</p><p> 具有將可變的選擇與特殊操作組合在一起的能力,改善了程序的可讀性;</p><p> 關(guān)鍵字及運(yùn)算符可用近似人的思維方式使用;</p><p> 編程及程序調(diào)試時(shí)間顯
50、著縮短,從而提高效率;</p><p> 提供的庫(kù)包含許多標(biāo)準(zhǔn)子程序,具有較強(qiáng)的數(shù)據(jù)處理能力;</p><p> 已編好的程序可容易地植入新程序,因?yàn)樗哂蟹奖愕哪K化編程技術(shù)。</p><p> 當(dāng)然,采用混編模式,就能結(jié)合兩者的優(yōu)點(diǎn)。本著學(xué)習(xí)的目的,本系統(tǒng)均采用C51語(yǔ)言編寫(xiě)。</p><p> 5.2 主要程序說(shuō)明及流程圖<
51、;/p><p> 本系統(tǒng)的軟件程序主要包括主程序、接收解碼程序、密碼判斷和報(bào)警程序、密碼修改程序、遙控器學(xué)習(xí)識(shí)別程序幾個(gè)大的模塊程序。</p><p><b> 5.2.1主程序</b></p><p> 主程序首先是初始化程序,然后就等待紅外接收頭輸出端的低電平,低電平出現(xiàn)說(shuō)明遙控有鍵按下,外部中斷設(shè)定為下降沿觸發(fā),故單片機(jī)進(jìn)入中斷服務(wù)程序
52、進(jìn)行信號(hào)的接收解碼。當(dāng)接收到遙控器識(shí)別按鍵時(shí),單片機(jī)查找AT24C02并判斷此遙控器ID是否已存在。當(dāng)ID不存在時(shí),系統(tǒng)進(jìn)入遙控器學(xué)習(xí)模式,保存新ID及其鍵碼;當(dāng)遙控器ID已存在時(shí),系統(tǒng)進(jìn)入密碼輸入界面,并且接收到八位的密碼以后就開(kāi)始運(yùn)行密碼核對(duì)程序,當(dāng)密碼輸入正確后,就可以進(jìn)行開(kāi)鎖、上鎖或修改密碼的操作。當(dāng)密碼輸入錯(cuò)誤的時(shí)候就會(huì)進(jìn)入密碼輸入提醒程序提醒用戶重新輸入密碼,密碼輸入累積到3次時(shí)系統(tǒng)會(huì)報(bào)警并鎖定。</p>&l
53、t;p><b> 圖9主程序流程圖</b></p><p> 5.2.2接收解碼程序</p><p> 紅外接收解碼的關(guān)鍵是如何識(shí)別‘0’和‘1’碼,我的做法是根據(jù)‘0’和‘1’碼的高電平寬度不一樣的特點(diǎn)來(lái)進(jìn)行識(shí)別。接收程序的流程圖如圖10所示。</p><p> 進(jìn)入紅外接收程序后先關(guān)閉中斷。接著的工作是避開(kāi)9ms高電平、4.5
54、ms的低電平的引導(dǎo)碼,并且判斷是否干擾信號(hào)或者重復(fù)信號(hào)。正如前面所說(shuō),一體化紅外接收頭的輸出端電平跟遙控發(fā)射端電平相反。如圖14所示。</p><p> 所以只要遙控有鍵按下單片機(jī)就會(huì)馬上產(chǎn)生中斷接收數(shù)據(jù)。跟在引導(dǎo)碼后面的是32位用戶碼和數(shù)據(jù)碼,也就是我們想要的數(shù)據(jù),單片機(jī)把它接收并保存。當(dāng)接收完8位的數(shù)據(jù)時(shí)要更換另外一個(gè)數(shù)據(jù)緩沖區(qū),當(dāng)32位的鍵碼都接收完的時(shí)候就意味這一幀的數(shù)據(jù)已經(jīng)接收完畢。然后根據(jù)接收到的數(shù)
55、據(jù)碼和數(shù)據(jù)反碼是否對(duì)應(yīng)位相反來(lái)確定接收的這一幀數(shù)據(jù)是否正確,最后退出接收解碼程序。</p><p> 圖10 接收頭前導(dǎo)碼信號(hào)變相圖</p><p> 而單片機(jī)的接收端的‘0’‘1’波形圖如圖15所示。在保存‘0’碼和‘1’碼的時(shí)候還有一個(gè)保存時(shí)機(jī)的問(wèn)題,如果從0.56ms低電平過(guò)后開(kāi)始延時(shí),0.56ms以后若讀到為低電平,說(shuō)明該位為‘0’,反之則為‘1’。為安全起見(jiàn),延時(shí)必須比0.5
56、6ms長(zhǎng)一些,但又不能超過(guò)1.12ms,否則如果該位為‘0’讀到的已是下一位的高電平,因此取( 1.12ms + 0.56ms )/2=0.84ms 較為可靠,一般取0.84ms左右均可。</p><p> 圖11 單片機(jī)接收端的‘0’‘1’波形圖</p><p><b> 接收解碼中斷程序:</b></p><p> void IR_I
57、N() interrupt 0 using 0</p><p><b> {</b></p><p> unsigned char j,k,N=0;</p><p> EX0 = 0; </p><p> delay(15);</p><p> if (IRIN==1) </p
58、><p><b> { EX0 =1;</b></p><p><b> return;</b></p><p> } //確認(rèn)IR信號(hào)出現(xiàn)</p><p> while (!IRIN) //等IR變?yōu)楦唠娖?,跳過(guò)9ms的前導(dǎo)低電平信號(hào)。&l
59、t;/p><p> {delay(1);}</p><p> for (j=0;j<4;j++) //收集四組數(shù)據(jù)</p><p><b> { </b></p><p> for (k=0;k<8;k++) //每組數(shù)據(jù)有8位</p><p><
60、;b> {</b></p><p> while (IRIN) //等 IR 變?yōu)榈碗娖?,跳過(guò)4.5ms的前導(dǎo)高電平信號(hào)。</p><p> {delay(1);}</p><p> while (!IRIN) //等 IR 變?yōu)楦唠娖?lt;/p><p> {delay(1);}</p
61、><p> while (IRIN) //計(jì)算IR高電平時(shí)長(zhǎng)</p><p><b> {</b></p><p><b> delay(1);</b></p><p> N++; </p><p> if (N>=30)&
62、lt;/p><p><b> { EX0=1;</b></p><p> return;} //0.14ms計(jì)數(shù)過(guò)長(zhǎng)自動(dòng)離開(kāi)。</p><p> } //高電平計(jì)數(shù)完畢 </p><p> IRCOM[j]=
63、IRCOM[j] >> 1; //數(shù)據(jù)最高位補(bǔ)“0”</p><p> if (N>=8) {IRCOM[j] = IRCOM[j] | 0x80;} //數(shù)據(jù)最高位補(bǔ)“1”</p><p><b> N=0;</b></p><p> } //end for k</p&g
64、t;<p> } //end for j</p><p> if (IRCOM[2]!=~IRCOM[3])</p><p><b> { EX0=1;</b></p><p><b> return; }</b></p><p> IRCOM[5]=IRCOM[2]
65、 & 0x0F; //取鍵碼的低四位</p><p> IRCOM[6]=IRCOM[2] >> 4; //右移4次,高四位變?yōu)榈退奈?lt;/p><p> if(IRCOM[5]>9)</p><p> { IRCOM[5]=IRCOM[5]+0x37;}</p><p><b>
66、 else</b></p><p> IRCOM[5]=IRCOM[5]+0x30;</p><p> if(IRCOM[6]>9)</p><p> { IRCOM[6]=IRCOM[6]+0x37;}</p><p><b> else</b></p><p> I
67、RCOM[6]=IRCOM[6]+0x30;</p><p><b> LED3=0;</b></p><p><b> beep();</b></p><p><b> LED3=1;</b></p><p> ir_data=IRCOM[2];</p>
68、<p> ir_flag=1; //信號(hào)接收成功標(biāo)志位</p><p><b> EX0 = 1; </b></p><p><b> } </b></p><p> 5.2.3密碼判斷、報(bào)警及修改程序</p><p> 電子密碼鎖的軟件編程主要分為兩方面,分別是接收密
69、碼后判斷及報(bào)警部分和密碼修改控制部分。</p><p> 首先介紹密碼判斷及報(bào)警程序。顯示收到的鍵碼并保存到接收緩存receive_code[8],直到8位鍵碼接收完畢。然后和原密碼緩存origin_code[8]比較,判斷密碼是否正確。若密碼正確則將標(biāo)志位code_right=1;若不正確則報(bào)警并使密碼輸入錯(cuò)誤次數(shù)wrong_num++,再判斷錯(cuò)誤次數(shù)是否已達(dá)3次,若是則程序進(jìn)入死循環(huán)鎖定。程序流程圖所示。&
70、lt;/p><p> 圖12 密碼判斷、報(bào)警大致程序流程</p><p> 接著介紹密碼修改控制程序。當(dāng)密碼輸入正確以后用戶按下“密碼修改鍵”就會(huì)進(jìn)入密碼修改操作,單片機(jī)也就會(huì)運(yùn)行密碼修改程序。</p><p> 圖13 密碼修改流程圖</p><p> 進(jìn)入密碼修改程序首先等待新密碼的第一次輸入。第一次輸入的新密碼放在接收緩存recei
71、ve_code[8]中,當(dāng)輸入完第八個(gè)密碼后系統(tǒng)會(huì)提示再次輸入密碼,第二次輸入的新密碼放在密碼比較緩存com_code[8]中。第二次輸入密碼完成后就檢驗(yàn)兩次輸入的新密碼是否相同,如果相同的話就更換密碼,將新密碼儲(chǔ)存到芯片的eeprom中。</p><p> Eeprom存儲(chǔ)子程序:</p><p> /* ================ 打開(kāi) ISP,IAP 功能 ========
72、========= */</p><p> void ISP_IAP_enable(void)</p><p><b> {</b></p><p> EA = 0; /* 關(guān)中斷 */</p><p> ISP_CONTR = ISP_CONTR & 0x18; /* 000
73、1,1000 */</p><p> ISP_CONTR = ISP_CONTR | WaitTime; /* 寫(xiě)入硬件延時(shí) */</p><p> ISP_CONTR = ISP_CONTR | 0x80; /* ISPEN=1 */</p><p><b> }</b></p><p> /*
74、=============== 關(guān)閉 ISP,IAP 功能 ================== */</p><p> void ISP_IAP_disable(void)</p><p><b> {</b></p><p> ISP_CONTR = ISP_CONTR & 0x7f; /* ISPEN = 0 */</
75、p><p> ISP_TRIG = 0x00;</p><p> EA = 1; /* 開(kāi)中斷 */</p><p><b> }</b></p><p> /* ================ 公用的觸發(fā)代碼 ==================== */</p><p>
76、void ISPgoon(void)</p><p><b> {</b></p><p> ISP_IAP_enable(); /* 打開(kāi) ISP,IAP 功能 */</p><p> ISP_TRIG = 0x46; /* 觸發(fā)ISP_IAP命令字節(jié)1 */</p><p> ISP_TRIG = 0x
77、b9; /* 觸發(fā)ISP_IAP命令字節(jié)2 */</p><p><b> _nop_();</b></p><p><b> }</b></p><p> /* ==================== 字節(jié)讀 ======================== */</p><p> u
78、nsigned char byte_read(unsigned int byte_addr)</p><p><b> {</b></p><p> ISP_ADDRH = (unsigned char)(byte_addr >> 8);/* 地址賦值 */</p><p> ISP_ADDRL = (unsigned cha
79、r)(byte_addr & 0x00ff);</p><p> ISP_CMD = ISP_CMD & 0xf8; /* 清除低3位 */</p><p> ISP_CMD = ISP_CMD | RdCommand; /* 寫(xiě)入讀命令 */</p><p> ISPgoon(); /* 觸發(fā)執(zhí)行 */</p
80、><p> ISP_IAP_disable(); /* 關(guān)閉ISP,IAP功能 */</p><p> return (ISP_DATA); /* 返回讀到的數(shù)據(jù) */</p><p><b> }</b></p><p> /* ================== 扇區(qū)擦除 =============
81、=========== */</p><p> void SectorErase(unsigned int sector_addr)</p><p><b> {</b></p><p> unsigned int iSectorAddr;</p><p> iSectorAddr = (sector_addr
82、& 0xfe00); /* 取扇區(qū)地址 */</p><p> ISP_ADDRH = (unsigned char)(iSectorAddr >> 8);</p><p> ISP_ADDRL = 0x00;</p><p> ISP_CMD = ISP_CMD & 0xf8; /* 清空低3位 */</p>
83、<p> ISP_CMD = ISP_CMD | EraseCommand; /* 擦除命令3 */</p><p> ISPgoon(); /* 觸發(fā)執(zhí)行 */</p><p> ISP_IAP_disable(); /* 關(guān)閉ISP,IAP功能 */</p><p><b> }</b></p&
84、gt;<p> /* ==================== 字節(jié)寫(xiě) ======================== */</p><p> void byte_write(unsigned int byte_addr, unsigned char original_data)</p><p><b> {</b></p><
85、;p> ISP_ADDRH = (unsigned char)(byte_addr >> 8); /* 取地址 */</p><p> ISP_ADDRL = (unsigned char)(byte_addr & 0x00ff);</p><p> ISP_CMD = ISP_CMD & 0xf8; /* 清低3位 */</p&g
86、t;<p> ISP_CMD = ISP_CMD | PrgCommand; /* 寫(xiě)命令2 */</p><p> ISP_DATA = original_data; /* 寫(xiě)入數(shù)據(jù)準(zhǔn)備 */</p><p> ISPgoon(); /* 觸發(fā)執(zhí)行 */</p><p> ISP_IAP_disable(); /
87、* 關(guān)閉IAP功能 */</p><p><b> }</b></p><p><b> 5.2.4主函數(shù)</b></p><p> void main() //主函數(shù)</p><p><b> {</b></p><p> uchar
88、 m,a,b=0,c=0,e,f,k,i=0,j=0,wrong_num=0;</p><p> uchar code_right=0;</p><p> uchar new1_code,new2_code;</p><p> uchar receive_code[8],com_code[8];</p><p> uint addr;
89、</p><p> IE = 0x81; //允許總中斷中斷,使能 INT0 外部中斷</p><p> TCON = 0x01; //觸發(fā)方式為脈沖負(fù)邊沿觸發(fā)</p><p> IRIN=1; //I/O口初始化</p><p> BE
90、EP=1; //蜂鳴器初始化</p><p> if(byte_read(0x2200)==0x11) //初始密碼讀取</p><p><b> {</b></p><p> origin_code[0]=byte_read(0x2000);</p><p> origin_code[1]
91、=byte_read(0x2001);</p><p> origin_code[2]=byte_read(0x2002);</p><p> origin_code[3]=byte_read(0x2003);</p><p> origin_code[4]=byte_read(0x2004);</p><p> origin_c
92、ode[5]=byte_read(0x2005);</p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> SectorErase(0x2000);</p><p&
93、gt; byte_write(0x2000,0x0C);</p><p> byte_write(0x2001,0x18);</p><p> byte_write(0x2002,0x5E);</p><p> byte_write(0x2003,0x08);</p><p> byte_write(0x2004,0x1C);<
94、;/p><p> byte_write(0x2005,0x5A);</p><p> origin_code[0]=0x0C;</p><p> origin_code[1]=0x18;</p><p> origin_code[2]=0x5E;</p><p> origin_code[3]=0x08;<
95、/p><p> origin_code[4]=0x1C;</p><p> origin_code[5]=0x5A;</p><p><b> }</b></p><p> delay1(10); //延時(shí)</p><p> lcd_init();
96、 //初始化LCD </p><p> delay1(10); //延時(shí)</p><p> lcd_init(); </p><p> delay1(10);</p><p> EX0=0;//關(guān)中斷</p><p> lcd_wcmd(0x01
97、); </p><p> lcd_pos(0); //設(shè)置顯示位置為第一行的第1個(gè)字符</p><p> for(m=0;m<16;m++)</p><p><b> {</b></p><p> lcd_wdat(welc[m]);</p><p&
98、gt; delay1(10); //字符顯示延時(shí)</p><p><b> }</b></p><p> lcd_pos(0x40); //設(shè)置顯示位置為第二行的第1個(gè)字符</p><p> for(m=0;m<16;m++)</p><p><b> {
99、 </b></p><p> lcd_wdat(cdis2[m]);</p><p> delay1(10);</p><p><b> }</b></p><p> EX0=1; //開(kāi)中斷</p><p> delay1(500);</p>
100、<p><b> beep();</b></p><p> lcd_wcmd(0x01); //密碼輸入</p><p> delay1(10);</p><p> lcd_pos(0);</p><p> for(m=0;m<16;m++)</p><p>
101、; lcd_wdat(ent_sign[m]);</p><p> ir_flag=0;</p><p> for(;;) //密碼接收、確認(rèn)、顯示</p><p><b> { </b></p><p> if(ir_flag==0) continue;</p><
102、;p> ir_flag=0;</p><p> //按鍵屏蔽if(ir_data==num_1||ir_data==num_2||ir_data==num_3||ir_data==num_4||ir_data==num_5||ir_data==num_6||ir_data==num_7||ir_data==num_8||ir_data==num_9||ir_data==num_0)</p>
103、;<p> { if(code_right==1) continue;</p><p> receive_code[i]=ir_data; //按下一個(gè)鍵,顯示一個(gè)星號(hào)</p><p> lcd_pos(0x40+j);</p><p><b> j++;</b></p><p> lc
104、d_wdat(codestar[i]);</p><p><b> i++;</b></p><p> ir_data=0;</p><p><b> }</b></p><p> if(ir_data==num_voldec) //密碼輸入修改鍵</p><p>
105、;<b> {</b></p><p><b> i--;</b></p><p> if(i<0) i=0;</p><p><b> j--;</b></p><p> if(j<0) j=0;</p><p> lcd_p
106、os(0x40+j); </p><p> lcd_wdat(ent_empty[0]);</p><p><b> } </b></p><p><b> if(i>0)</b></p><p><b> { </b></p><p&g
107、t; if(ir_data==num_play) // 密碼輸入完畢確認(rèn)鍵 play</p><p><b> { </b></p><p><b> a=0;</b></p><p> if(i<6||i>6) a=1; //判斷密碼是否為六位數(shù)</p><p&
108、gt; while(i--)</p><p><b> {</b></p><p> if(origin_code[i]!=receive_code[i])//與原密碼比較</p><p><b> a++;</b></p><p><b> } </b><
109、;/p><p> if(a>0) wrong_num++; </p><p><b> for(;;)</b></p><p><b> {</b></p><p> if(wrong_num==1&&b==0&&c==0) //第一次輸入錯(cuò)誤顯
110、示</p><p> { lcd_wcmd(0x01);</p><p> lcd_pos(0);</p><p> for(m=0;m<16;m++)</p><p> lcd_wdat(wrong_code1[m]);</p><p> lcd_pos(0x40); </p>&l
111、t;p> for(m=0;m<16;m++)</p><p> lcd_wdat(ent_aga[m]);</p><p><b> LED1=0;</b></p><p><b> beep();</b></p><p><b> EX0=0;</b>&
112、lt;/p><p> delay1(1000);</p><p><b> EX0=1;</b></p><p> lcd_wcmd(0x01);</p><p> lcd_pos(0);</p><p> for(m=0;m<16;m++)</p><p>
113、 lcd_wdat(ent_sign[m]);</p><p><b> i=0;</b></p><p><b> j=0;</b></p><p><b> b=1;</b></p><p> lcd_pos(0x40);</p><p>
114、 for(m=0;m<16;m++)</p><p> lcd_wdat(ent_empty[m]);</p><p><b> break;</b></p><p><b> }</b></p><p> else if(wrong_num==2&&b==1&
115、&c==0)//第二次密碼輸入錯(cuò)誤顯示</p><p> {lcd_wcmd(0x01);</p><p> lcd_pos(0);</p><p> for(m=0;m<16;m++)</p><p> lcd_wdat(wrong_code2[m]);</p><p> lcd_pos
116、(0x40); </p><p> for(m=0;m<16;m++)</p><p> lcd_wdat(ent_aga[m]);</p><p><b> LED2=0;</b></p><p><b> beep();</b></p><p> dela
117、y1(20);</p><p><b> beep(); </b></p><p><b> EX0=0;</b></p><p> delay1(1000);</p><p><b> EX0=1;</b></p><p> lcd_wcm
118、d(0x01);</p><p> lcd_pos(0);</p><p> for(m=0;m<16;m++)</p><p> lcd_wdat(ent_sign[m]);</p><p><b> i=0;</b></p><p><b> j=0;</b&g
119、t;</p><p><b> c=1;</b></p><p> lcd_pos(0x40);</p><p> for(m=0;m<16;m++)</p><p> lcd_wdat(ent_empty[m]);</p><p><b> break;</b&g
120、t;</p><p><b> }</b></p><p> else if(wrong_num==3&&b==1&&c==1) //第三次密碼輸入錯(cuò)誤顯示、鎖定</p><p> {lcd_wcmd(0x01);</p><p> lcd_pos(0);</p>
121、<p> for(m=0;m<16;m++)</p><p> lcd_wdat(wrong_code3[m]);</p><p> lcd_pos(0x40); </p><p> for(m=0;m<16;m++)</p><p> lcd_wdat(lock_[m]);</p><
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 家電課程設(shè)計(jì)--紅外多功能遙控器
- 基于at89c51紅外遙控器和紅外線家電遙控課程設(shè)計(jì)
- 現(xiàn)代電子系統(tǒng)設(shè)計(jì)與實(shí)踐課程設(shè)計(jì)--紅外遙控器
- 紅外遙控器控制電子表單片機(jī)課程設(shè)計(jì)
- 紅外遙控課程設(shè)計(jì)
- 紅外遙控器解碼程序
- 紅外遙控器設(shè)計(jì)方案論文
- 課程設(shè)計(jì)-紅外遙控開(kāi)關(guān)
- 紅外遙控器發(fā)射端波形
- 紅外線遙控器畢業(yè)設(shè)計(jì)
- 基于單片機(jī)的語(yǔ)音遙控器課程設(shè)計(jì)
- 基于fpga的紅外遙控器設(shè)計(jì)【開(kāi)題報(bào)告】
- 紅外遙控器檢測(cè)儀.pdf
- 紅外遙控開(kāi)關(guān)課程設(shè)計(jì)報(bào)告
- 紅外遙控器信號(hào)接收和顯示的設(shè)計(jì)
- 智能紅外遙控器的設(shè)計(jì)與研究.pdf
- 基于fpga的紅外遙控器設(shè)計(jì)【畢業(yè)論文】
- 紅外遙控器信號(hào)接收和顯示的設(shè)計(jì)實(shí)現(xiàn)
- 基于單片機(jī)的紅外遙控器的設(shè)計(jì)
- 基于FPGA的多功能紅外遙控器設(shè)計(jì).pdf
評(píng)論
0/150
提交評(píng)論