時(shí)鐘計(jì)時(shí)器的設(shè)計(jì)單片機(jī)原理及應(yīng)用課程設(shè)計(jì)_第1頁(yè)
時(shí)鐘計(jì)時(shí)器的設(shè)計(jì)單片機(jī)原理及應(yīng)用課程設(shè)計(jì)_第2頁(yè)
時(shí)鐘計(jì)時(shí)器的設(shè)計(jì)單片機(jī)原理及應(yīng)用課程設(shè)計(jì)_第3頁(yè)
時(shí)鐘計(jì)時(shí)器的設(shè)計(jì)單片機(jī)原理及應(yīng)用課程設(shè)計(jì)_第4頁(yè)
時(shí)鐘計(jì)時(shí)器的設(shè)計(jì)單片機(jī)原理及應(yīng)用課程設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩17頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、湖南人文科技學(xué)院課程設(shè)計(jì)報(bào)告課程名稱:單片機(jī)原理及應(yīng)用課程設(shè)計(jì)設(shè)計(jì)題目: 時(shí)鐘計(jì)時(shí)器的設(shè)計(jì) 系 別: 通信與控制工程系 專 業(yè): 班 級(jí): 學(xué)生姓名: 學(xué) 號(hào): 起止日期: 2012年12月23日 2012年12月30日 指導(dǎo)教師: 教研室主任: 指導(dǎo)教師評(píng)語(yǔ): 指導(dǎo)教師簽名: 年 月 日成績(jī)?cè)u(píng)定項(xiàng) 目權(quán)重成績(jī)1、設(shè)計(jì)過(guò)程中出勤、學(xué)習(xí)態(tài)度等方面0.22、課程設(shè)計(jì)質(zhì)量與答辯0.53、設(shè)計(jì)報(bào)告書寫及圖紙規(guī)范程度0.3總 成 績(jī) 教研室審核意見:教研室主任簽字: 年 月 日教學(xué)系審核意見: 主任簽字: 年 月 日摘 要 時(shí)間計(jì)時(shí)器以單片機(jī)為核心,由計(jì)時(shí)器,綜合控制器等組成。系統(tǒng)采用模塊化設(shè)計(jì),主要分

2、為計(jì)時(shí)顯示模塊和按鍵控制模塊。每個(gè)模塊的程序結(jié)構(gòu)簡(jiǎn)單,任務(wù)明確,易于編寫、調(diào)試和修改。編程后利用keil軟件來(lái)進(jìn)行編譯,在生成hex文件裝入芯片中。本設(shè)計(jì)中系統(tǒng)硬件電路主要是由以下幾個(gè)部分組成:?jiǎn)纹瑱C(jī)at89c52、振蕩電路、顯示電路和按鍵開關(guān)。該系統(tǒng)具有60s內(nèi)準(zhǔn)確計(jì)時(shí)和及時(shí)清零的功能,基于單片機(jī)設(shè)計(jì)的時(shí)間計(jì)時(shí)器因?yàn)轶w積小,成本低廉等優(yōu)點(diǎn),被廣泛用于我們的日常生活、工作當(dāng)中。關(guān)鍵詞:電子時(shí)鐘、單片機(jī)、高精度目 錄設(shè)計(jì)要求21 方案論證與對(duì)比21.1 方案一21.2 方案二21.3 方案對(duì)比與選擇32 系統(tǒng)硬件設(shè)計(jì)42.1 設(shè)計(jì)核心單元(at89c52)42.2 程序下載單元42.3 數(shù)碼管顯

3、示單元52.4復(fù)位單元64系統(tǒng)軟件設(shè)計(jì)75系統(tǒng)調(diào)試86詳細(xì)儀器清單97總結(jié)與致謝10參考文獻(xiàn)11附錄一:時(shí)間計(jì)時(shí)器電路pcb原理圖12附錄二:usb下載模塊電路pcb原理圖13附錄三:部分軟件代碼14時(shí)間計(jì)時(shí)器的設(shè)計(jì)設(shè)計(jì)要求功能:時(shí)鐘計(jì)時(shí)器要求用單片機(jī)及6位led數(shù)碼顯示時(shí)、分、秒,以24小時(shí)計(jì)時(shí)方式運(yùn)行,能整點(diǎn)提醒(蜂鳴),使用按鍵開關(guān)可實(shí)現(xiàn)時(shí)、分調(diào)整,秒表/時(shí)鐘功能轉(zhuǎn)換,定時(shí)設(shè)定提醒的功能。學(xué)習(xí)、了解單片機(jī)相關(guān)指令在各方面的應(yīng)用,學(xué)習(xí)、了解單片機(jī)相關(guān)指令在各方面的應(yīng)用,讓我們學(xué)到更多關(guān)于單片機(jī)方面的知識(shí)。學(xué)習(xí)更多關(guān)于單片機(jī)方面的知識(shí)。1 方案論證與對(duì)比1.1 方案一采用專用集成時(shí)鐘芯片ds

4、1302實(shí)時(shí)時(shí)鐘日歷芯片完成時(shí)鐘/日歷的計(jì)時(shí)。以at89c52芯片作為核心。這種實(shí)現(xiàn)的優(yōu)點(diǎn)是電路簡(jiǎn)單,性能可靠,實(shí)時(shí)性好,時(shí)間精確,操作簡(jiǎn)單,編程容易原理框圖如圖1所示: 圖 1方案一系統(tǒng)方框圖該方案因?yàn)椴捎脮r(shí)鐘芯片ds1302來(lái)定時(shí),導(dǎo)致生產(chǎn)成本偏高的缺點(diǎn)。1.2 方案二電子時(shí)鐘由at89c52,八段數(shù)碼管等構(gòu)成,采用晶振電路作為驅(qū)動(dòng)電路,由at89c52內(nèi)部定時(shí)器程序程序產(chǎn)生的一秒定時(shí),達(dá)到時(shí)分秒的計(jì)時(shí),六十秒為一分鐘,六十分鐘為一小時(shí),滿二十四小時(shí)為一天。因?yàn)槭歉挠胊t89c52內(nèi)部定時(shí)器定時(shí),沒有外加專用計(jì)時(shí)芯片,降低了生產(chǎn)成本,提高了推廣的可能性。而電路中五個(gè)控制鍵擁有多種不同的功能

5、,模式按鍵,可以實(shí)現(xiàn)數(shù)碼管顯示不同信息的功能,達(dá)到日歷和時(shí)間切換的目的;移位按鍵,達(dá)到在時(shí)間調(diào)節(jié)模式下,改變數(shù)碼管被選中的位;加減按鍵,則可以通過(guò)按鍵實(shí)現(xiàn)分鐘的累加,每按一次數(shù)碼管被選中位顯示值加減變化一次則可實(shí)現(xiàn)顯示數(shù)值的調(diào)節(jié)。電路圖如圖2所示。圖 2 方案二系統(tǒng)方框圖1.3 方案對(duì)比與選擇以上二個(gè)方案一個(gè)方案時(shí)間準(zhǔn)確性搞,程序簡(jiǎn)單。但成本偏高。而方案二直接使用核心芯片at89c52的內(nèi)部資源定時(shí)器來(lái),不能保證長(zhǎng)時(shí)間下的時(shí)間準(zhǔn)確性。但降低了成本。我們進(jìn)過(guò)討論最終選擇方案二。選擇低成本的,適用于短時(shí)間內(nèi)的時(shí)間顯示和時(shí)間定時(shí)。2 系統(tǒng)硬件設(shè)計(jì)2.1 程序下載單元單片機(jī)普遍采用max232串口下載

6、程序,這次我們采用另外一種下載方式,usb下載方式。原理圖如圖4所示:圖 4 下載單元pl-2303原理圖2.2 數(shù)碼管顯示單元所謂數(shù)碼管就是為數(shù)碼管顯示提供的各段狀態(tài)組合,即字形代碼。八段數(shù)碼管的段碼為八位,用一個(gè)字節(jié)即可表示。在段碼字節(jié)中代碼位與各段發(fā)光二極管的對(duì)應(yīng)關(guān)系表1。表1 段碼字節(jié)代碼位與發(fā)光二極管的關(guān)系段碼d7d6d5d4d3d2d1d0段名dpgfedcba段碼的值與數(shù)碼管公共引腳的接法有關(guān)。以八段數(shù)碼管為例,顯示十六進(jìn)制的段碼值如表2。表2 十六進(jìn)制段碼表數(shù)字共陽(yáng)極段碼共陰極段碼數(shù)字共陽(yáng)極段碼共陰極段碼0c0h3fh990h6fh1f9h06ha88h77h2a4h5bhb8

7、3h7ch3b0h4fhcc6h39h499h66hda1h5eh592h6dhe86h79h682h7dhf8eh71h7f8h07h滅ffh00h880h7fh并排使用的多位數(shù)碼管稱為led顯示器。led顯示器多采用動(dòng)態(tài)顯示方式,全部數(shù)碼管共用一套段碼驅(qū)動(dòng)電路,各位數(shù)碼管的同段引腳短接后接到相應(yīng)段碼的驅(qū)動(dòng)線上。顯示時(shí)通過(guò)位控制信號(hào)采用掃描的方法逐位地循環(huán)點(diǎn)亮各位數(shù)碼管。動(dòng)態(tài)顯示雖然在任何時(shí)刻只有一位數(shù)碼管被點(diǎn)亮,但是由于人眼具有的視覺殘留效應(yīng),看起來(lái)與全部數(shù)碼管持續(xù)點(diǎn)亮的效果完全一樣。由于單片機(jī)的驅(qū)動(dòng)電流較小,無(wú)法正常驅(qū)動(dòng)8位數(shù)碼管,因此我們?cè)趩纹瑱C(jī)與數(shù)碼管中間加上74ls573用于驅(qū)動(dòng)數(shù)

8、碼管的正常顯示。電路如圖5示:圖 5 數(shù)碼管顯示電路2.4 復(fù)位單元當(dāng)stc89c52單片機(jī)的復(fù)位引腳rst(全稱reset)出現(xiàn)2個(gè)機(jī)器周期以上的高電平時(shí),單片機(jī)就執(zhí)行復(fù)位操作。如果rst持續(xù)為高電平,單片機(jī)就處于循環(huán)復(fù)位狀態(tài)。根據(jù)應(yīng)用的要求,復(fù)位操作通常有兩種基本形式:上電復(fù)位和上電或開關(guān)復(fù)位。上電復(fù)位要求接通電源后,自動(dòng)實(shí)現(xiàn)復(fù)位操作。上電或開關(guān)復(fù)位要求電源接通后,單片機(jī)自動(dòng)復(fù)位,并且在單片機(jī)運(yùn)行期間,用開關(guān)操作也能使單片機(jī)復(fù)位。上電后,由于電容的充電和反相門的作用,使rst持續(xù)一段時(shí)間的高電平。當(dāng)單片機(jī)已在運(yùn)行當(dāng)中時(shí),按下復(fù)位鍵k后松開,也能使rst為一段時(shí)間的高電平,從而實(shí)現(xiàn)上電或開關(guān)

9、復(fù)位的操作。電路如圖6示:圖6 復(fù)位單元電路 4 系統(tǒng)軟件設(shè)計(jì)1. 程序流程如圖7所示:我的程序中用了個(gè)定時(shí)器中斷,還是用了獨(dú)立鍵盤調(diào)時(shí),蜂鳴器鬧鈴及提醒。圖7軟件系統(tǒng)流程圖2.中斷服務(wù)程序模塊我的程序中用了個(gè)定時(shí)器中斷,所以有中斷服務(wù)程序,是為了使秒自加而使用定時(shí)器中斷,定時(shí)50ms循環(huán)20次到一秒以后,向cpu申請(qǐng)中斷,使秒自加1。圖8 中斷服務(wù)程序流程圖3.加1子程序流程框圖 加1子程序流程框圖如圖9所示:圖9 加1子程序流程圖5 系統(tǒng)調(diào)試1.設(shè)計(jì)核心單元(at89c52)at89c52單片機(jī)的40個(gè)引腳大致可分為4類:電源、時(shí)鐘、控制和i/o引腳。 電源: vcc - 芯片電源,接+5

10、v; vss - 接地端; 時(shí)鐘:xtal1、xtal2 - 晶體振蕩電路反相輸入端和輸出端。 控制線:控制線共有4根, ale/prog:地址鎖存允許/片內(nèi)eprom編程脈沖 ale功能:用來(lái)鎖存p0口送出的低8位地址 prog功能:片內(nèi)有eprom的芯片,在eprom編程期間,此引腳輸入編程脈沖。 psen:外rom讀選通信號(hào)。 rst/vpd:復(fù)位/備用電源。 rst(reset)功能:復(fù)位信號(hào)輸入端。 vpd功能:在vcc掉電情況下,接備用電源。 ea/vpp:內(nèi)外rom選擇/片內(nèi)eprom編程電源。 ea功能:內(nèi)外rom選擇端。 vpp功能:片內(nèi)有eprom的芯片,在eprom編程期

11、間,施加編程電源vpp。 i/o線80c51共有4個(gè)8位并行i/o端口:p0、p1、p2、p3口,共32個(gè)引腳。p3口還具有第二功能,用于特殊信號(hào)輸入輸出和控制信號(hào)(屬控制總線)。at89c52封裝如圖3所示:圖 3 at89c522.在proteus中設(shè)計(jì)硬件1、proteus軟件使用過(guò)程如下:1)選擇元器件2)放置元器件3)連線4)添加程序5)運(yùn)行仿真2、在wave中編寫程序,編譯、連接形成hex文件。3、在proteus中把hex文件加載到單片機(jī)芯片上。即protues原理圖中。4、運(yùn)行仿真看結(jié)果如圖8所示:圖8 protues仿真結(jié)果6 詳細(xì)儀器清單表格 3 儀器清單儀器名稱數(shù)量stc

12、89c5214位共陰數(shù)碼管2蜂鳴器1貼片按鍵5圓排母40p74ls57417 總結(jié)與致謝短暫幾天的單片機(jī)課程設(shè)計(jì)結(jié)束了,從這次課程設(shè)計(jì)中學(xué)到了很多很多東西。例如:如何運(yùn)用protel dxp2004制作雙面板。大型程序的編寫等。在這次課程設(shè)計(jì)中遇到很多困難,程序的編寫無(wú)從下手,到最后還是借鑒別人的程序來(lái)完成的。其次懂的了編寫復(fù)雜程序該如何下手。在設(shè)計(jì)程序之前,對(duì)所用單片機(jī)的內(nèi)部結(jié)構(gòu)有一個(gè)系統(tǒng)的了解,知道該單片機(jī)內(nèi)有哪些資源;要有一個(gè)清晰的思路和一個(gè)完整的的軟件流程圖;在設(shè)計(jì)程序時(shí),不能妄想一次就將整個(gè)程序設(shè)計(jì)好,反復(fù)修改、不斷改進(jìn)是程序設(shè)計(jì)的必經(jīng)之路;要養(yǎng)成注釋程序的好習(xí)慣,一個(gè)程序的完美與否

13、不僅僅是實(shí)現(xiàn)功能,而應(yīng)該讓人一看就能明白你的思路,這樣也為資料的保存和交流提供了方便;在設(shè)計(jì)課程過(guò)程中遇到問(wèn)題是很正常的,但我們應(yīng)該將每次遇到的問(wèn)題記錄下來(lái),并分析清楚,以免下次再碰到同樣的問(wèn)題的。課程設(shè)計(jì)結(jié)束了,但是從中學(xué)到的知識(shí)會(huì)讓我受益終身,因?yàn)闊o(wú)論以后從不從事單片機(jī)工作,也許畢業(yè)設(shè)計(jì)會(huì)用到呢。在此我特別感激謝老師和實(shí)驗(yàn)室的各位同學(xué),沒有你們的幫助,我們不會(huì)這么順利完成本次設(shè)計(jì)。參考文獻(xiàn)1 候伯亨。vhdl硬件描述語(yǔ)言與數(shù)字邏輯電路設(shè)計(jì)。西安:西安電子科技大學(xué)出版社,19992 王天曦 ,李洪儒。電子技術(shù)工藝基礎(chǔ)編著。北京:清華大學(xué)出版社,20003 李廣弟,朱月秀,王秀山。單片機(jī)基礎(chǔ)。

14、北京:北京航空航天大學(xué)出版社,20014 趙曙光,郭萬(wàn)有,楊頌華??删幊踢壿嬈骷?,原理,開發(fā)與應(yīng)用。西安:西安電子科技大學(xué),2000.85 朱定華,戴汝平.單片微機(jī)原理與應(yīng)用.(m) 北京:清華大學(xué)出版社,2003附錄一:時(shí)間計(jì)時(shí)器電路pcb原理圖附錄二:usb下載模塊電路pcb原理圖附錄三:部分軟件代碼#include /包含頭文件,一般情況不需要改動(dòng),頭文件包含特殊功能寄存器的定義#include #define uint unsigned int #define uchar unsigned char void delay(unsigned int);/延時(shí)void display( u

15、char);/顯示void clock();/鬧鐘void tiaoshi(void);/調(diào)時(shí)void buzzer(uchar flag,uchar style,uchar times);/蜂鳴器void inittimer0(void);/中斷初始化void keyscan(void);/按鍵掃描void keyset(void);/按鍵控制char select=1;char rarltime1=0 ,rarltime2=0 ,rarltime3=0 ,rarltime4=0 ,rarltime5=0;char stopmiao=0;char num2=0;char num1=0;cha

16、r flagzhuan=0;bit alarmflag=0;bitflag_1s=0;sbit beep = p33;sbit key1=p00;sbit key2=p01;sbit key3=p02;sbit key4=p03;unsigned code disp_tab=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40; /段碼控制unsigned code dispbitw8=0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe; /位選控制 查表的方法控制uchar ledout8,num=0,k=0

17、,zz; miao=50,fen=59,shi=23,day=29,month=2,week=1,year=2012,shi1, fen1=1,miao1,delaycnt,ukey1counter = 0,stopwatch_cnt=0;delaycnt1=0; /變量定義 void main(void) inittimer0(); /初始化定時(shí)器0 clock(); keyset();tiaoshi(); buzzer(!miao)&(!fen),0,1);/整點(diǎn)提醒buzzer(alarmflag,0,2);/鬧鐘display(select); /數(shù)碼顯示 void display(

18、uchar mode) int i,n; if(mode=5)/秒表 ledout0=0x72;/rledout1=0x3e;/u ledout2=0x37|0x80;/nledout3=disp_tabstopwatch_cnt/600/10;ledout4=disp_tabstopwatch_cnt/600%10;/分 ledout5=disp_tabstopwatch_cnt%600/100;ledout6=disp_tabstopwatch_cnt%600%100/10|0x80; /秒ledout7=disp_tabstopwatch_cnt%10; else if(mode=4)/

19、鬧鐘 ledout0=0x37;/nledout1=0x77;/aledout2=0x3f|0x80;/o ledout3=disp_tabshi1/10;ledout4=disp_tabshi1%10;ledout5=disp_tab10;ledout6=disp_tabfen1/10;ledout7=disp_tabfen1%10;else if(mode=3)/年 ledout0=0x6e;/yledout1=0x79;/eledout2=0x77;/a ledout3=0x72|0x80;/r ledout4=disp_tabyear/1000;ledout5=disp_tabyear

20、%1000/100;ledout6=disp_tabyear%100/10; ledout7=disp_tabyear%10; else if(mode=2)/周月日 ledout0=disp_tabweek/10;ledout1=disp_tabweek%10;ledout2=disp_tab10; ledout3=disp_tabmonth/10;ledout4=disp_tabmonth%10;ledout5=disp_tab10;ledout6=disp_tabday/10;ledout7=disp_tabday%10;elseif(mode=1)/時(shí)分秒ledout0=disp_ta

21、bshi/10;ledout1=disp_tabshi%10;ledout2=disp_tab10;ledout3=disp_tabfen/10;ledout4=disp_tabfen%10;ledout5=disp_tab10;ledout6=disp_tabmiao/10;ledout7=disp_tabmiao%10;for( i=0; i8; i+)switch(select) case 1:switch(rarltime1)case 1 : n=6; break;case 2 : n=3;break;case 3 : n=0;break;default:break;if(rarlti

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論