




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、微機原理與單片機接口技術課程設計報告基于51單片機的簡易電子時鐘設計摘要今天,電子時鐘是生活中不可或缺的一部分。電子時鐘通過數碼管顯示,具有整點報時等功能,可以使得我們的生活變得更加有序。電子時鐘也通過不斷地改進,變得功能越來越強大。本次設計的電子時鐘利用單片機STC89C5進行控制的,利用單片機1自身的定時器功能,采用數碼管顯示,可對電子時鐘進行調整校準。此設計具有相當重要的現實意義和實用價值?;趩纹瑱CSTC89C5的電子時鐘,采用數碼管顯示“時“分“秒”1而且可用按鍵進行調整校準。此次設計與傳統的機械表相比,它具有走的更精準,顯示更直觀等特點,而且單片機的數字時鐘具有靈活編程,便于功能擴
2、充等特點。本次所設計主要有三個模塊:顯示模塊,按鍵模塊,鬧鈴模塊。該時鐘采用STC89C5單片機自身定時器進行計時,按鍵模塊采用獨立式鍵1盤(4個按鍵),鬧鈴部分由8550三極管和蜂鳴器構成,顯示時、分、秒用兩個四位共陰極數碼管顯示,具有可調整時間功能和設定鬧鐘功能,在設計過程中硬件和軟件應同時進行。關鍵詞 : 電子時鐘,單片機,鬧鐘,蜂鳴器IVSIMPLE ELECTRONIC CLOCK DESIGN BASED ON 51MCUABSTRACTToday, the electronic clock is an integral part of life. Through the digi
3、tal display electronic clock, with the whole point timekeeping function, can make our life more orderly. The electronic clock also through continuous improvement, has become more and more powerful.The design of the electronic clock using STC89C51 MCU to control the use of single-chip, self timer fun
4、ction, the use of digital tube display, can adjust the calibration of the electronic clock. Has very important realistic significance and practical value of this design.The electronic clock based on MCU STC89C51, using digital tube display "when""seconds" and the button can be us
5、ed to adjust the calibration. And the design of the traditional mechanical watch, it has to go more accurate, more intuitive display characteristics, and the digital clock has flexible programming, easy to function expansion and so on.This design has three main modules: the display module, keyboard
6、module, alarm module. The clock uses STC89C51 microcontroller timer timing, key module with separate keyboard (4 buttons), the alarm is composed of 8550 transistors and a buzzer, when the display is divided by two seconds, four common cathode digital display, which can adjust the time and set the al
7、arm function, hardware and software in the design process should be carried out at the same time.Key Words: electronic clock, microcontroller, alarm clock, a buzzer微機原理與單片機接口技術課程設計報告- 1 - 1 - 1 - 2 - 2 - 3 - 4 - 5 - 6 - 7 - 7 - 8 - 8 - 9 - 11 - 11 - 11 - 12 - 13 - 13 - 13 - 14 - 14 - 14 - 14 - 20 -
8、21 - 32 -第一章 緒論 -1 -1.1 課題背景及意義1.2 課題內容1.2.1 題目及要求1.2.2 主要部分第二章 方案 -2 -2.1 功能要求2.3 數碼管顯示方案第三章 電子時鐘的硬件設計- 4 -3.1 電子時鐘的組成3.2 單片機最小系統圖3.3 STC89C51引腳功能3.4 數碼管顯示模塊3.5 鬧鈴部分3.6 按鍵模塊第四章 電子時鐘的軟件設計- 8 -4.1 電子時鐘程序流程框圖4.2 按鍵調整流程圖4.3 子程序的設計4.3.1 數碼管顯示模塊4.3.2 按鍵子模塊4.3.3 主程序 第五章 硬件的制作與測試分析- 13 -5.1 電子時鐘的硬件制作5.2 硬件
9、測試5.3 軟件調試5.4 測試結果分析與結論5.4.1 數碼管測試結果分析5.4.2 按鍵測試結論5.4.3 測試結論總結與致謝- 16 -參考文獻- 18 -附錄 -20 -附錄一 分組表 附錄二 程序 附錄三 電子時鐘實物圖微機原理與單片機接口技術課程設計報告微機原理與單片機接口技術課程設計報告第一章 緒論1.1 課題背景及意義二十一世紀的今天,電子時鐘已經融入到千千萬萬戶家庭中,它已經成為了人們生活中不可或缺的一部分。電子時鐘通過數碼管顯示,使其直觀明了,更能實現整點報時等功能,使其更符合當今人們的生活需求,電子時鐘的出現使人們的生活更加的有條不紊。目前市場上的電子時鐘很多,為了迎合市
10、場的需要,滿足廣大的消費人群,人們通過自己的DIY設計讓電子時鐘富有創意。電子時鐘通過不斷地改進,使其更具有市場。本次設計的電子時鐘利用單片機STC89C51進行控制的,利用單片機自身的定時器功能,采用數碼管顯示,可對電子時鐘進行調整校準。電子時鐘既可廣泛應用于家庭, 也可應用于銀行、郵電、 賓館、 醫院、 學校、企業、商店等相關行業的大廳,以及單位會議室、門衛等場所。因而,此設計具有相當重要的現實意義和實用價值。1.2 課題內容1.2.1 題目及要求基于 51 單片機的電子時鐘設計與制作。利用單片機的計時、校時等功能,設計并制作出一個以單片機STC89C51為核心組件,采用數碼管顯示“時“分
11、“秒”的電子時鐘,要求能正常顯示,并可用按鍵進行調整校準。此次設計與傳統的機械表相比, 它具有走的更精準,顯示更直觀等特點,同時具有不同的操作方式,讓此次設計更符合現代生活的需求,而且單片機的數字時鐘具有編程靈活,便于功能擴充等特點。1.2.2 主要部分本次設計可分為兩部分:軟件部分、硬件部分。硬件部分包括: STC89C51 單片機模塊,數碼管模塊,蜂鳴器模塊,按鍵模塊,鬧鈴模塊。通過正確連接電路以及單片機的編程來實現上述要求。軟件部分的主程序包括:數碼管顯示程序,按鍵控制程序。使其實現時分秒正常顯示,并可通過按鍵進行調試功能。第二章 方案2.1 功能要求1、能顯示時、分、秒2、通過按鍵可以
12、對電子時鐘進行調整校準3、可實現設定鬧鐘并報警功能4、上電后,電子鐘顯示“12-59-00 ”,蜂鳴器同時發出聲音2.2 數字時鐘方案在本次設計中,數字時鐘是最主要的部分:采用單片機本身的定時器進行計時,來實現數字時鐘功能。原理為:在單片機內部存儲器設三個字節分別存放時鐘的時、分、秒信息。利用定時器與軟件結合實現1秒定時中斷,每產生一次中斷,存儲器內相應的秒值加1 ;若秒值達到60,則將其清零,并將相應的分字節值加1;若分值達到60,則清零分字節,并將時字節值加1;若時值達到24,則將十字節清零。該方案具有硬件電路簡單的特點。但由于每次執行程序時,定時器都要重新賦初值,所以該時鐘精度不高。而且
13、,由于是軟件實現,當單片機不上電,程序不執行時,時鐘將不工作。2.3 數碼管顯示方案采用動態顯示。所謂動態顯示就是一位一位的輪流點亮各個位,對于顯示器的每一位來說,每隔一段時間點亮一次。利用人的視覺暫留功能可以看到整個顯示,但必須保證掃描速度足夠快,字符才不閃爍。顯示器的亮度既與導通電流有關,也于點亮時間與間隔時間的比例有關。調整參數可以實現較高穩定度的顯示。動態顯示節省了I/O 口,降低了能耗。- 23 -第三章 電子時鐘的硬件設計3.1 電子時鐘的組成本次設計制作的電子時鐘組成部分為:STC89C51主控制模塊,按鍵模塊,復位電路,數碼管顯示模塊,鬧鈴模塊。組成圖如圖3-1 所示。數碼管顯
14、示模塊STC89C51主控制模塊復位電路按鍵模塊圖 3.1 電子時鐘系統組成3.2 單片機最小系統圖單片機最小系統又稱為最小應用系統,即用最少的元器件組成單片3.2 所示為單片機最小系統圖。3.2 單片機最小系統圖3.3 STC89C51 引腳功能圖 3.3 STC89C51 引腳如圖 3.3 所示,STC89C51主要管腳有:XTAL1( 19 腳)和XTAL2( 18腳)為振蕩器輸入輸出端口,外接12MHz 晶振。RST/Vpd( 9 腳)為復位輸入端口,外接電阻電容組成的復位電路。VCC( 40 腳) 和 VSS( 20 腳)為供電端口,分別接+5V電源的正負端。P0P3 為可編程通用I
15、/O 腳,其功能用途由軟件定義,在本設計中,P0 端口( 3239 腳)被定義為功能控制端口,分別與其相應功能管腳相連接,13 腳定義為IR 輸入端。3.4 數碼管顯示模塊圖 3.4 數碼管顯示模塊如圖 3.4 所示, 在這次的設計中,數碼管接在單片機的P0和 P2口,P0控制段選信號,P2控制位選信號。通過位選信號依次點亮各個數碼管,由于人眼有視覺暫留的特性,因此如果第一個數碼管滅和第二個數碼管亮之間的時間足夠短,人眼是感覺不出數碼管的變化的。3.5 鬧鈴部分動設置來實現鬧鈴功能。圖 3.5 鬧鈴圖3.5 所示,主要由8550 三極管和蜂鳴器構成,可通過手3.6 按鍵模塊如圖 3.6 所示,
16、本次設計是采用四個獨立式按鍵,分別為“時間設置”鍵, “鬧鐘設置”鍵, “ +”鍵, “ - ”鍵, ,通過這四個按鍵來調整電“鬧鐘設置”“+”“ -”圖 3.6 按鍵圖第四章 電子時鐘的軟件設計本次設計主要是對單片機,數碼管,按鍵和鬧鈴部分進行編寫的。4.1 電子時鐘程序流程框圖圖 4.1 系統程序流程框圖 本次的設計主程序是根據每個模塊的特性來進行編寫,先對各個模塊進行初始化,然后再按照各自不同來分模塊編寫,最后得出總的流程圖。4.2 按鍵調整流程圖圖 4.2 按鍵調整流程圖進入程序后,先將單片機,數碼管,按鍵等進行初始化,數碼管顯示固定數值“12-59-00 ”,程序開始等待按鍵按下,當
17、有按鍵按下,單片機檢測一次,確定按下,單片機調用程序,同時數碼管刷新一次,顯示當前操作結果。完后,程序返回按鍵等待,如此循環執行。4.3 子程序的設計4.3.1 數碼管顯示模塊4 位獨立數碼管顯示,電路相對簡單,主要特點,簡單易用,顯示清晰,性價比高。數碼管顯示程序:(見附錄2.1 )4.3.2 按鍵子模塊本次設計是采用四個獨立式按鍵,分別為“設置”鍵, “ +”鍵,“ -鍵, “復位” 鍵, 通過這四個按鍵來調整電子時鐘的時間顯示和鬧鐘響應。按鍵操作子程序:(見附錄2.2)當用手按下一個鍵時,如圖4.3 所示,往往按鍵在閉合位置和斷開位置之間跳幾下才穩定到閉合狀態的情況;在釋放一個鍵時,也回
18、會出現類似的情況。這就是抖動。抖動的持續時間隨鍵盤材料和操作員而異,不過通??偸遣淮笥?0ms。很容易想到,抖動問題不解決就會引起對閉合鍵的識別。用軟件方法可以很容易地解決抖動問題,這就是通過延遲10ms來等待抖動消失,這之后,在讀入鍵盤碼。此次設計過程中電路的工作原理:數字電子鐘是一個將“時” , “分”, “秒”顯示于人的視覺器官的計時裝置。它的計時周期為24 小時,顯示滿刻度為23 時 59 分 59 秒,另外還有校時功能。因此, 一個基本的數字鐘電路主要由顯示器 “時”,“ 分” ,“秒”和單片機,還有校時電路組成。 8 個數碼管的段選接到單片機的P0口, 位選接到單片機的P2口。 數
19、碼管按照數碼管動態顯示的工作原理工作,將標準秒信號送入“秒單元”, “秒單元”采用 60 進制計數器,每累計60 秒發出一個“分脈沖”信號,該信號將作為“分單元”的時鐘脈沖。 “分單元”也采用 60 進制計數器,每累計60 分鐘,發出一個“時脈沖” 信號, 該信號將被送到 “時單元”。 “時單元”采用 24 進制計時器,可實現對一天24 小時的累計。顯示電路將“時”、 “分”、 “秒”通過七段顯示器顯示出來。校時電路時用來對“時”、 “分”、 “秒”顯示數字進行校對調整,按一下設置鍵進入時設置,按下“+”時加一次,按下“-”鍵,時減一次,同理,按設置鍵兩次即進行分調整,按下三次進行秒調整。4.
20、3.3 主程序(見附錄2.3 )第五章 硬件的制作與測試分析5.1 電子時鐘的硬件制作此次的電子時鐘是根據所設計的原理圖,把每個部分都焊接好,連接起來,然后接入電源,上電,最后將所編寫的程序燒入單片機中。5.2 硬件測試電子時鐘的硬件相對簡單,只用幾個模塊構成,但在檢查電路的時候容易因掉以輕心而出錯,主要檢查電路連接是否有短路或者短路現象(通過萬用表檢測),元器件的型號和規格是否使用合理。其次,檢測電源。檢測方法:一種是斷開穩壓電源的輸出端,檢查空載時電源工作情況;另一種是拔下電源上的主要集成芯片,檢查電源的負載能力(用假負載),確保電源無故障并性能符合設計要求。檢測完電路,確保其不發生電路故
21、障的前提下才可上電。5.3 軟件調試電子時鐘雖然看著硬件比較少,但是寫起程序來并非那么簡單,在設計階段,因為我們是剛入手單片機沒多久的,所以對挺多的程序并不是很了解,我們查閱了很多資料,研究了很多關于按鍵,數碼管等方面的內容,我們通過參考查閱到的資料,根據自己的刪改添加終于完成了自己的程序。在電子時鐘的程序設計階段,讓數碼管顯示“12-59-00 ”,由于對十六進制不夠熟練,所以在實現顯示的時候總是出現亂碼,后面靜下心慢慢算,終于能夠正常顯示,不過只是實現數碼管的靜態顯示,動態顯示才是關鍵,通過我們在課上講的數碼管累加計時,仿照其原理,通過改進,也實現了動態顯示。在按鍵方面,按鍵因為是獨立的,
22、所以我一個個按鍵的功能慢慢實現,先做加減后做調整和復位,剛開始做按鍵的時候因為考慮的不夠全面,雖然按鍵能夠實現加減,但是出現按一次跳很多次的現象,經過查找資料并觀看視頻,原來按下去的時候會出現所謂的“抖動”,這時候就需要多添加幾句程序來進行消抖,最終數碼管才正常加減,同樣道理實現選擇位跟復位功能,在一步步添加程序的同時也一步步地掌握了按鍵的使用方法。5.4 測試結果分析與結論5.4.1 數碼管測試結果分析數碼管主要是分清楚共陰還是共陽,在寫程序的時候一定要注意,通過肉眼看數碼管是否出現亮度不夠判斷其電路是否供電異常或者程序占用太多CPU,進行電路調整及程序修改,讓數碼管正常顯示。5.4.2 按
23、鍵測試結論在對按鍵進行測試的時候主要出現按鍵按下去有時候會出現連續加跟連續減的現象,經過查找相關資料,原來按鍵按下去的時候會出現 “抖動” ,所以我們就要在程序中進行刪改,做“消抖”處理。5.4.3 測試結論經過多次的反復測試,分析跟修改,程序越來越完善,我也對電路的原理跟功能更加熟悉,同時在編程方面也更加的熟練,很多平時老師沒有教到的知識我通過自學,也都能基本掌握,可說在編程上得到了很大的提高,以及對所學的知識也得到很大的鞏固。調試展示如下5.1 圖所示:5.1 調試展示圖總結與致謝在這 2016 年的年末,經過我們的努力,我們圓滿的完成了本學期的課程設計。此次我們的課程設計是微機原理與單片
24、機接口技術課程設計,而我們小組做的是基于51 單片機的簡易電子時鐘設計。電子時鐘與我們的生活息息相關,盡管它作為我們的日常用品,但說實話我們對其很不了解。這種很熟悉卻又很遙遠的感覺激發了我的求知欲望。經過我們認真的查閱資料,我們了解了電子時鐘和51 單片機的原理以及如何使用51 單片機設計電子時鐘。然后我們開始設計屬于我們自己的電子時鐘,我們通過仿真軟件設計了原理圖,編寫了C語言程序。本次課程設計我和另外兩位同學主要負責硬件部分,即按照原理圖購買和焊接實物電路并燒寫單片機和最后調試。這真正做之前我感覺并不難,但是真正上手之后卻是錯漏百出。比如我們在焊接排阻時,由于不仔細沒有注意到它的極性,最后
25、才發現焊反了,還有部分地方存在虛焊等問題。雖然最后在大家的努力下一一得以解決,但是這也說明我們還存在很多問題。類似于對原理不是特別懂,還有就是粗心不仔細,再就是動手能力極差。看的時候感覺很簡單,但是自己動手焊接時卻發現非常不容易。總而言之,通過這次課程設計我感覺收獲頗豐。不僅僅是學習能力的提升,還有動手能力的提升,更重要的是收獲了一份鉆研精神以及一種不畏困難勇往直前的勇氣!參考文獻1 郭天祥 . 新概念 51 單片機C語言教程M. 北京 : 電子工業出版社,20092 張靖武 , 周靈斌 . 單片機原理、應用與PROTEU仿真S M. 北京:電子工業出版社,20083 張道德 . 單片機接口技
26、術M. 北京 : 中國水利水電出版社,2007附錄分組表任務 / 人設計電路編寫程序焊接燒寫調試備注焊接燒寫焊接燒寫焊接燒寫總體電路設計總體程序編寫數碼管顯示模塊程序設計按鍵模塊程序設計復位模塊與電源開關模塊數碼顯示模塊和蜂鳴器電路模塊晶振電路模塊和單片機電路模塊附錄二 程序數碼管顯示程序:void display(void)P0=ledhour/10; /p0 口送數據拆數顯示P2=0xFE; /片選delay(); /延時P2=0xFF; /片選關P0=ledhour%10;P2=0xFD;delay();P2=0xFF;P0=0x40;P2=0xFB;delay();P2=0xFF;P0
27、=ledminit/10;P2=0xF7;delay();P2=0xFF;P0=ledminit%10;P2=0xEF;delay();P2=0xFF;P0=0x40;P2=0xDF;delay();P2=0xFF;P0=ledsecond/10;P2=0xBF;delay();P2=0xFF;P0=ledsecond%10;P2=0x7F;delay();P2=0xFF;按鍵操作子程序:void display(void)P0=ledhour/10; /p0 口送數據拆數顯示P2=0xFE; / 片選delay(); / 延時P2=0xFF; / 片選關P0=ledhour%10;P2=0x
28、FD;delay();P2=0xFF;P0=0x40;P2=0xFB;delay();P2=0xFF;P0=ledminit/10;P2=0xF7;delay();P2=0xFF;微機原理與單片機接口技術課程設計報告P0=ledminit%10;P2=0xEF;delay();P2=0xFF;P0=0x40;P2=0xDF;delay();P2=0xFF;P0=ledsecond/10;P2=0xBF;delay();P2=0xFF;P0=ledsecond%10;P2=0x7F;delay();P2=0xFF;void Keykonzhi()if(time=0) / 鍵盤時間設定鍵按下del
29、ay();delay();if(time=0)while(!time);timenum1+;/ 標記 +TR1=0;f2=0;if(timenum1=1) / 如果 timenum1=1 調時dsflg=0;st=0;delay();delay();if(add=0)while(!add); / 松手檢測 hour+;/ 小時 + if(dec=0)/ 減鍵按下delay();delay();if(dec=0)while(!dec); / 松手檢測 hour-; / 小時 - if(hour>23) / 限位hour=0;P0=ledhour/10;/ 顯示小時函數P2=0xFE;del
30、ay();P2=0xFF;P0=ledhour%10; / 顯示小時函數P2=0xFD;delay();P2=0xFF;if(timenum1=2) / 如果 timenum1=2 調分 / 以下也是和調時一樣的方法dsflg=0;st=0;if(add=0)delay();delay();if(add=0)while(!add);minit+;if(dec=0)delay();delay();if(dec=0)while(!dec);minit-;if(minit>60)minit=0;P0=ledminit/10;P2=0xF7;delay();P2=0xFF;P0=ledminit
31、%10;P2=0xEF;delay();P2=0xFF;if(timenum1=3)/ 如果 timenum1=3 調秒dsflg=0;st=0;if(add=0)delay();delay();if(add=0)while(!add);second+;if(dec=0)delay();delay();if(dec=0)while(!dec);second-;if(second>60)second=0;P0=ledsecond/10;P2=0xBF;delay();P2=0xFF;P0=ledsecond%10;P2=0x7F;delay();P2=0xFF;if(timenum1=4)
32、 / 如果 timenum1=4 退出TR1=1;timenum1=0;dsflg=1;f2=1;st=1;void almset()timenum1=0;if(timer=0) / 鍵盤上的鬧鐘鍵按下delay();delay();if(timer=0)while(!timer); / 松手timenum2+; / 標記 +f1=0;if(timenum2=1)/ 如果 timenum2=1 設定腦鐘的小時 dsflg=0;st=0;if(add=0) / 加鍵按下 delay();delay();if(add=0)while(!add);/ 松手 hour1+;/ 小時 +if(dec=0) / 減鍵按下delay();delay();if(dec=0)while(!dec);/ 松手hour1-; /小時 -if(hour1>23) / 限位ho
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 江蘇省淮安市本年度(2025)小學一年級數學統編版階段練習(下學期)試卷及答案
- 2025-2030年中國散熱排風機市場運行新形勢與投資前景報告
- 大學生要如何網絡安全防范論文
- 英語中國文化閱讀教學設計
- 2025屆江蘇省徐州一中高三六校第一次聯考英語試卷含解析
- 湖南省長沙市岳麓區湖南師范大學附中2025屆高三(最后沖刺)英語試卷含解析
- 職業技能鑒定初級光纖通信模擬題及參考答案
- 【9道 一?!?025年4月邯鄲市邯山區七校聯考中考一模道法試卷含答案
- 北京市第五十七中學2024-2025學年高二下學期期中考試英語試題(原卷版+解析版)
- 稀有金屬礦選礦廠安全生產標準化實施指南考核試卷
- 完整版高中古詩文必背72篇【原文+注音+翻譯】
- 財務英文詞匯大全
- 實際控制人股東會決議
- 中考物理“極值”與“取值范圍”問題專題訓練
- 2009年安徽省中考化學試卷【含答案可編輯】
- 越南工業到2025年發展戰略及到2035發展展望(提到鋼鐵)
- 電梯曳引機減速箱的設計、建模與運動仿真分析機械
- PV-1200-(中文版)氣候交變穩定性試驗(共4頁)
- 淮北市基準地價
- 《給教師的100條建議》電子書
- 老視的機制及治療的研究進展
評論
0/150
提交評論