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

正文內(nèi)容

基于51單片機(jī)的智能家居控制系統(tǒng)設(shè)計(jì)-資料下載頁(yè)

2025-10-11 15:27本頁(yè)面

【導(dǎo)讀】正體會(huì)到智慧家?guī)?lái)的生活樂(lè)趣。本設(shè)計(jì)以STC89C52RC單片機(jī)為核心設(shè)計(jì)數(shù)字時(shí)鐘和智能窗簾:。另外用點(diǎn)陣顯示時(shí)間和當(dāng)前室內(nèi)溫度,由于下午十點(diǎn)后基本屬于睡眠時(shí)間,故忽略光線(xiàn)強(qiáng)。度,拉上窗簾并自動(dòng)切換到手動(dòng)模式,以節(jié)約電能,待第二天起床再將其切換至自動(dòng)模式。采用步進(jìn)電機(jī)控制,通過(guò)齒輪變速,精確控制窗簾的張合程度,避免窗簾由于過(guò)度的張合造成損害,同時(shí)由于減少了輔助器件,節(jié)省了能源。同時(shí),本設(shè)計(jì)還選用DS12C887時(shí)鐘芯片,該芯片內(nèi)部自帶。鋰電池,即使在斷電的情況下仍然能繼續(xù)工作。該芯片有內(nèi)置晶振,能夠提供準(zhǔn)確的時(shí)間,正常工作。狀態(tài)下工作一個(gè)月誤差為+1分鐘。芯片內(nèi)部帶有鬧鐘功能,帶有世紀(jì)寄存器,能夠解決世紀(jì)問(wèn)題,還有閏年補(bǔ)償能多項(xiàng)功能。比只利用晶振驅(qū)動(dòng)的電子時(shí)鐘功能更強(qiáng)大,時(shí)間更準(zhǔn)確。從功能和價(jià)位以及本題目要求。來(lái)看,我們選擇STC89C52RC芯片作為本系統(tǒng)的控制核心,同時(shí)可以實(shí)現(xiàn)控制、顯示等功能。

  

【正文】 //分離日期的個(gè)位數(shù) } disp_buff[0]=ziku_table[dge*16+j]。 //將年月日頁(yè)面第一行的數(shù)據(jù)存入數(shù)組 disp_buff[1]=ziku_table[dshi*16+j]。 disp_buff[2]=ziku_table[mge*16+j]。 disp_buff[3]=ziku_table[mshi*16+j]。 disp_buff[4]=ziku_table[yge*16+j]。 disp_buff[5]=ziku_table[yshi*16+j]。 disp_buff[6]=ziku_table[ybai*16+j]。 disp_buff[7]=ziku_table[yqian*16+j]。 HC595_Data_Send(disp_buff,j,4)。 j++。 //行加 1 if(j==16) { j=0。 riqi++。 shijian=0。 } } } } 22 DS18B20 程序流程圖 DS18B20 的程序流程圖如圖 所示: N Y N Y 圖 溫度模塊程序流程圖 圖 DS18B20 流程圖 DS18B20 讀取溫度值 的程序 如下: ReadTemperature(void) //向 DS18B20 讀溫度值 { Init_DS18B20()。 //初始化 WriteOneChar(0xcc)。 //跳過(guò)讀序列號(hào)的操作 WriteOneChar(0x44)。 //啟動(dòng)溫度轉(zhuǎn)換 初始化 DS18B20 稍微延時(shí),給硬件一點(diǎn)反應(yīng)時(shí)間 啟動(dòng)溫度轉(zhuǎn)換 發(fā)送跳過(guò)讀 ROM 的操作 開(kāi)始 主機(jī)發(fā)出復(fù)位脈沖以檢測(cè)從機(jī)是否有應(yīng)答 主機(jī)再次發(fā)出復(fù)位脈沖以檢測(cè)從機(jī)是否有應(yīng)答 發(fā)送跳過(guò)讀 ROM 的操作 讀取溫度寄存器的值,并經(jīng)過(guò)溫度轉(zhuǎn)換,返回溫度值。當(dāng) flagdi,keyxuan 標(biāo)志位允許時(shí),將數(shù)字溫度數(shù)據(jù)送到 LED 顯示屏上顯示 23 delay(125)。 //轉(zhuǎn)換需要一點(diǎn)時(shí)間,延時(shí) Init_DS18B20()。 //初始化 WriteOneChar(0xcc)。 //跳過(guò)讀序列號(hào)的操作 WriteOneChar(0xbe)。 //讀溫度寄存器(頭兩個(gè)值分別為溫度的低位和高位) tempL=ReadOneChar()。 //讀出溫度的低位 LSB tempH=ReadOneChar()。 //讀出溫度的高位 MSB //溫度轉(zhuǎn)換,把高低位做相應(yīng)的運(yùn)算轉(zhuǎn)化為實(shí)際溫度 temperature=((tempH*256)+tempL)*。 delay(200)。 return(temperature)。 } DS12C887 程序流程圖 時(shí)鐘芯片 DS12C887 程序流程圖如圖 所示: 圖 DS12C887 程序流程圖 時(shí)鐘芯片 DS12C887 程序 如下: void init() //初始化時(shí)鐘芯片 { write_ds(0x0A,0x20)。 write_ds(0x0B,0x26)。 //24 小時(shí)制, BCD 碼 read_ds(0x0C)。 } 步進(jìn) 電機(jī) 控制程序 當(dāng)光敏電阻檢測(cè)光線(xiàn)亮度達(dá)到給定值時(shí),步進(jìn)電機(jī)正轉(zhuǎn)將窗簾拉上,步進(jìn)電機(jī)正轉(zhuǎn)采用單雙八拍工作方式 AABBBCCCDDDA 即一個(gè)脈沖轉(zhuǎn) 度。 調(diào)用函數(shù)獲取時(shí)鐘信息 送數(shù)據(jù) 顯示 DS12C887 初始化 開(kāi)始 24 步進(jìn)電機(jī)正轉(zhuǎn) AAB 節(jié)拍的程序如下所示: void SetMotor() //步進(jìn)電機(jī)正轉(zhuǎn) { MotorDelay=Speed。 //調(diào)整速度 switch(MotorStep) { case 0: if(TIM) // A { A = 0。 b = 1。C = 1。D = 1。 MotorStep = 1。 TIM=0。 } break。 case 1: // AB if(TIM) { A = 0。b = 0。C = 1。D = 1。 MotorStep = 2。 TIM=0。 } break。 } 當(dāng)步進(jìn)電機(jī)反轉(zhuǎn)時(shí)將脈沖改為 ADADDCCCBBBA 即可。 25 5 智能家居控制系統(tǒng)調(diào)試 軟件調(diào)試 由于本系統(tǒng)模塊比較多,為方便程序的調(diào)試,先將各個(gè)模塊程序逐一寫(xiě)好后,調(diào)試。最后再將整個(gè)系統(tǒng)的程序整合到一起。 LED 點(diǎn)陣原理比較簡(jiǎn)單,但是由于要將日期、星期、時(shí)間和溫度全部顯示在點(diǎn)陣上,整個(gè)點(diǎn)陣顯示屏上總共有 16 個(gè)數(shù)字和 3 個(gè)漢字 ,建立字庫(kù)的難度比較大,為了方便調(diào)試并尋找字庫(kù)的規(guī)律以簡(jiǎn)化程序,先在年份的第一個(gè)數(shù)字位置上寫(xiě)好一個(gè)數(shù)字,顯示無(wú)誤之后,在 第二個(gè)數(shù)字的位置上寫(xiě)上相同的數(shù)字,尋找兩個(gè)數(shù)字字庫(kù)的規(guī)律。 通過(guò)對(duì)比最終采用每?jī)蓚€(gè) 8*8 的點(diǎn)陣構(gòu)成一個(gè) 8 列 16 行的點(diǎn)陣,顯示一個(gè)數(shù)字,每 4 個(gè) 8*8 的點(diǎn)陣構(gòu)成一個(gè) 16*16 的點(diǎn)陣顯示一個(gè)漢字,然后將日期,星期,時(shí)間和溫度分成三頁(yè)顯示,采用這種方案, 10 個(gè)阿拉伯?dāng)?shù)字字庫(kù)可以共用,避免 16 個(gè)數(shù)字需要建 160 個(gè)數(shù)字的字庫(kù)的現(xiàn)象發(fā)生,簡(jiǎn)化了程序。 LED 點(diǎn)陣調(diào)試完之后,再對(duì)數(shù)字時(shí)鐘和溫度傳感器進(jìn)行調(diào)試。 數(shù)字時(shí)鐘與數(shù)字式溫度傳感器功能強(qiáng)大,芯片簡(jiǎn)化了硬件電路設(shè)計(jì)的同時(shí)也無(wú)形加大了軟件編寫(xiě)的復(fù)雜程度,為方便程序的調(diào)試和提高 效率,故將軟件編寫(xiě)分模塊進(jìn)行,先將實(shí)時(shí)時(shí)鐘模塊一步步調(diào)試,按照時(shí)序圖將讀寫(xiě)函數(shù)寫(xiě)好后,通過(guò) LED 顯示, 第一次顯示無(wú)誤,但是經(jīng)過(guò)和實(shí)際時(shí)間對(duì)比,發(fā)現(xiàn)經(jīng)過(guò) 40 分鐘,該設(shè)計(jì)慢了 20 分鐘左右,重新檢測(cè)程序,發(fā)現(xiàn)由于為了提高單片機(jī)的運(yùn)行速度,每次顯示的時(shí)候,只從時(shí)鐘芯片讀取該頁(yè)面需要顯示的數(shù)據(jù),造成在除時(shí)間頁(yè)面之外,時(shí)鐘芯片沒(méi)有運(yùn)行,所以,當(dāng)顯示其他頁(yè)面時(shí),繼續(xù)從時(shí)鐘芯片讀取時(shí)分秒,但不顯示,結(jié)果時(shí)鐘準(zhǔn)確無(wú)誤。 調(diào)試無(wú)誤之后再加上溫度傳感器部分后發(fā)現(xiàn)在 顯示星期和溫度頁(yè)面時(shí),點(diǎn)陣閃爍,這是由于讀取溫度數(shù)據(jù)并轉(zhuǎn)換時(shí)需要延 時(shí),因此造成點(diǎn)陣閃爍,由于該溫度傳感器的作用是檢測(cè)當(dāng)前室內(nèi)溫度,室內(nèi)的溫度不可能頻繁變化,因此采用定時(shí)器定時(shí),每分鐘采集一次溫度傳感器的數(shù)據(jù) 。 最終解決了點(diǎn)陣閃爍的問(wèn)題。 加上按鍵調(diào)節(jié)時(shí)間,由于點(diǎn)陣無(wú)法像 LCD 一樣閃爍光標(biāo),故采用只顯示當(dāng)前要調(diào)節(jié)的數(shù)據(jù),其他數(shù)據(jù)不顯示,下載程序后發(fā)現(xiàn)該程序無(wú)法實(shí)現(xiàn)該功能,經(jīng)分析程序發(fā)現(xiàn)由于點(diǎn)陣需要循環(huán)點(diǎn)亮,常用的按鍵程序方案除非剛好在點(diǎn)陣顯示一個(gè)周期結(jié)束時(shí)按下按鈕,否則無(wú)法實(shí)現(xiàn),故改用外部中斷,當(dāng)檢測(cè)到中斷時(shí)中斷點(diǎn)陣的顯示,進(jìn)入調(diào)節(jié)界面。中斷點(diǎn)陣顯示進(jìn)入調(diào)節(jié)界面有兩種方案,一 種是即時(shí)中斷,立即進(jìn)入調(diào)節(jié)界面,但是當(dāng) 26 調(diào)節(jié)結(jié)束后,程序會(huì)繼續(xù)之前未顯示完的界面。另一種方案是等待第三個(gè)頁(yè)面顯示完再跳出調(diào)節(jié)界面,這種方案當(dāng)調(diào)節(jié)結(jié)束后,點(diǎn)陣會(huì)重新從第一個(gè)界面開(kāi)始顯示。最終選擇第二種方案。但是由于 切換屏幕的按鈕 采用中斷觸發(fā)方式,無(wú)法 進(jìn)行軟件 消抖, 造成 有時(shí)會(huì)出現(xiàn)按一下按鈕誤判為兩次的現(xiàn)象 ,最后切換屏幕的按鈕采用硬件消抖,另外兩個(gè)按鈕硬件消抖和軟件消抖同時(shí)采用 。 在軟件編寫(xiě)的過(guò)程中遇到非常多的問(wèn)題,遠(yuǎn)遠(yuǎn)不止這些,在春節(jié)期間也花費(fèi)了大量的時(shí)間去不斷修改,以上只是列舉些有代表性的問(wèn)題作為反映。 硬件調(diào)試 由于大三時(shí)參加過(guò) “飛思卡爾 ”杯智能車(chē)競(jìng)賽,我的任務(wù)是寫(xiě)程序,調(diào)試程序,硬件由隊(duì)友全權(quán)負(fù)責(zé),經(jīng)過(guò)九個(gè)月的反復(fù)鍛煉,對(duì)程序的編寫(xiě)調(diào)試比較熟練,故而忽略了硬件的制作難度,期末考試結(jié)束后計(jì)劃三天完成整個(gè)設(shè)計(jì)。將所有硬件一次性焊好之后,直接編寫(xiě) 步進(jìn)電機(jī) 程序并下載進(jìn)行調(diào)試,結(jié)果 步進(jìn)電機(jī) 無(wú)法正常轉(zhuǎn)動(dòng),經(jīng)過(guò)對(duì)硬件和程序的反復(fù)檢查,無(wú)法確定是硬件還是軟件原因,最終由于工作原因,只有春節(jié)過(guò)后再?gòu)念^開(kāi)始。 吸取了第一次的教訓(xùn),首先將單片機(jī)最小系統(tǒng)焊接好,調(diào)試無(wú)誤后,再逐一焊接其他模塊,逐一編寫(xiě)實(shí)現(xiàn)該模塊簡(jiǎn)單功能的程序進(jìn) 行調(diào)試。最后將所有調(diào)試無(wú)誤的硬件集成,由于硬件各模塊已經(jīng)能夠?qū)崿F(xiàn)基本功能,故后期軟件和硬件一起調(diào)試時(shí),系統(tǒng)出現(xiàn)問(wèn)題一般可以歸結(jié)于軟件編寫(xiě)錯(cuò)誤。 硬件調(diào)試主要是調(diào)試各部分的焊接是否合格和各芯片的輸出輸入電壓是否符合設(shè)計(jì)要求,最后測(cè)試各硬件部分能否完成設(shè)計(jì)功能。因此把硬件調(diào)試按照以下兩部分分步來(lái)進(jìn)行: ( 1)測(cè)試所有焊點(diǎn)是否有短路和虛焊的現(xiàn)象存在 。 ( 2)通電測(cè)試所有硬件芯片的輸入輸出電壓是否在設(shè)計(jì)要求的范圍內(nèi) 。 短路與虛焊檢測(cè) 檢測(cè)工具為萬(wàn)用表,使用萬(wàn)用表的短路報(bào)警功能,逐個(gè)測(cè)試相臨的兩個(gè)焊點(diǎn)檢測(cè) 是否短路。按照電路圖檢測(cè)需要連接的兩點(diǎn)是否短路來(lái)檢測(cè)是否已經(jīng)連接上,以此來(lái)檢測(cè)虛焊的情況。檢測(cè)和修改完成后為下一步通電檢測(cè)排除了短路的危險(xiǎn)和由于虛焊引起檢測(cè)結(jié)果不真實(shí)的麻煩。 27 上電測(cè)試 由于系統(tǒng)測(cè)試時(shí)是采用適配器為系統(tǒng)電源,所以電源輸入都為 5V。顯示系統(tǒng)中單片機(jī)、譯碼器,鎖存器,驅(qū)動(dòng)電路的電源電壓均要求為 5V 所以可同時(shí)直接接入。 上電后首先觀察電路是否有過(guò)熱,異味,冒煙的現(xiàn)象出現(xiàn)。經(jīng)過(guò)觀察,沒(méi)有這些現(xiàn)象出現(xiàn)。然后測(cè)試各器件的電源,接地及一些電平應(yīng)該固定的端口的電壓。測(cè)試的結(jié)果為:各器件電源端在 ~ 之間滿(mǎn)足器件的電源電壓要求,單片機(jī)端口在未接負(fù)載時(shí)端口電壓為 。 最終最小系統(tǒng)和時(shí)鐘芯片模塊正面圖如圖 所示: 圖 最小系統(tǒng)和時(shí)鐘芯片模塊正面圖 28 背面圖如圖 所示: 圖 最小系統(tǒng)和時(shí)鐘芯片模塊背面圖 29 6 結(jié) 論 伴隨著信息化時(shí)代的到來(lái),人們的生活速度以及對(duì)生活質(zhì)量的追求也在大幅提高,電子產(chǎn)品智能化速度的加快,也使人們的工作、生活和通訊的關(guān)系日益密切。針對(duì)人們對(duì)智能化的需求以及對(duì)舒適生活的追求,智能窗簾改變了傳 統(tǒng)窗簾的劣勢(shì),它可以根據(jù)外界光照強(qiáng)度的不同而自動(dòng)開(kāi)閉窗簾。 本次設(shè)計(jì)系統(tǒng)的介紹了智能家居控制系統(tǒng)的硬件電路設(shè)計(jì)以及軟件設(shè)計(jì)。在總體方案設(shè)計(jì)中,以光敏電阻做傳送信號(hào)的傳感器,用 步進(jìn)電機(jī) 作為信號(hào)輸出的執(zhí)行元件,STC89C52RC 單片機(jī)作為主要的控制元器件,用 DS12C887 時(shí)鐘芯片制作數(shù)字時(shí)鐘,又添加了溫度傳感器,用 LED 點(diǎn)陣顯示時(shí)間和溫度。本系統(tǒng)主要實(shí)現(xiàn)以下幾點(diǎn)功能: ( 1) 根據(jù)光線(xiàn)強(qiáng)度調(diào)整窗簾的開(kāi)閉 。 ( 2) 具有溫度、日期、星期、時(shí)間顯示功能。 ( 3) 具有手動(dòng)、自動(dòng)切換功能,用戶(hù)可以根據(jù)實(shí)際情況切換窗簾的控制模式。 本次畢 業(yè)設(shè)計(jì)的整個(gè)研究與設(shè)計(jì)過(guò)程包括選題、設(shè)計(jì)以及完善等。首先,在選題方面查閱了很多與題目有關(guān)的資料和課題,并且制定設(shè)計(jì)方案,進(jìn)行設(shè)計(jì)的總體規(guī)劃,然后將這些方案落實(shí)到設(shè)計(jì)環(huán)節(jié)中。其次,在制定的方案基礎(chǔ)上運(yùn)用所學(xué)的知識(shí)對(duì)硬件以及軟件進(jìn)行設(shè)計(jì),并對(duì)軟硬件聯(lián)合調(diào)試。最后,對(duì)設(shè)計(jì)內(nèi)容進(jìn)一步修繕,以求達(dá)到最佳設(shè)計(jì)效果。 30 參考文獻(xiàn) [1] 周敬 .基于單片機(jī)的窗簾智能控制系統(tǒng)設(shè)計(jì) [J].天津科技 .2020:(02):5860. [2] 王春武 ,劉春玲 .基于單片機(jī)的無(wú)線(xiàn)智能窗簾控制器的設(shè)計(jì) [J].吉林師范大學(xué)學(xué)報(bào) (自然科學(xué)版 ).2020:(01):9395. [3] 張毅剛 ,彭喜元 .單片機(jī)原理與應(yīng)用設(shè)計(jì) [M].北京 :電子工業(yè)出版社 ,2020:58
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1