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

正文內(nèi)容

[通信電子設(shè)計(jì)精品]基于單片機(jī)控制的智能窗簾設(shè)計(jì)-資料下載頁(yè)

2024-10-10 04:20本頁(yè)面

【導(dǎo)讀】能家居中一個(gè)很重要部分——紅外線遙控自動(dòng)窗簾的意義。隨后著重介紹了開(kāi)發(fā)。紅外線發(fā)射接收器等硬件的結(jié)構(gòu)原理。本文采用分塊的模式,對(duì)整個(gè)系統(tǒng)的硬件。隨后講述了軟件的編寫(xiě)思路,也是采用分塊的模式,分別寫(xiě)出了。序的編寫(xiě)思路,每一模塊都畫(huà)出了其方框圖,看起來(lái)一目了然。上基本達(dá)到了預(yù)期目的。當(dāng)然,該系統(tǒng)在一些細(xì)節(jié)的設(shè)計(jì)上還需要不斷的完善和

  

【正文】 , 例如 拉低后Q1 導(dǎo)通、 Q2 導(dǎo)通, K1 吸合,電機(jī) M 得電轉(zhuǎn)動(dòng),當(dāng)只有 拉低后,電機(jī) M 則反方向轉(zhuǎn)動(dòng),實(shí)現(xiàn)了窗簾的拉開(kāi)和關(guān)閉。兩個(gè)繼電器的工作狀態(tài)受單片機(jī)控制,在同一個(gè)時(shí)間內(nèi)兩個(gè)繼電器僅能有一個(gè)吸合。即便是在電機(jī) M工作期間,操作了反向轉(zhuǎn)動(dòng)按鍵,單片機(jī)也是先釋放當(dāng)前工作的繼電器,并延時(shí)一段時(shí)間后再吸合另外一個(gè)繼電器,防止了電機(jī) M正反工作線圈同時(shí)通電的冒險(xiǎn)。 圖 316 電機(jī)執(zhí)行電路 窗簾框架構(gòu)造設(shè)計(jì)包括窗簾微動(dòng)開(kāi)關(guān)連接電路設(shè)計(jì)和 窗簾架的制作與設(shè)計(jì)。本設(shè)計(jì)中的微動(dòng)開(kāi)關(guān)通過(guò)電容、電阻組成的復(fù)位電路與單片機(jī)的復(fù)位引腳相連,微動(dòng)開(kāi)關(guān)安裝在窗簾滑桿上,當(dāng)窗簾移動(dòng)到預(yù)定位置時(shí),觸動(dòng)微動(dòng)開(kāi)關(guān),使單片機(jī)復(fù)位,此時(shí)電機(jī)停轉(zhuǎn),窗簾停到指定位置。 圖 317 窗簾框架構(gòu)造 23 程序的編寫(xiě)是該系統(tǒng)重要的部分,如果軟件編寫(xiě)的科學(xué)就能體現(xiàn)出該系統(tǒng)功能的完整性、實(shí)用性、經(jīng)濟(jì)性。只有軟件和硬件都正確才能使電路正常工作達(dá)到我們想要的效果。本系統(tǒng)的軟件編程部分的編寫(xiě)主要分為紅外解碼程序、 LCD1602顯示程序 、時(shí)鐘芯片 DS1302 控制程序、數(shù)據(jù)存儲(chǔ)程序這四大類來(lái)闡述。 這里采用的是 6122 型遙控器,載波波形使用 455KHz 晶體,經(jīng)內(nèi)部分頻電路,信號(hào)被調(diào)制在 ,占空比為三分之一。數(shù)據(jù)格式包括了引導(dǎo)碼、用戶碼、數(shù)據(jù)碼、數(shù)據(jù)反碼,編碼總共占 32 位。數(shù)據(jù)反碼是數(shù)據(jù)碼相反的編碼,編碼時(shí)可用對(duì)于數(shù)據(jù)的糾錯(cuò)。 圖 319 紅外波形 引導(dǎo)碼由一個(gè) 9ms的載波波形和 ,它作為隨后發(fā)射的碼的引導(dǎo),這樣當(dāng)接收系統(tǒng)是由微處理器構(gòu) 成的時(shí)候,能更有效地處理碼的接收與檢測(cè)及其它各項(xiàng)控制之間的時(shí)序關(guān)系。編碼采用脈沖位置調(diào)制方式( PPM)。每次 8位的碼被傳送之后,它們的反碼也被傳送,減少了系統(tǒng)的誤碼率。 用戶碼或者數(shù)據(jù)碼中的每一位可以是“ 1”,也可以是“ 0”。區(qū)分“ 0”和“ 1”是利用脈沖的時(shí)間間隔來(lái)區(qū)分,這種編碼方式稱為脈沖位置調(diào)制方式,簡(jiǎn)稱 PPM。 圖 320 “ 0”,“ 1”碼波形 解碼的關(guān)鍵是如何識(shí)別 “0” 和 “1” , 代碼格式(以接收代碼為準(zhǔn),接收代碼與發(fā)射代碼反向)。 從位的定義我們可 以發(fā)現(xiàn) “0” 、 “1” 均以 的低電平開(kāi)始,不同的是高電平的寬度不同, “0” 為 ,“1” 為 ,所以必須根據(jù)高電平的寬度區(qū)別 “0” 和 “1” 。如果從 低電平過(guò)后,開(kāi)始延時(shí), 以后,若讀到的電平為低,說(shuō)明該位為 “0” ,反之則為 “1” ,為了可靠起見(jiàn),延時(shí)必須比 長(zhǎng)些,但又不能超過(guò) ,否則如果該位為 24 “0” ,讀到的已是下一位的高電平,因此取( +) /2= 最為可靠,一般取 左右均可 ; 根據(jù)碼的格式,應(yīng)該等待 9ms 的 起始碼和 的結(jié)果碼完成后才能讀碼。 1. 紅外解碼流程圖如下: 圖 321 紅外解碼流程圖 LCD1602顯示程序 寫(xiě)指令:輸入: RS=L, R/W=L, D0— D7=指令碼 , E=高脈沖 ; 輸 出: D0— D7=數(shù)據(jù)。 寫(xiě)數(shù)據(jù) : 輸入 : RS=H, R/W=L, D0— D7=數(shù)據(jù), E=高脈沖 ; 輸出 : 無(wú)。 寫(xiě)操作時(shí)序如圖 322所示: 圖 322 寫(xiě)操作時(shí)序 接收并解碼 判斷數(shù)據(jù)格式是否正確 跳出中斷 比較,轉(zhuǎn)出執(zhí)行相應(yīng)動(dòng)作 中斷返回 有紅外信號(hào),產(chǎn)生中斷 否 是 25 LCD1602 的一般初始化(復(fù)位)過(guò)程 : 延時(shí) 15mS, 寫(xiě)指令 38H(不檢測(cè)忙信號(hào)) ; 延時(shí) 5mS, 寫(xiě)指令 38H(不檢測(cè)忙信號(hào)) ; 延時(shí) 5mS, 寫(xiě)指令 38H(不檢測(cè)忙信號(hào) , 以后每次寫(xiě)指令、讀 /寫(xiě)數(shù)據(jù)操作均需要檢測(cè)忙信號(hào) ); 寫(xiě)指令 38H:顯示模式設(shè)置 ; 寫(xiě)指令 08H:顯示關(guān)閉 ; 寫(xiě)指令 01H:顯示清屏 ; 寫(xiě)指令 06H:顯示光標(biāo)移動(dòng)設(shè)置 ; 寫(xiě)指令 0CH:顯示開(kāi)及光標(biāo)設(shè)置 ; 1602 流程圖如下: 圖 323 1602 流程圖 DS1302的控制程序 DS1302 與微處理器進(jìn)行數(shù)據(jù)交換時(shí),首先由微處理器向電路發(fā)送命令字節(jié),命令字節(jié)最高位 MSB(D7)必須為邏輯 1,如果 D7=0,則禁止寫(xiě) DS1302,即寫(xiě)保護(hù);D6=0,指定時(shí)鐘數(shù)據(jù), D6=1,指定 RAM 數(shù)據(jù); D5~ D1 指定輸入或輸出的特定寄存器;最低位 LSB(D0)為邏輯 0,指定寫(xiě)操作 (輸入 ), D0=1,指定讀操作 (輸出 )。在 DS1302 的時(shí)鐘日歷或 RAM進(jìn)行數(shù)據(jù)傳送時(shí), DS1302 必須首先發(fā)送命令字節(jié)。若進(jìn)行單字節(jié)傳送, 8 位命令字節(jié)傳送結(jié)束之后,在下 2 個(gè) SCLK 周期的上升沿輸入數(shù)據(jù)字節(jié),或在下 8 個(gè) SCLK 周期的下降沿輸出數(shù)據(jù)字節(jié)。 DS1302 與 RAM相關(guān)的寄存器分為兩類 :一類是單個(gè) RAM 單元,共 31 個(gè),每個(gè)單元組態(tài)為一個(gè) 8位的字節(jié),其命令控制字為 C0H~ FDH,其中奇數(shù)為讀操作,偶數(shù)為寫(xiě)操作;再一類為突發(fā)方式下的 RAM 寄存器,在此方式下可一次性讀、寫(xiě)所有的 RAM 的 31個(gè)字節(jié)。 數(shù)據(jù)輸入時(shí),時(shí)鐘的上升沿?cái)?shù)據(jù)必須有效,數(shù)據(jù)的輸出在時(shí)鐘的下降沿。如果為低 電平 ,那么所有的數(shù)據(jù)傳送將被中止且 I/ 0引腳變?yōu)楦咦锠顟B(tài)。上電時(shí),開(kāi)始 初始化 單片機(jī)發(fā)寫(xiě)命令 液晶是否應(yīng)答 準(zhǔn)備寫(xiě)入數(shù)據(jù) 執(zhí)行顯示命令 清屏并光標(biāo)復(fù)位 否 是 26 在 Vcc 伏之前, 必須為邏輯 0。當(dāng)把驅(qū)動(dòng)至邏輯 1 狀態(tài)時(shí), SCLK 必須為邏輯 0。 單字節(jié)數(shù)據(jù)輸入跟隨在寫(xiě)命令字節(jié)的 8個(gè) SCLK 周期之后,在控制指令字輸入后的下一個(gè) SCLK 時(shí)鐘的上升沿時(shí),數(shù)據(jù)被寫(xiě)入 DS1302,數(shù)據(jù)輸入從低位即位0 開(kāi)始。同樣,在緊跟 8 位的控制指令字后的下一個(gè) SCLK 脈沖的下降沿讀出DS1302 的數(shù)據(jù),讀出數(shù)據(jù)時(shí)從低位 0 位到高位 7。 DS1302 的讀寫(xiě)時(shí)序如圖 324所示。 圖 324 DS1302 讀、寫(xiě)時(shí)序 讀取實(shí)時(shí)時(shí) 間過(guò)程流程見(jiàn)框圖如下: 27 圖 325 DS1302 流程圖 開(kāi)始 變量初始化 使 DS1302不具備寫(xiě)保護(hù) 復(fù)位后產(chǎn)生一個(gè)高電平 寫(xiě) DS1302 地址 地址增加 向該地址寫(xiě)數(shù)據(jù) 數(shù)據(jù)是否寫(xiě)完 復(fù)位后產(chǎn)生一個(gè)高電平 寫(xiě) DS1302 地址 地址增 加 將該地址數(shù)據(jù)讀出 數(shù)據(jù)是否讀完 顯示數(shù)據(jù) N Y N Y 28 AT24C02 支持 IC,總線數(shù)據(jù)傳送協(xié)議 IC,總線協(xié)議規(guī)定任何將數(shù)據(jù)傳送到總線的器件作為發(fā)送器。任何從總線接收數(shù)據(jù)的器件為接收器。數(shù)據(jù)傳送是由產(chǎn)生串行時(shí)鐘和所有起始停止信號(hào)的主器件控制的。主器件和從器件都可以作為發(fā)送器或接收器,但由主器件控制傳送數(shù)據(jù)(發(fā)送或接收)的模式,通過(guò)器件地址輸 入端 A0、 A1 和 A2 可以實(shí)現(xiàn)將最多 8個(gè) AT24C02 器件連接到總線上。 I2C 總線是一種用于 IC 器件之間連接的二線制總線。它通過(guò) SDA(串行數(shù)據(jù)線)及 SCL(串行時(shí)鐘線 )兩根線在連到總線上的器件之間傳送信息,并根據(jù)地址識(shí)別每個(gè)器件:不管是單片機(jī)、存儲(chǔ)器、 LCD 驅(qū)動(dòng)器還是鍵盤(pán)接口。 AT24C02 的 3腳是三條地址線,用于確定芯片的硬件地址(實(shí)驗(yàn)板中直接接地只有一塊器件);第 8 腳和第 4腳分別為正、負(fù)電源。第 5 腳 SDA 為串行數(shù)據(jù)輸入 /輸出,數(shù)據(jù)通過(guò)這條雙向 I2C 總線串行傳送, SDA 和 SCL 都需要和正電源間 各接一個(gè) 的電阻上拉。第 7 腳為 WP 寫(xiě)保護(hù)端,接地時(shí)允許芯片執(zhí)行一般的讀寫(xiě)操作。接電源端時(shí)不允許對(duì)器件寫(xiě)。 24C02 中帶有片內(nèi)地址寄存器。每寫(xiě)入或讀出一個(gè)數(shù)據(jù)字節(jié)后,該地址寄存器自動(dòng)加 1,以實(shí)現(xiàn)對(duì)下一個(gè)存儲(chǔ)單元的讀寫(xiě)。所有字節(jié)均以單一操作方式讀取。為降低總的寫(xiě)入時(shí)間,一次操作可寫(xiě)入多達(dá) 8 個(gè)字節(jié)的數(shù)據(jù)。 圖 326 總線時(shí)序 圖 327 寫(xiě)周期時(shí)序 29 圖 328 起始 /停止時(shí)序 AT24C02 讀寫(xiě)操作流程圖如下: 圖 329 AT24C02 讀寫(xiě)操作流程圖 產(chǎn)生啟動(dòng)條件 給出從地址 等待接收確認(rèn) 給出數(shù)據(jù)地址 等待接收確認(rèn) 寫(xiě)入接收數(shù)據(jù) 等待接收確認(rèn) 產(chǎn)生啟動(dòng)條件 給出從地址 等待接收確認(rèn) 不做應(yīng)答 產(chǎn)生停止條件 產(chǎn)生應(yīng)答 是否最后字節(jié) 接收 1 字節(jié)數(shù)據(jù) 產(chǎn)生停止條件 N Y 寫(xiě)操作流程 讀操作流程 30 第 4章 .調(diào)試 該系統(tǒng)硬件電路結(jié)構(gòu)相對(duì)比較簡(jiǎn)單,主要是軟件部分的仿真與調(diào)試。軟件部分的重難點(diǎn)又主要體現(xiàn)在三個(gè)中斷程序中。 第一個(gè)中斷,定時(shí)器 /計(jì)數(shù)器 0 定時(shí)中斷,因?yàn)樵趯?shí)驗(yàn)室的仿真器上沒(méi)有DS1302 時(shí)鐘芯片,所以在調(diào)試的時(shí)候把定時(shí)計(jì)數(shù)器 0 設(shè)置為工作方式 1 即 16位定時(shí)器,設(shè)定每 將產(chǎn) 生一次中斷,經(jīng)過(guò) *20*60 既得到一分鐘的定時(shí)時(shí)間,每經(jīng)過(guò)一分鐘如果自動(dòng)開(kāi)關(guān)窗簾功能開(kāi)啟它就會(huì)與自動(dòng)開(kāi)關(guān)窗簾的定時(shí)時(shí)間想比較,如果相等就轉(zhuǎn)入相應(yīng)的子程序中去執(zhí)行控制命令。 第二個(gè)中斷,定時(shí)器 /計(jì)數(shù)器 1 定時(shí)中斷,此中斷主要是用來(lái)控制數(shù)碼管的顯示,這與本系統(tǒng)的設(shè)計(jì)方式基本相同,不同的是 MCS51 仿真器上的數(shù)碼管都有相應(yīng)的位碼地址和位形碼地址,只要把字形碼和字位碼送入相應(yīng)的地址既能顯示出需要的數(shù)字。 第三個(gè)中斷,外部中斷 0,在原程序中,當(dāng)紅外線一體化接受器接受到信號(hào)時(shí)就會(huì)產(chǎn)生中斷,并根據(jù)解碼得到的值去執(zhí)行 相應(yīng)的子程序,但是在仿真過(guò)程當(dāng)中沒(méi)有紅外線發(fā)射器,也沒(méi)有紅外線一體化接收頭,所以改用了中斷鍵盤(pán)代替。在調(diào)試中把 P1 口和 , 作為 10個(gè)按鍵分別置高低電平,當(dāng)其中一個(gè)口被置為低電平時(shí),此低電平就將引發(fā)外部中斷 0,系統(tǒng)轉(zhuǎn)入執(zhí)行中斷子程序,判斷 P1 口和 、 那個(gè)為低電平,然后轉(zhuǎn)入相應(yīng)功能的子程序中去完成需要的動(dòng)作。 現(xiàn)象觀察:在 MCS51 仿真器上通過(guò)編譯、加載、運(yùn)行后可以觀察到,在沒(méi)有調(diào)時(shí)鍵被按下時(shí),數(shù)碼管顯示正常的實(shí)時(shí)時(shí)間,因?yàn)樵诜昼姾托r(shí)中間沒(méi)有設(shè)置準(zhǔn)確的秒鐘閃爍信號(hào),所以只能看到在 小時(shí)和分鐘間有個(gè)點(diǎn)在閃爍。在 、 口上分別接一發(fā)光二極管,在送入低電平的時(shí)候亮,高電平的時(shí)候不亮。在有鍵被按下時(shí),程序自動(dòng)轉(zhuǎn)入相應(yīng)的中斷子程序,如: 口手動(dòng)開(kāi)簾鍵被按下時(shí), 口上接的發(fā)光二極管亮; 口上的鍵被按下時(shí), 口上接的發(fā)光二極管亮,這說(shuō)明程序能夠正常的運(yùn)行,能夠使繼電器導(dǎo)通,帶動(dòng)電機(jī)向正確的方向轉(zhuǎn)動(dòng)。 經(jīng)過(guò)在 MCS51 仿真器上調(diào)試運(yùn)行,此電路及程序基本上達(dá)到了預(yù)期目的,當(dāng)然在程序中也還有很多可以改進(jìn)的優(yōu)化設(shè)計(jì),也還可以添加一些輔助功能這些都還有待更好的改進(jìn) [27]。 本文主要完成了如下工作: 硬件部分: ( 1)采用自制 5V 穩(wěn)壓電源。先用一變壓器把市電( 220V 交流電)變成 12V,經(jīng)整流、濾波后,再用一集成穩(wěn)壓管( 74L05)把電壓穩(wěn)定在 5V以供單片機(jī)使用; 31 ( 2)單片機(jī)選用 89C2051,是整個(gè)系統(tǒng)的核心部件, 擔(dān)負(fù)整個(gè)系統(tǒng)的管理控制任務(wù) ; ( 3)紅外線遙控方式。發(fā)射部分采用普通的彩電遙控器,既節(jié)約成本又方便;接收部分采用一紅外線接頭,主要是通過(guò) 89C2051 解碼,分析出需要執(zhí)行的命令,再由單片機(jī)去完成; ( 4) .數(shù)據(jù)存儲(chǔ)設(shè)定。選用時(shí)鐘日歷芯片 DS1302 作為萬(wàn)年歷 ,因?yàn)樗麕в?2字節(jié)的 RAM,并且?guī)в泻髠潆娫床慌聰嚯?,所以兼做?shù)據(jù)存儲(chǔ)器使用,保存用戶設(shè)定的一些參數(shù)。 ( 5) .窗簾用能正反轉(zhuǎn)的電動(dòng)機(jī)來(lái)拖動(dòng),電機(jī)的轉(zhuǎn)動(dòng)方向由繼電器來(lái)控制。 軟件部分: ( 1)對(duì) DS1302 芯片進(jìn)行初始化, I2C 總線進(jìn)行單字節(jié)數(shù)據(jù)讀寫(xiě)傳送、多字節(jié)數(shù)據(jù)讀寫(xiě)傳送; ( 2)利用紅外線一體化接收頭對(duì)紅外線遙控器發(fā)射的編碼進(jìn)行接收,然后由單片機(jī)根據(jù)接收到的信號(hào)進(jìn)行解碼; ( 3)控制程序,根據(jù)解碼得到的結(jié)果去執(zhí)行需要的操作。開(kāi)窗簾、關(guān)窗簾、停止移動(dòng)、調(diào)節(jié)實(shí)時(shí)時(shí)間、調(diào)節(jié)開(kāi)窗簾時(shí)間、調(diào)節(jié)關(guān)窗簾時(shí)間、時(shí)間增 加、時(shí)間減小、開(kāi) /關(guān)自動(dòng)開(kāi)關(guān)簾、開(kāi) /關(guān)自動(dòng)關(guān)窗簾; ( 4)顯示電路。實(shí)時(shí)時(shí)鐘顯示、開(kāi)窗簾調(diào)時(shí)顯示、關(guān)窗簾調(diào)時(shí)顯示。 32 第 5章 .總 結(jié) 學(xué)校給我們布置了個(gè)任務(wù) ,讓同學(xué)在 畢業(yè)前 進(jìn)行實(shí)踐調(diào)查 , 以便培養(yǎng)同學(xué)的能力 , 這樣會(huì)很好的鍛煉我們社會(huì)交際能力 , 現(xiàn)在的社會(huì)的要
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1