freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于at89c51單片機的紅外線遙控窗簾控制系統(tǒng)設(shè)計(編輯修改稿)

2025-01-09 05:05 本頁面
 

【文章內(nèi)容簡介】 顯示關(guān)窗簾的定時時間( 6CH、 6DH),顯示方式與正常時間顯示一樣??驁D見[26]。 遙控控制部分 遙控控制部分就是根據(jù)遙控器發(fā)送的編碼來執(zhí)行需要的任務(wù),其中包括:開窗簾、關(guān)窗簾、停止移動(把窗簾設(shè)置成半開狀態(tài))、調(diào)節(jié)實時時間,(按一下此鍵,再按加、減鍵即可使實時時間增加一或減小一)、調(diào)節(jié)開窗簾時間、調(diào)節(jié)關(guān)窗簾時間、時間增加、時間減小、開 /關(guān)自動開關(guān)簾、開 /關(guān)自動關(guān)窗簾。具 體實施措施為: ① 接收到的紅外線碼值為 10H,轉(zhuǎn)入執(zhí)行 stop 子程序,此時 、 兩個引腳都將被置為高電平,控制電機的四個三極管都處于截止?fàn)顟B(tài),電機不執(zhí)行任何動作既窗簾停止不動; ② 接受到的紅外線值為 16H,轉(zhuǎn)入執(zhí)行 OPEN子程序,在此程序中 將被置“ 1”,與 相連接的兩個三極管導(dǎo)通,電機正轉(zhuǎn),延時一段時間也就是窗簾全部打開的時候 又被置“ 0”,電機停止運動; ③ 接收到的紅外線值為 44H,轉(zhuǎn)入執(zhí)行 CLOSE 子程序,在此程序中 將被置“ 0”,與 相連接的兩個三極管導(dǎo)通,電機 反轉(zhuǎn),延時一段時間也就是窗簾全部被關(guān)上的時候 又被置“ 01,電機停止運動; ④ 接收到的紅外線值為 0CH,就使 01H 取反,開始 01H 應(yīng)該為“ 0”,取反后 01H 變?yōu)椤?1”如果此時再按加一或是減一鍵,系統(tǒng)便會轉(zhuǎn)入執(zhí)行 S_TIME 子程序,使實時時間加一或是減一后放入 DS1302 的 RAM 中,如果再次按到 0CH 這個鍵,那么 01H 取反 15 被設(shè)置為“ 0”,按加或是減鍵的時候就不能改變實時時間的值了。 ⑤ 接受到的紅外線值為 46H、 47H 的時候與第四基本上相同,不同之出就是 46H 為調(diào)節(jié)開窗簾的定時時間, 47H 為調(diào)節(jié)關(guān)窗簾的定時時 間。 ⑥ 接受到的紅外線值為 49H 時,為開 /關(guān)自動開窗簾,中斷程序?qū)?03H 取反, 03H 開始應(yīng)該為“ 0”,取反后變?yōu)椤?1”,系統(tǒng)在去讀取 DS1302 實時時間的時候如果發(fā)現(xiàn) 03H 為“ 1”就會把讀得的實時時間與開窗簾的定時時間想比較,相等就會執(zhí)行開窗簾子程序;如果再次按到該鍵, 03H 將被值“ 0”,在讀取實時時間的時候就不在作比較了,而是直接退出中斷程序。 ⑦ 接受到的紅外線值為 50H 時,為開 /關(guān)自動關(guān)窗簾,與開 /關(guān)自動開窗簾設(shè)計一樣。 該系統(tǒng)硬件電路結(jié)構(gòu)相對比較簡單,主要是軟件部分的仿真與調(diào) 試。軟件部分的重難點又主要體現(xiàn)在三個中斷程序中。 第一個中斷,定時器 /計數(shù)器 0 定時中斷,因為在實驗室的仿真器上沒有DS1302 時鐘芯片,所以在調(diào)試的時候把定時計數(shù)器 0 設(shè)置為工作方式 1 即 16位定時器,設(shè)定每 將產(chǎn)生一次中斷,經(jīng)過 *20*60 既得到一分鐘的定時時間,每經(jīng)過一分鐘如果自動開關(guān)窗簾功能開啟它就會與自動開關(guān)窗簾的定時時間想比較,如果相等就轉(zhuǎn)入相應(yīng)的子程序中去執(zhí)行控制命令。 第二個中斷,定時器 /計數(shù)器 1 定時中斷,此中斷主要是用來控制數(shù)碼管的 定時中斷到,顯示 N N Y Y 02H 為 1 否 顯示開窗簾時間 定時計數(shù)器 1 中斷 03H 為 1 否 顯示關(guān)窗簾時間 顯示正常時間 中斷返回 16 顯示,這與本系統(tǒng)的設(shè)計方式基本相同,不同的是 MCS51 仿真器上的數(shù)碼管都有相應(yīng)的位碼地址和位形碼地址,只要把字形碼和字位碼送入相應(yīng)的地址既能顯示出需要的數(shù)字。 第三個中斷,外部中斷 0,在原程序中,當(dāng)紅外線一體化接受器接受到信號時就會產(chǎn)生中斷,并根據(jù)解碼得到的值去執(zhí)行相應(yīng)的子程序,但是在仿真過程當(dāng)中沒有紅外線發(fā)射器,也沒有紅外線一體化接收頭,所以改用了中斷鍵盤代替。在調(diào)試中把 P1 口和 , 作為 10 個按鍵分別置高低電平,當(dāng)其中一個口被置為低電平時,此低電平就將引發(fā)外部中斷 0,系統(tǒng)轉(zhuǎn)入執(zhí)行中斷子程序,判斷 P1 口和 、 那個為低電平,然后 轉(zhuǎn)入相應(yīng)功能的子程序中去完成需要的動作。 現(xiàn)象觀察:在 MCS51 仿真器上通過編譯、加載、運行后可以觀察到,在沒有調(diào)時鍵被按下時,數(shù)碼管顯示正常的實時時間,因為在分鐘和小時中間沒有設(shè)置準(zhǔn)確的秒鐘閃爍信號,所以只能看到在小時和分鐘間有個點在閃爍。在 、 口上分別接一發(fā)光二極管,在送入低電平的時候亮,高電平的時候不亮。在有鍵被按下時,程序自動轉(zhuǎn)入相應(yīng)的中斷子程序,如: 口手動開簾鍵被按下時, 口上接的發(fā)光二極管亮; 口上的鍵被按下時, 口上接的發(fā)光二極管亮,這說明程序能夠正常 的運行,能夠使繼電器導(dǎo)通,帶動電機向正確的方向轉(zhuǎn)動。 經(jīng)過在 MCS51 仿真器上調(diào)試運行,此電路及程序基本上達到了預(yù)期目的,當(dāng)然在程序中也還有很多可以改進的優(yōu)化設(shè)計,也還可以添加一些輔助功能這些都還有待更好的改進 [27]。 本文主要完成了如下工作: 硬件部分: ( 1)采用自制 5V穩(wěn)壓電源。先用一變壓器把市電( 220V 交流電)變成 12V,經(jīng)整流、濾波后,再用一集成穩(wěn)壓管( 74L05)把電壓穩(wěn)定在 5V 以供單片機使用; ( 2)單片機選用 89C2051,是整個系統(tǒng)的核心部件, 擔(dān)負整個系統(tǒng)的管理控制任務(wù) ; ( 3)紅外 線遙控方式。發(fā)射部分采用普通的彩電遙控器,既節(jié)約成本又方便;接收部分采用一紅外線接頭,主要是通過 89C2051 解碼,分析出需要執(zhí)行的命令,再由單片機去完成; ( 5) .采用四位數(shù)碼管來顯示時間及要求的動作指示; ( 6) .設(shè)有鳴響提示喇叭; ( 7) .數(shù)據(jù)存儲設(shè)定。選用時鐘日歷芯片 DS1302 作為萬年歷,因為他帶有32 字節(jié)的 RAM,并且?guī)в泻髠潆娫床慌聰嚯姡约孀鰯?shù)據(jù)存儲器使用,保存 17 用戶設(shè)定的一些參數(shù)。 ( 8) .窗簾用能正反轉(zhuǎn)的電動機來拖動,電機的轉(zhuǎn)動方向由繼電器來控制。 軟件部分: ( 1)對 DS1302 芯片進 行初始化, I2C 總線進行單字節(jié)數(shù)據(jù)讀寫傳送、多字節(jié)數(shù)據(jù)讀寫傳送; ( 2)利用紅外線一體化接收頭對紅外線遙控器發(fā)射的編碼進行接收,然后由單片機根據(jù)接收到的信號進行解碼; ( 3)控制程序,根據(jù)解碼得到的結(jié)果去執(zhí)行需要的操作。開窗簾、關(guān)窗簾、停止移動、調(diào)節(jié)實時時間、調(diào)節(jié)開窗簾時間、調(diào)節(jié)關(guān)窗簾時間、時間增加、時間減小、開 /關(guān)自動開關(guān)簾、開 /關(guān)自動關(guān)窗簾; ( 4)顯示電路。實時時鐘顯示、開窗簾調(diào)時顯示、關(guān)窗簾調(diào)時顯示。 本課題的研究雖然取得了一定的收獲,但在很多方面還有待于進一步的改進和完善。如:鳴響電路沒有作為一個 單獨的單元來控制,這樣在每次開關(guān)窗簾的時候有會伴隨著喇叭的聲音,如果把鳴響電路設(shè)計成單獨的控制單元,并且在執(zhí)行不同操作時會伴隨不同的樂曲聲,那樣將是最理想的;還有就是沒有設(shè)計光控電路,如果再加上一個光控電路,在光線較暗的時候能自動開窗簾,在光線較強的時候自動關(guān)窗簾,那這個系統(tǒng)將更加的完整。 附 錄 軟件設(shè)計程序如下: 。遙控器各按鍵數(shù)據(jù)碼 stop equ 10h 。手動使窗簾停止運動 s_time equ 0ch 。調(diào)實時時間 o_time equ 46h 。調(diào)開窗簾時間 c_time equ 47h 。調(diào)關(guān)窗簾時間 up equ 19h 。增加時間鍵 down equ 1dh 。減少時間鍵 open equ 16h 。手動開 close equ 44h 。手動關(guān) o_auto equ 49h 。自動開簾開關(guān) c_auto equ 50h 。自動關(guān)簾開關(guān) second equ 60h 。2051 時間地址 k_on bit 。電機正轉(zhuǎn)輸出 k_off bit 。電機反轉(zhuǎn)輸出 clk bit 。ds1302 的三總線 io bit rst bit 18 。60h 秒 。61h 分 。62h 時 。6ah 開分 from 00(1302) 。6bh 開時 from 01(1302) 。6ch 關(guān)分 from 10(1302) 。6dh 關(guān)時 from 11(1302) 。****************** 0000h ajmp start 0003h ljmp s_int 。紅外線中斷 000bh 。200us ljmp p_int 。定時讀時間及比較時間 001bh 。display led ljmp display 。**************************** 。main program 0030h start: clr rst mov sp,2ah clr 01h clr 02h clr 03h clr 04h clr 05h mov tmod,12h 。為 0001 0010b mov tl1,0e5h 。wait mov th1,0beh mov th0,3fh 。200us 3f mov tl0,3fh setb et0 setb et1 setb tr0 setb tr1 setb it0 。電平中斷方式 setb ex0 lcall set1302 。初始化 mov r1,0c1h 。取定時開參數(shù)從 1302 中( 1100, 0001) acall t_6061 mov 6ah,a 。openm mov r1,0c3h 。( 1100, 0011) 19 acall t_6061 mov 6bh,a 。openh mov r1,0c5h 。取定時關(guān)參數(shù)從 1302 中( 1100, 0101) acall t_6061 mov 6ch,a 。closem mov r1,0c7h 。( 1000, 0111) acall t_6061 mov 6dh,a 。closeh setb ea sjmp $ delay1: mov r4,034h aa: mov r5,045h djnz r5,$ djnz r4,aa ret 。************************定時讀取 1302 時間及判斷鬧鈴時間是否到 ******* p_int: push acc push psw setb rso clr rs1 inc r2 cjne r2,250d,p_out mov r2,00h inc r3 cjne r3,10d,p_out mov r3,00h 。延時 250*10*200us acall r_1302 。時間放 60, 61, 62h 中 now1: jnb 04h,now2 mov a,6bh mov b,10 div ab swap a add a,b cjne a,62h,now2
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1