時鐘計時器的設(shè)計課程設(shè)計_第1頁
時鐘計時器的設(shè)計課程設(shè)計_第2頁
時鐘計時器的設(shè)計課程設(shè)計_第3頁
時鐘計時器的設(shè)計課程設(shè)計_第4頁
時鐘計時器的設(shè)計課程設(shè)計_第5頁
已閱讀5頁,還剩13頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、1. 課題介紹設(shè)計指標(biāo) 時鐘計時器要求用單片機(jī)和6位led數(shù)碼管顯示時、分、秒,以24小時計時方式進(jìn)行,能整點提醒,使用按鍵開關(guān)可實現(xiàn)時、分調(diào)整,秒表/時鐘功能轉(zhuǎn)換,省電及定時設(shè)定提醒功能。功能 該設(shè)計具有一般數(shù)字時鐘擁有的功能,24小時的時鐘顯示,年月日的顯示,溫度的測量及顯示,鬧鐘功能等,屬于一款基于單片機(jī)的多功能數(shù)字時鐘。創(chuàng)新點 該數(shù)字時鐘屬于一款多功能家用數(shù)字時鐘,可以滿足大部分的家庭生活使用,在我的設(shè)計下,數(shù)字時鐘被寄予不一樣的功能。首先,數(shù)字時鐘是基于單片機(jī),具有低功耗、穩(wěn)定性高等特點。時鐘自帶ds18b20溫度傳感器,可以實時監(jiān)測室內(nèi)溫度并在lcd顯示屏上。時鐘內(nèi)存有10首常用的

2、歌,可以通過按鍵或遙控器選擇播放。該時鐘可以通過遙控器進(jìn)行紅外線遙控。通過遙控器還可以進(jìn)行對家用電器開關(guān)的控制。設(shè)想在遙控器上也采用單片機(jī),并在遙控內(nèi)集成超聲波測距,實現(xiàn)一些精度不需要太高的距離測量。如果再發(fā)散點,我希望我的作品可以紅外測體溫,火災(zāi)報警,煤氣泄漏檢測,漏電報警等2. 摘要本次課程設(shè)計主要涉及測控電路以及系統(tǒng)的應(yīng)用,減少干擾,抗干擾是我們設(shè)計中的重點。如何濾波、檢波、輸入輸出阻抗的設(shè)計,是電流、電壓還是功率匹配?復(fù)位電路的rc的作用及接入的大小等設(shè)計采用集成度很高的單片機(jī),很方便設(shè)計和開發(fā),并且很多的仿真軟件可以對單片機(jī)進(jìn)行仿真,就可以做到在電腦上進(jìn)行軟件仿真和硬件模擬仿真,提高

3、開發(fā)效率和成功率。設(shè)計中集成了溫度傳感器,距離傳感器,紅外遙控器,lcd液晶顯示器等元器件,以支持其強(qiáng)大的硬件功能。配合測控系統(tǒng)和測控電路的應(yīng)用,提高系統(tǒng)的穩(wěn)定性以及測量的精度,減少誤差以及環(huán)境的影響。目錄1硬件設(shè)計及描述1.1總體描述1.2 鍵盤1.3 lcd顯示屏1.4溫度傳感器、音樂播放器1.5紅外遙控電路1.6超聲波測距1.7控制家電的開關(guān)1.8原理圖匯總2軟件設(shè)計及描述2.1數(shù)字時鐘系統(tǒng)的設(shè)計2.2紅外遙控的軟件設(shè)計2.3音樂播放軟件設(shè)計2.4溫度測量軟件設(shè)計2.5 超聲波測速,控制家電開關(guān)3.總結(jié)1硬件設(shè)計及描述1.1總體描述 該設(shè)計實現(xiàn)的是數(shù)字時鐘,具有遙控功能,溫度測量,鬧鐘,

4、播放歌曲,超聲波測距。所以需要很多的硬件支持,對于硬件的選擇也是需要認(rèn)真的考慮。輸入的要求,輸出信號的形式、大小、適不適合作為下一個輸入,小了就需要放大,有干擾就要進(jìn)行濾波。1.2 鍵盤 總共加入了16個按鍵,包括10首歌曲的選擇鍵,1個模式選擇鍵,兩個加減功能鍵,1個溫度小時鍵,一個音樂播放/停止鍵,一個超聲波測距功能鍵。圖1-1 矩陣式鍵盤 鍵盤采用矩陣式設(shè)計,節(jié)省接口,并且方便編程掃描設(shè)計。單片機(jī)只需要掃描p1口的狀態(tài)就可以知道對應(yīng)的鍵值。1.3 lcd顯示屏 我設(shè)計的數(shù)字時鐘需要更多的功能,也就需要更多的顯示,led數(shù)碼管已經(jīng)不能滿足要求。因此我選用lcd12864,可以實現(xiàn)漢字和數(shù)字

5、的顯示,也更多的被我們所使用。如圖1-2所示為lcd12864的仿真圖形,原理圖因為時間原因不自己做封裝,只能用其他的代替原理圖如圖1-3所示。圖1-2 lcd12864模擬圖圖1-3 lcd12864原理圖1.4溫度傳感器、音樂播放器 因為該時鐘的溫度測量功能,所以必須采用溫度傳感器,我選用廉價而且常用的ds18b20來進(jìn)行溫度信號的采集,其輸出的16位2進(jìn)制數(shù)更是方便了單片機(jī)的信號處理。其原理圖如1-4所示。圖1-4 溫度傳感器原理圖對于音樂播放,設(shè)計處于初始階段,對于硬件的要求不是很高,至于功能的實現(xiàn),一般的蜂鳴器即可滿足使用要求,設(shè)計的后期可以考慮使用專業(yè)的語音芯片,這樣可以有更好的音

6、樂體驗。其原理圖如1-5所示圖1-5 蜂鳴器原理圖1.5紅外遙控電路 既然可以通過遙控器進(jìn)行遙控,那么就得需要紅外發(fā)射和接收電路。同樣對兩個單片機(jī)也要有要求,遙控器要編碼,數(shù)字時鐘需要解碼,這樣才能實現(xiàn)控制。對于這部分的難點在于是采用中斷方式還是掃描方式。其發(fā)射和接收電路如圖1-6和1-7所示圖1-6紅外線發(fā)射電路圖1-7紅外線接收電路1.6超聲波測距 為了方便使用,讓遙控器不在功能單一,不在被零落。我設(shè)計在遙控器中加入超聲波測距,這樣測身高不在需要尺子了,一個遙控器就可以解決了。只需在遙控器上集成超聲波發(fā)射和接收電路,就可以實現(xiàn)精確到cm的距離測量,方便生活。時間倉促沒有原理圖。1.7控制家

7、電的開關(guān)因為家中的電器比較多,為了能使用少的端口控制多的開關(guān),我決定使用74ls138和繼電器的組合。這樣就可以安全并且方便的控制家中的電器了。原理圖如1-8所示圖1-8單片機(jī)控制繼電器1.8原理圖匯總 時間比較少完成的比較少,下面是所有的原理圖:圖1-9 原理圖1圖1-10 原理圖2圖1-11 原理圖32軟件設(shè)計及描述2.1數(shù)字時鐘系統(tǒng)的設(shè)計 (1)總體描述1單片機(jī)采用at89c51型;2. 時間顯示電路:采用lcd12864液晶顯示,p0口驅(qū)動顯示數(shù)字,p2口作為掃描信號;3. 時間設(shè)置電路,矩陣鍵盤的1,2,3鍵實現(xiàn)調(diào)模式,時間加和時間減;4. 鬧鐘:p3.7口接揚聲器。 (2)系統(tǒng)總體

8、框圖圖2-1數(shù)字顯示系統(tǒng)框圖(3)軟件設(shè)計流程圖開始聲明變量初始化設(shè)置中斷循環(huán)停滯等待按鍵按下顯示時間time1重設(shè)定時量1000次second加一大于59minute加一大于59hour加一hou=hour%24滾動顯示學(xué)號輸出數(shù)字信號輸出掃描信號圖2-2 數(shù)字時鐘軟件設(shè)計流程圖(4)函數(shù)模塊及功能 1. void display_lcd()學(xué)號的滾動顯示函數(shù); 2. void display()顯示時間以及顯示調(diào)節(jié)時間和鬧鐘時間的閃爍; 3void key_prc()鍵盤功能函數(shù),實現(xiàn)需要的3個按鍵有關(guān)的模式轉(zhuǎn)換以及數(shù)字加一減一; 4. void init()初始化設(shè)置中斷; 5. voi

9、d time1() interrupt 3定時器1中斷函數(shù),實現(xiàn)計時功能。2.2紅外遙控的軟件設(shè)計 此部分的控制軟件主要分為單片機(jī)初始化程序、定時服務(wù)程序、紅外發(fā)射編碼和紅外接收解碼程序等模塊。(1)定時/計數(shù)器應(yīng)用 at89c51單片機(jī)內(nèi)部設(shè)有兩個16位可編程的定時/計數(shù)器,簡稱定時器0和定時器1,分別用t0和t1表示。其功能同一般定時計數(shù)器,主要作用是:第一,作為一段特定時間長短的定時;第二,可以計算由t1或t0引腳輸入的脈沖數(shù),前者在應(yīng)用上可以產(chǎn)生正確的時間延遲及定時去執(zhí)行中斷服務(wù)程序,而后者則是計數(shù)器或者計頻器的設(shè)計。(2)遙控碼的發(fā)射 當(dāng)某個操作按鍵按下時,單片機(jī)先讀出鍵值,然后根據(jù)

10、鍵值設(shè)定遙控碼的脈沖個數(shù),再調(diào)制成40khz方波由紅外線發(fā)光管發(fā)射出去13。通常,紅外遙控是將遙控信號(二進(jìn)制脈沖碼)調(diào)制在40khz的載波上,經(jīng)緩沖放大后送至紅外發(fā)光二極管,轉(zhuǎn)化為紅外信號發(fā)射出去的。為了提高抗干擾性能和降低電源消耗,將上述的遙控編碼脈沖對頻率為40khz(周期為26us)的載波信號進(jìn)行脈幅調(diào)制(pam),再經(jīng)緩沖放大后送到紅外發(fā)光管,將遙控信號發(fā)射出去。紅外信號發(fā)射過程:首先裝入發(fā)射脈沖個數(shù)(發(fā)射時為3ms脈沖,停發(fā)時為1ms脈沖),此時若發(fā)射脈沖個數(shù)為1則返回主程序,若不為1則發(fā)1ms脈沖,然后停發(fā)1ms脈沖,這樣便結(jié)束整個發(fā)射過程.圖2-3遙控發(fā)射器遙控碼發(fā)射程序流程圖

11、(3)紅外接收遙控接收部分的主程序及初始化及延時過程如下:首先初始化,然后判斷是否有鍵按下,若有則數(shù)碼管顯示數(shù)據(jù),并發(fā)送相應(yīng)信號,;若無鍵按下,則返回 當(dāng)紅外線接收器輸出脈沖幀數(shù)據(jù)時,第一位碼的低電平將啟動中斷程序,實時接收數(shù)據(jù)幀。在數(shù)據(jù)幀接收時,將對第一位(起始位)碼的碼寬進(jìn)行驗證。若第一位低電平碼的脈寬小于2ms,將作為錯誤碼處理。當(dāng)間隔位的高電平脈寬大于3ms時,結(jié)束接收,然后根據(jù)累加器a中的脈沖個數(shù),執(zhí)行相應(yīng)輸出口的操作圖2-4遙控接收器中斷程序流程圖(4)按鍵抖動鍵盤一般是由一組機(jī)械按鍵按照一定的規(guī)律組合而成,通過按鍵的通、斷作用輸入開關(guān)電壓信號。按鍵由斷開到閉會及由閉合到斷開時,由

12、于機(jī)械觸點的彈性作用,按鍵的動作不是立刻完成的,在閉合及打開的瞬間有機(jī)械抖動的發(fā)生,抖動時間一般為510ms,表現(xiàn)在輸入電壓信號上為輸入信號是抖動的不穩(wěn)定的電平信號。硬件消抖電路解決了鍵抖動問題,但當(dāng)所需按鍵比較多時,硬件消抖電路將變得復(fù)雜,成本也比較高。而這時就可以采用軟件消抖的方法。軟件消抖的基本原理是當(dāng)?shù)谝淮螜z測到有鍵按下時,根據(jù)鍵抖動時間的統(tǒng)計規(guī)律先采用軟件延時的方法延時一段時間(一般可取10ms20ms),然后再確認(rèn)鍵是否仍保持閉合狀態(tài),如仍保持閉合狀態(tài)則鍵真正被按下,此時可讀取鍵值,否則可視為干擾,對其不予理睬。采用軟件消抖方法可省去硬件消抖電路,可鍵盤的工作速度將被降低。在此設(shè)計

13、中使用了軟件消抖,采用軟件延時的方法延時一段時間再確認(rèn)鍵是否仍保持閉合狀態(tài)。2.3音樂播放軟件設(shè)計音樂播放是提前在單片機(jī)里儲存好10首歌,當(dāng)鍵盤被按下后,根據(jù)鍵值去播放對應(yīng)的歌曲,10個鍵對應(yīng)10個不同的歌曲因為單片機(jī)的io口驅(qū)動能力不夠讓蜂鳴器發(fā)出聲音,所以我們通過三極管放大驅(qū)動電流,從而可以讓蜂鳴器發(fā)出聲音,你要是輸出高電平,三極管導(dǎo)通,集電極電流通過蜂鳴器讓蜂鳴器發(fā)出聲音,當(dāng)輸出低電平時,三極管截止,沒有電流流過蜂鳴器,所以就不會發(fā)出聲音。lcd12864可以按要求顯示歌曲的名稱和歌詞,提高用戶的體驗。2.4溫度測量軟件設(shè)計系統(tǒng)程序主要包括主程序,讀出溫度子程序,溫度轉(zhuǎn)換命令子程序,計算

14、溫度子程序,顯示數(shù)據(jù)刷新子程序,按鍵掃描處理子程序等。 (1)讀出溫度子程序 讀出溫度子程序的主要功能是讀出ram中的9字節(jié),在讀出時需進(jìn)行crc校驗,校驗有錯時不進(jìn)行溫度數(shù)據(jù)的改寫。其程序流程圖如圖2-5示 (2)溫度轉(zhuǎn)換命令子程序溫度轉(zhuǎn)換命令子程序主要是發(fā)溫度轉(zhuǎn)換開始命令,當(dāng)采用12位分辨率時轉(zhuǎn)換時間約為750ms,在本程序設(shè)計中采用1s顯示程序延時法等待轉(zhuǎn)換的完成。溫度轉(zhuǎn)換命令子程序流程圖如上圖,圖2-6所示y發(fā)ds18b20復(fù)位命令發(fā)跳過rom命令發(fā)讀取溫度命令讀取操作,crc校驗9字節(jié)完?crc校驗正?確?移入溫度暫存器結(jié)束nny圖2-5讀溫度流程圖發(fā)ds18b20復(fù)位命令發(fā)跳過rom命令發(fā)溫度轉(zhuǎn)換開始命令 結(jié)束圖2-6溫度轉(zhuǎn)換流程圖(3)計算溫度子程序計算溫度子程序?qū)am中讀取值進(jìn)行bcd碼的轉(zhuǎn)換運算,并進(jìn)行溫度值正負(fù)的判定,其程序流程圖如圖2-7所示。(4)顯示數(shù)據(jù)刷新子程序顯示數(shù)據(jù)刷新子程序主要是對分離后的溫度顯示數(shù)據(jù)進(jìn)行刷新操作,當(dāng)標(biāo)志位位為1時將符號顯示位移入第一位。程序流程圖如圖2-8。 開始溫度零下?溫度值取補(bǔ)碼置“1”標(biāo)志計算小數(shù)位溫度bcd值 計算整數(shù)位溫度bcd值 結(jié)束置“0”標(biāo)志ny圖2-7計算溫度流程圖溫度數(shù)據(jù)移入顯示寄存器分離顯示溫度yn標(biāo)志位為1?y最高為顯示分理出的數(shù)據(jù)最高位顯示“” 結(jié)束 圖2-8顯示數(shù)據(jù)刷

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論