




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、單片機課程設計報告書課題名稱日歷時鐘的設計姓 名學 號院、系、部物理與電子科學系專 業應用電子技術指導教師 2013年11月20日12一、設計任務及要求:設計任務:1、利用MCS-51內部定時器定時T0/T1,編程實現時、分、秒的顯示,顯示格式為: 時分秒: 09 12 35 (24小時制)2、能按鍵調整時間的數值(按鍵數量自定)。要 求: 首先進行預設計,根據設計的任務要求,先確定設計的硬件電路方案,然后進行硬件電路的初步設計,在計算機上畫出硬件電路圖,在老師的指導下進行修正硬件電路圖,并對所涉及的參數進行計算。在確定硬件的基礎上,要進行軟件的總體設計,包括軟件主流程的設計以及各子程序的設計
2、,同時,要寫出詳細的操作說明,如時間的調整方法,顯示窗口的時間切換等,以配合軟件的設計。然后進入硬件的調試及編程工作,設計組內的同學可根據任務分工,有調試硬件各功能模塊的,如鍵盤子程序、顯示子程序等,有進行整體程序的編制的,各模塊的編制過程中要注意資源的銜接。最后進入聯機調試,聯機調試的原則也要采用分步走的原則,各個功能模塊要逐步套入,通過一個再增加一項功能,從而達到設計的總體要求,不要上來編制個最大的程序,最后無法查找錯誤,最后寫出設計報告。指導教師簽名: 年 月 日 二、指導教師評語:指導教師簽名: 年 月 日 三、成績 指導教師簽名: 年 月 日 目錄緒言3二、方案比較與論證32.1 系
3、統整體流程圖32.2單片機芯片的選擇方案和論證:42.3時鐘方案選擇52.4顯示模塊的選擇52.5鍵盤模塊的選擇52.6具體設計分析5三、硬件電路設計63.1整個電路原理圖63.2數碼顯示模塊設計73.3按鍵模塊73.4復位電路8四.程序流程圖8五、系統仿真95.1Proteus軟件應用95.2實驗測試10六 主要元器件選擇11七、參考文獻11八.結束語11附錄2 部分源程序12緒言數字電子鐘具有走時準確,一鐘多用等特點,在生活中已經得到廣泛的應用。雖然現在市場上已有現成的電子鐘集成電路芯片,價格便宜、使用也方便,但是人們對電子產品的應用要求越來越高,數字鐘不但可以顯示當前的時間,而且可以顯示
4、期、農歷 、以及星期等,給人們的生活帶來了方便。另外數字鐘還具備秒表和鬧鐘的功能,且鬧鐘鈴聲可自選,使一款電子鐘具備了多媒體的色彩。單片機具有體積小、功能強可靠性高、價格低廉等一系列優點,不僅已成為工業測控領域普遍采用的智能化控制工具,而且已滲入到人們工作和和生活的各個角落,有力地推動了各行業的技術改造和產品的更新換代,應用前景廣闊。時鐘電路在計算機系統中起著非常重要的作用,是保證系統正常工作的基礎。在一個單片機應用系統中,時鐘有兩方面的含義:一是指為保障系統正常工作的基準振蕩定時信號,主要由晶振和外圍電路組成,晶振頻率的大小決定了單片機系統工作的快慢;二是指系統的標準定時時鐘,即定時時間,它
5、通常有兩種實現方法:一是用軟件實現,即用單片機內部的可編程定時/計數器來實現,但誤差很大,主要用在對時間精度要求不高的場合;二是用專門的時鐘芯片實現,在對時間精度要求很高的情況下,通常采用這種方法,典型的時鐘芯片有:DS1302,DS12887,X1203等都可以滿足高精度的要求。二、方案比較與論證2.1 系統整體流程圖LED數碼管動態掃描顯示模塊AT89S52主控制模 塊鍵盤模塊 DS1302時鐘模塊開始 初始化子程序 While(1)串口有數據 否 是調用子程序,獲取串口數據調用子程序,設置日歷時鐘芯片調用子程序,獲取芯片的時間信息調用顯示字程序2.2單片機芯片的選擇方案和論證:方案一:純
6、硬件電路系統,各功能采用分離的硬件電路模塊實現。用時序邏輯電路實現時鐘功能,用555定時器實現鬧鐘的設定。但這種實現方法可靠性差、控制精度低,靈活性小、線路復雜、安裝調試不方便,而且不方便實現對系統的擴展。 方案二:用可編程邏輯器件(PLD)實現。這種方案與前一種相比,可靠性增加,同時可以很好的完成時鐘的功能。同時這種方案只能選用數碼管顯示,顯示的效果不夠理想,無法很好的完成擴展功能的要求,系統的靈活性不夠。方案三:采用AT89S52單片機作為系統的控制核心。時鐘功能采用單片集成的時鐘芯片DS1307來實現,可以使用液晶顯示時間、日歷及鬧鈴,有著智能化的人機界
7、面。由于使用了單片機,整個系統可編程,系統的靈活性大大增加了。另外,本方案可以方便的實現其他功能的擴展。 經過以上的比較論證,選用方案三來完成項目設計的要求。2.3時鐘方案選擇 方案一:基本門電路搭建。用基本門電路來實現時鐘發生器,電路結構復雜,故障系數大,不易調試。 方案二:專用時鐘芯片。目前市場上已有很多實時時鐘芯片。如DS12887、DS1302、DS1307、PCF8563、X1227等,芯片內都集成了時鐘/日歷功能,給時鐘系統設計帶來很多方便。根據設計要求,在本設計中我采用了DS1302時鐘芯片。
8、;2.4顯示模塊的選擇 方案一:使用多個數碼管顯示。LED數碼管是利用二極管發光顯示數字和字母,具有亮度大、接口設計比較容易,價格相對較便宜等優點。但是由于它工作電流較大、不能顯示漢字,顯示的信息量有限,若在此題目中應用就會受到很大的限制。 方案二:采用液晶顯示。液晶特別是具有漢字顯示功能的液晶顯示器,來實現顯示功能,不僅可以實現基本的顯示信息,而且可以顯示豐富的符號指示信息以及文字指示信息,信息量豐富且直觀易懂。而且液晶顯示有功耗低,體積小,重量輕,壽命長,不產生電磁輻射污染等優點。系統采用方案二,設計選用LCD1602液晶顯示模塊。&
9、#160;2.5鍵盤模塊的選擇 方案一:采用獨立式按鍵電路。每個鍵單獨占有一根I/O接口線,每個I/O口的工作狀態互不影響,此類鍵盤采用端口直接掃描方式。但是當按鍵較多時占用單片機的I/O數目較多。方案二:采用陣列式鍵盤。此類鍵盤是采用行列掃描方式,當按鍵較多時可以降低占用單片機的I/O口數目。根據設計要求我采用了方案二。2.6具體設計分析利用單片機(AT89S51)制作簡易電子時鐘,由六個LED數碼管分別顯示小時十位、小時個位、分鐘十位、分鐘個位、秒鐘十位、秒鐘個位。結合本設計實驗來說,要求顯示的時間為時,分,秒,并且都用兩位數碼管來實現顯示。因此,具體設計程序時,應盡可能多用一些
10、子程序與數據暫寄存器單元。本程序設計中,在主程序之外,可以設置時間值處理子程序,時間值顯示前的處理子程序,按鍵情況掃描子程序,1S定時中斷子程序以及5ms延時消除按鍵抖動子程序等多個小型的子程序。另外,可以設置一些數據單元作為數據寄存器。用28H,2AH,2BH和2CH地址單元分別作為顯示位數的掃描指針值寄存器,時寄存器,分寄存器和秒寄存器,再用20H地址單元作為顯示寄存器 三、硬件電路設計3.1整個電路原理圖 3.2數碼顯示模塊設計共陰數碼管數碼管的引腳圖數碼管是一種把多個LED顯示段集成在一起的顯示設備。有兩種類型,一種是共陽型,一種是共陰型。共陽型就是把多個LED顯示段的陽極接在一起,又
11、稱為公共端。共陰型就是把多個LED顯示段的陰極接在一起,即為公共商。陽極即為二極管的正極,又稱為正極,陰極即為二極管的負極,又稱為負極。通常的數碼管又分為8段,即8個LED顯示段,這是為工程應用方便如設計的,分別為A、B、C、D、E、F、G、DP,其中DP 是小數點位段。而多位數碼管,除某一位的公共端會連接在一起,不同位的數碼管的相同端也會連接在一起。即,所有的A段都會連在一起,其它的段也是如此,這是實際最常用的用法。數碼管顯示方法可分為靜態顯示和動態顯示兩種。靜態顯示就是數碼管的8段輸入及其公共端電平一直有效。動態顯示的原理是,各個數碼管的相同段連接在一起,共同占用8 位段引管線;每位數碼管
12、的陽極連在一起組成公共端。利用人眼的視覺暫留性,依次給出各個數碼管公共端加有效信號,在此同時給出該數碼管加有效的數據信號,當全段掃描速度大于視覺暫留速度時,顯示就會清晰顯示出來。系統采用動態顯示方式,用P0口來控制LED數碼管的段控線,而用P2口來控制其位控線。動態顯示通常都是采用動態掃描的方法進行顯示,即循環點亮每一個數碼管,這樣雖然在任何時刻都只有一位數碼管被點亮,但由于人眼存在視覺殘留效應,只要每位數碼管間隔時間足夠短,就可以給人以同時顯示的感覺。3.3按鍵模塊時間計數電路由秒個位和秒十位計數器、分個位和分十位計數器、時個位和時十位計數器及星期計數器電路構成,其中秒個位和秒十位計數器、分
13、個位和分十位計數器為60進制計數器,時個位和時十位計數器為24進制計數器。下圖為按鍵模塊電路原理圖。3.4復位電路單片機復位的條件是:必須使RST/VPD 或RST引(9)加上持續兩個機器周期(即24個振蕩周期)的高電平。例如,若時鐘頻率為12 MHz,每機器周期為1s,則只需2s以上時間的高電平,在RST引腳出現高電平后的第二個機器周期執行復位。單片機常見的復位如圖所示。電路為上電復位電路,它是利用電容充電來實現的。在接電瞬間,RESET端的電位與VCC相同,隨著充電電流的減少,RESET的電位逐漸下降。只要保證RESET為高電平的時間大于兩個機器周期,便能正常復位。該電路除具有上電復位功能
14、外,若要復位,只需按圖中的RESET鍵,此時電源VCC經電阻R1、R2分壓,在RESET端產生一個復位高電平。分寄存器值加1分按鍵了?開始四.程序流程圖秒寄存器=60定時器T0初始化設置顯示初值為12:00:00 N使分寄存器清0設置定時4m初值分按鍵松開?設置中斷允許 N設中斷250次時按鍵了?啟動T0中斷秒按鍵了?時寄存器值加1 秒寄存器值加1時寄存器值20 N秒寄存器值加1使寄存器清0 Y N 使秒寄存器清0秒按松開了?秒按鍵松開了?N Y N 五、系統仿真運用proteus軟件進行仿真現在proteus軟件中建立一個新的文件,再根據自己的要求選擇所需的器件,把器件進行適當的排位后進行連
15、接,連接后運行軟件進行仿真。5.1Proteus軟件應用1原理圖編輯窗口(The Editing Window):顧名思義,它是用來繪制原理圖的。藍色方框內為可編輯區,元件要放到它里面。注意,這個窗口是沒有滾動條的,你可用預覽窗口來改變原理圖的可視范圍。2預覽窗口(The Overview Window):它可顯示兩個內容,一個是:當你在元件列表中選擇一個元件時,它會顯示該元件的預覽圖;另一個是,當你的鼠標焦點落在原理圖編輯窗口時(即放置元件到原理圖編輯窗口后或在原理圖編輯窗口中點擊鼠標后),它會顯示整張原理圖的縮略圖,并會顯示一個綠色的方框,綠色的方框里面的內容就是當前原理圖窗口中顯示的內容
16、,因此,你可用鼠標在它上面點擊來改變綠色的方框的位置,從而改變原理圖的可視范圍。3模型選擇工具欄(Mode Selector Toolbar): 主要模型(Main Modes): 1* 選擇元件(components)(默認選擇的) 2* 放置連接3* 放置標簽(用總線時會用到) 4* 放置文本5* 用于繪制總線6* 用于放置子電路7* 用于即時編輯元件參數(先單擊該圖標再單擊要修改的元件) 配件(Gadgets): 1* 終端接口(terminals):有VCC、地、輸出、輸入等接口2* 器件引腳:用于繪制各種引腳3* 仿真圖表(graph):用于各種分析,如Noise Analysis
17、4* 錄音機5* 信號發生器(generators) 6* 電壓探針:使用仿真圖表時要用到7* 電流探針:使用仿真圖表時要用到8* 虛擬儀表:有示波器等2D圖形(2D Graphics): 1* 畫各種直線 2* 畫各種方框 3* 畫各種圓 4* 畫各種圓弧 5* 畫各種多邊形 6* 畫各種文本 7* 畫符號 8* 畫原點等4元件列表(The Object Selector): 用于挑選元件(components)、端接口(terminals)、信號發生器(generators)、仿真圖表(graph)等。舉例,當你選擇“元件(components)”,單擊“P”按鈕會打開挑選元件對話框,選擇
18、了一個元件后(單擊了“OK”后),該元件會在元件列表中顯示,以后要用到該元件時,只需在元件列表中選擇即可。5方向工具欄(Orientation Toolbar): 旋轉:旋轉角度只能是90的整數倍。翻轉:完成水平翻轉和垂直翻轉。使用方法:先右鍵單擊元件,再點擊(左擊)相應的旋轉圖。6仿真工具欄仿真控制按鈕 1* 運行2* 單步運行3* 暫停4* 停止按照自己設計的電路圖就可以畫出想要的電路圖!2.在軟件中模擬和實際的效果為什么有如此大的差別?答:軟件中模擬受到電腦CPU工作頻率的影響,所以效果不是很明顯,但是一些基本的現象還是可以看出來的。只要我們知道原理和圖是正確的,那么就沒有必要考慮太多的
19、未知因素。在實際面包板中一定會看到正確的現象。3.面包板連線注意事項!答:面包板連線時一定要弄清楚它的原理,不然就會一點頭緒都找不到。連接芯片是要弄清楚各個引腳對應的端口號,該接地的地方一定要接地,該接高電平的地方一定要接高電平。5.2實驗測試 主要的設計要求是能夠實現時鐘的一般功能,以及包括時間的調整功能,這個基于單片機的電子時鐘基本上實現了上述功能,能夠通過時間調整電路對時間進行調整以及復位。下述為12:00:00的仿真圖: 圖8 12:00:00時刻的仿真效果圖六 主要元器件選擇表6-1 主要元器件清單序號材料名稱規格型號數量元件代號1單片機AT89S511U12電阻1k17R1-R16
20、3電容10PF4C1、C2、C3、Y14數碼管MPX81DS15集成電路274LS47、74LS138七、參考文獻【1】 張迎新.單片機初級教程【M】.北京:北京航空航天大學出版社,2006.【2】 馮志強.Altium Designer8.0中文版電路設計【M】.北京:清華大學出版社,2009.【3】 楊素行.模擬電子技術基礎簡明教程(第三版)【M】.北京:高等教育出版社,2006.【4】 余孟嘗.數字電子技術基礎簡明教程(第三版)【M】.北京:高等教育出版社,2006.【5】 程鵬.自動控制原理(第二版)【M】.北京:高等教育出版社,2006.【6】 王化祥,張淑英.傳感器原理及應用(第三
21、版)【M】.天津:天津大學出版社,2007.【7】 邱關源,羅先覺.電路(第五版)【M】.北京:高等教育出版社,2006.【8】 王明泉.信號與系統【M】.北京:科學出版社,2006.八.結束語 設計,我懂得了學習的重要性,了解到理論知識與實踐相結合的重要意義,學會了堅持、耐心和努力,這將為自己今后的學習和工作做出了最好的榜樣。另外,要非常感謝我的指導老師,是她指引我克服一個由一個的困難,讓我學會對困難無所畏懼,以及對問題的一些很重要的思考方法。附錄2 部分源程序ORG 00H;主程序起始地址JMP START;主程序STARTORG 0BH;定時器T0中斷起始地址JMP TIM0;定時器T0
22、中斷子程序TIM0START: MOV SP;#70H;設置堆棧指針MOV 28H,#00;設置顯示位數掃描指針初值為0MOV 2AH,#12H;設置時鐘顯示寄存器初值為12HMOV 2BH,#00;設置分鐘顯示寄存器初值為00HMOV 2CH,#00;設置秒鐘顯示寄存器初值為00HMOV TMOD,#01H;設置定時器T0工作在方式1MOV TH0,#0F0H;定時4ms的初值,即0F060HMOV TL0,#60H;初值的低位MOV IE,#82H;定時器T0中斷允許MOV R4,#250;保證后面實現中斷250次,即1s的延時SETB TR0;啟動定時器T0LOOP: JB P0.0,N
23、2;若秒沒有按鍵,就轉去下一步檢查分CALL DELAY;延時5ms消除抖動MOV A,2CH;將秒寄存器的值載入累加器A ADD A,#01H;A的內容加1DA A;十進制調整MOV 2CH,A;A 的值存入秒寄存器CJNE A,#60H,N1;看是否已經是60秒,若不是就繼續檢查MOV 2CH,#00;已經是60秒,就清空秒寄存器的值N1: JNB P0.0,$;秒按鍵還沒有放開就循環等待CALL DELAY;延時5ms,消除抖動N2: JB P0.1,N4;若分沒有按鍵,就轉去下一步檢查時鐘CALL DELAY;延時5ms,消除抖動MOV A,2BH;將分寄存器的值載入累加器AADD A
24、,#01H;A的內容加1DA A;十進制調整MOV 2BH,A;A的值存入分寄存器CJNE A,#60H,N3;看是否已經是60分MOV 2BH,#00;已經是60分,就清空秒寄存器的值N3: JNB P0.1,$;分按鍵還沒有放開就循環等待CALL DELAY;延時5ms,消除抖動N4: JB P0.2,LOOP;若時沒有按鍵,就轉回去繼續檢查看是否秒有按鍵CALL DELAY;延時5ms,消除抖動MOV A,2AH;將時寄存器的值載入累加器AADD A,#01H;A的內容加1DA A;十進制調整MOV 2AH,A;A的值存入時寄存器CJNE A,#24H,N5;看是否已經是24時,若不是就
25、繼續檢查MOV 2AH,#00;已經是24時,就清空寄存器的值N5: JNB P0.2,$;時鐘按鍵還沒有放開就循環等待CALL DELAY;延時5ms,消除抖動JMP LOOP;返回重新檢查看是否有按鍵;*定時器T0中斷子程序*TIM0: MOV TH0,#0F0H;定時初值重設MOV TL0,#60HPUSH ACC;將累加器A的值暫存于堆棧PUSH PSW;將PSW的值暫存于堆棧DJNZ R4,X2;計時中斷不滿1s就退出繼續中斷MOV R4,#250;計時1sCALL CLOCK;調用計時子程序CLOCKCALL DISP;調用顯示子程序DISPX2: CALL SCAN;調用掃描子程
26、序SCADPOP PSW;到堆棧取回PSW的值POP ACC;到堆棧取回累加器ACC的值RETI;返回主程序;*掃描子程序*SCAN: MOV R0,#28HINC R0;顯示位數掃描值加1CJNE R0,#6,X3;掃描位數不為6就準備控制輸出MOV R0,#0;掃描位數為6,就另其值為0X3:MOV A,R0;掃描位數載入AADD A,#20H;A加上20H(顯示寄存器地址)=各時間顯示區地址MOV R1,A;各時間顯示區地址存入AMOV A,R0;掃描位數存入ASWAP A;將A的高低4位交換(其高4位為掃描的位數,低4位為顯示數據值)ORL A,R1;將掃描值與顯示數據組合MOV P1,A;顯示輸出RET;*計時子程序*CLOCK:
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 辦理企業刻章委托書辦理實操分享3篇
- 審計招投標失誤3篇
- 學校和培訓機構合作協議3篇
- 工程勞動協議案例3篇
- 建筑砌塊設計大賽作品集考核試卷
- 皮鞋制作設備的選擇與維護考核試卷
- 海洋氣象與海洋生物地球化學循環考核試卷
- 2025租賃合同協議書范本【下載】
- 2025年標準的公司房屋租賃合同模板
- 2025如何構建醫療服務合同
- 《小學生預防溺水安全教育班會》課件
- 傳統園林技藝智慧樹知到期末考試答案2024年
- 直播中的禮儀與形象塑造
- 2024年八年級數學下冊期中檢測卷【含答案】
- 老年人中醫健康知識講座總結
- 海南聲茂羊和禽類半自動屠宰場項目環評報告
- 跳繩市場調研報告
- 《民法典》合同編通則及司法解釋培訓課件
- 《大學生的情緒》課件
- 交通事故法律處理與索賠案例分析與實踐指導
- 大學生組織管理能力大賽題庫第三屆
評論
0/150
提交評論