基于89C51單片機(jī)電子時(shí)鐘論文(共18頁(yè))_第1頁(yè)
基于89C51單片機(jī)電子時(shí)鐘論文(共18頁(yè))_第2頁(yè)
基于89C51單片機(jī)電子時(shí)鐘論文(共18頁(yè))_第3頁(yè)
基于89C51單片機(jī)電子時(shí)鐘論文(共18頁(yè))_第4頁(yè)
基于89C51單片機(jī)電子時(shí)鐘論文(共18頁(yè))_第5頁(yè)
已閱讀5頁(yè),還剩15頁(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、鄭州輕工業(yè)學(xué)院(xuyun)微控制器應(yīng)用(yngyng)系統(tǒng)設(shè)計(jì) 題 目: 電子時(shí)鐘(shzhng)仿真設(shè)計(jì) 學(xué)生姓名: 張 康 專業(yè)班級(jí): 電子信息工程12-2班 學(xué) 號(hào): 541201030252 院 (系): 電子信息工程學(xué)院 電子(dinz)時(shí)鐘仿真設(shè)計(jì)背景(bijng) 隨著電子技術(shù)的不斷發(fā)展,單片機(jī)技術(shù)在設(shè)計(jì)中所體現(xiàn)出來(lái)的優(yōu)勢(shì)越來(lái)越明顯,它不僅是電子信息類專業(yè)的一個(gè)重要部分,而且在其他類專業(yè)工程中也是不可缺少的。廣泛地應(yīng)用于家電、工業(yè)過(guò)程控制、儀器儀表、智能武器、航天(hngtin)和空間飛行器等領(lǐng)域,已成為新一代一些電子設(shè)備不可缺少的核心部件。目前世界上單片機(jī)年產(chǎn)量已達(dá)十億多片,

2、通常是當(dāng)年微處理器產(chǎn)量的4-5倍以上。用最少的芯片就能夠?qū)崿F(xiàn)最強(qiáng)大的功能??梢韵胍?,這是將來(lái)電子產(chǎn)品的主流方向,他將無(wú)可置疑地一步步取代其它同類產(chǎn)品,其數(shù)量之大和應(yīng)用面之廣,是其他任何類型的計(jì)算機(jī)所無(wú)法比擬的。單片機(jī)是應(yīng)工程測(cè)控需要而誕生的。它把計(jì)算機(jī)最基本的功能電路,如CPU、程序存儲(chǔ)器、數(shù)據(jù)存儲(chǔ)器、I/O接口、定時(shí)、計(jì)數(shù)器、中斷系統(tǒng)等集成到一塊芯片上,形成單片形態(tài)的計(jì)算機(jī)。單片機(jī)通常以最小系統(tǒng)運(yùn)行,在家用電器中和常用的智能儀器儀表中常??梢浴皢纹惫ぷ鳎瑫r(shí)單片機(jī)在我們?nèi)粘I钪腥~經(jīng)常見到,同時(shí)單片機(jī)在我們?nèi)粘I钪幸步?jīng)常見到,如電子表、舞廳里的一些等國(guó)的控制、工廠一些自動(dòng)化控制等。將來(lái)只

3、要有自動(dòng)控制方面的都會(huì)離不開單片機(jī)的開發(fā)和使用,對(duì)于現(xiàn)代的自動(dòng)化控制起著舉足輕重的作用??傮w方案設(shè)計(jì)1、設(shè)計(jì)方案的對(duì)比、選擇及確定電子時(shí)鐘的核心內(nèi)容是對(duì)時(shí)間的處理。具體說(shuō)是對(duì)各位時(shí)間的正常運(yùn)行、進(jìn)位、調(diào)節(jié)和定時(shí)。用什么來(lái)處理時(shí)間就成為了關(guān)鍵問(wèn)題。大體思路有兩種,一種是直接用89C51內(nèi)部的定時(shí)器,另一種是用專門的時(shí)間處理芯片。決定選取89C51內(nèi)部時(shí)鐘來(lái)設(shè)計(jì)電子時(shí)鐘。而在芯片的選擇上,使用了以下幾種芯片:AT89C51、DS18B20和LM016L。系統(tǒng)設(shè)計(jì)思路此設(shè)計(jì)即在液晶屏上顯示年、月、日、時(shí)、分、秒、星期及溫度(原理框圖如圖1.1),電路包括一下幾個(gè)部分:鍵盤、單片機(jī)、溫度傳感器及顯示電

4、路。各部分(b fen)說(shuō)明:鍵盤用于校正(jiozhng)、調(diào)節(jié)液晶上顯示的時(shí)間。單片機(jī)通過(guò)輸出各種電脈沖信號(hào)開驅(qū)動(dòng)控制各部分(b fen)正常工作。溫度傳感器用來(lái)采集溫度值。單片機(jī)發(fā)送的信號(hào)經(jīng)過(guò)顯示電路通過(guò)譯碼最終在液晶上顯示出來(lái)。系統(tǒng)工作過(guò)程:1、時(shí)間的主要處理過(guò)程是在CPU中完成的。CPU會(huì)隨時(shí)對(duì)時(shí)間進(jìn)行讀取數(shù)據(jù)的操作。在讀取了相應(yīng)的寄存器的值后,CPU將讀取的值進(jìn)行處理,再通過(guò)I/O口把數(shù)據(jù)傳入LM016L。 2、LM016L在接受到數(shù)據(jù)后在相應(yīng)的位置上進(jìn)行顯示。 3、溫度信號(hào)會(huì)通過(guò)DS18B20進(jìn)行采集,然后通過(guò)CPU處理后同樣傳給LM016L。系統(tǒng)的設(shè)計(jì)按照系統(tǒng)的工作過(guò)程,將CP

5、U相應(yīng)的I/O口分配給對(duì)應(yīng)的芯片完成相應(yīng)的控制和數(shù)據(jù)的傳輸。簡(jiǎn)單地概括為以CPU為中心,將DS18B20的時(shí)間和溫度信號(hào)通過(guò)CPU處理后輸入到LM016L進(jìn)行輸出顯示。單元模塊設(shè)計(jì)AT89C51單片機(jī)系統(tǒng)設(shè)計(jì)AT89C51是一種低電壓、高性能CMOS8位微處理器,內(nèi)部有2K字節(jié)的閃速PEROM,該芯片采用ATMEL公司的高密度、非揮發(fā)性存儲(chǔ)器工藝制成,且與工業(yè)標(biāo)準(zhǔn)MCS-51系列的引腳和指令兼容,F(xiàn)LASH系列存儲(chǔ)器為快速擦寫存儲(chǔ)器。其最小系統(tǒng)設(shè)計(jì)如圖所示: DS18B20溫度傳感器電路設(shè)計(jì)DS18B20溫度傳感器是美國(guó)Dallas公司生產(chǎn)(shngchn)的最新的單線數(shù)字溫度傳感器,支持“1

6、-Wire”接口(ji ku)。其DQ端經(jīng)上拉電阻接在P3.3引腳。 液晶(yjng)LM016L電路設(shè)計(jì)液晶LM016L用來(lái)顯示時(shí)間、日期、星期及溫度。其數(shù)據(jù)口與P0口相連,P2.0、P2.1和P2.2分別控制數(shù)據(jù)命令選擇端、讀寫選擇端及使能端。 鍵盤(jinpn)電路鍵盤用來(lái)(yn li)調(diào)節(jié)時(shí)間。分別于P1.4、P1.5、P1.6和P1.7連接。電路如圖所示。鍵盤(jinpn)功能描述: Key_2鍵為時(shí)間設(shè)置鍵 Key_3鍵為時(shí)間加一鍵 Key_4鍵為時(shí)間減一鍵 程序設(shè)計(jì)流程主程序設(shè)計(jì)流程開始 鍵盤(jinpn)掃描程序設(shè)計(jì)流程調(diào)時(shí)方法(fngf):按下Key_2鍵為設(shè)置時(shí)間按鍵次數(shù)功

7、能1設(shè)置時(shí)間秒2設(shè)置時(shí)間分3設(shè)置時(shí)間時(shí)4設(shè)置日期日5設(shè)置日期月6設(shè)置日期年7設(shè)置鬧鈴秒8設(shè)置鬧鈴分9設(shè)置鬧鈴時(shí)10設(shè)置鬧鈴開關(guān)11設(shè)置完成液晶電路(dinl)部分函數(shù)分為(fn wi):液晶寫入指令函數(shù)、液晶寫入數(shù)據(jù)函數(shù)和液晶初始化函數(shù)開始開始產(chǎn)生下降沿,指令執(zhí)行結(jié)束送入數(shù)據(jù)數(shù)據(jù)/指令選擇置為數(shù)據(jù)讀寫選擇置為寫數(shù)據(jù)/指令選擇置為指令結(jié)束產(chǎn)生下降沿,指令執(zhí)行送入數(shù)據(jù)讀寫選擇置為寫 液晶(yjng)寫入指令函數(shù) 液晶寫入數(shù)據(jù)函數(shù)開始設(shè)置液晶屏工作模式開顯示,不顯示光標(biāo)結(jié)束向液晶屏寫入時(shí)間固定格式時(shí)間從第二行第一位之后開始顯示向液晶屏寫入日期固定格式 顯示(xinsh)類函數(shù)其中包括:溫度顯示子函數(shù)

8、、時(shí)間格式顯示子函數(shù)、日期格式顯示子函數(shù)、寫星期(xngq)函數(shù)和顯示日期和時(shí)間子函數(shù)。結(jié)束在相應(yīng)位置上顯示讀取個(gè)位數(shù)讀取十位數(shù)開始 附:溫度顯示子函數(shù)、時(shí)間格式(g shi)顯示子函數(shù)、日期格式顯示子函數(shù)和顯示日期和時(shí)間子函數(shù)均符合此程序流程圖。結(jié)束顯示SUN顯示STA顯示FRI顯示THU顯示W(wǎng)ED顯示TUE顯示MON開始確定星期字符顯示的位置 判斷是星期幾星期為日星期為六星期為五星期為四星期為三星期為二星期為一 寫星期(xngq)函數(shù)系統(tǒng)(xtng)功能和指標(biāo)參數(shù)本次設(shè)計(jì)中,基本的程序(chngx)要求已達(dá)到,既可以修改時(shí)間和鬧鈴,在鬧鈴響時(shí),長(zhǎng)按減一鍵停止響。時(shí)間精度有待提高??偨Y(jié)通過(guò)這

9、次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來(lái),從理論中得出結(jié)論,才能真正為 HYPERLINK /z/Search.e?sp=S社會(huì)服務(wù)&ch=link 社會(huì)服務(wù),從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。在設(shè)計(jì)的過(guò)程中遇到問(wèn)題,可以說(shuō)得是困難重重,這畢竟第一次做的,難免會(huì)遇到過(guò)各種各樣的問(wèn)題,同時(shí)在設(shè)計(jì)的過(guò)程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過(guò)的知識(shí)理解得不夠深刻,掌握得不夠牢固。參考文獻(xiàn)【1】張俊漠. 單片機(jī)中級(jí)教程-原理與應(yīng)用(yngyng)(第2版). 北京:北京航天航空大學(xué)出版社,2006【2】趙曉安. MCS-51

10、單片機(jī)原理及應(yīng)用(yngyng). 天津:天津大學(xué)出版社,2001.3【3】李廣第單片機(jī)基礎(chǔ)(jch)(第1版)北京:北京航空航天大學(xué)出版社,1999 【4】徐惠民、安德寧單片微型計(jì)算機(jī)原理接口與應(yīng)用 第1版 北京:北京郵電大學(xué)出版社,1996【5】何立民從Cygnal 80C51F看8位單片機(jī)發(fā)展之路 單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2002年,第5期:P5-8附錄(fl) 附錄(fl)1原器件(qjin)清單:芯片器件數(shù)目芯片器件數(shù)目AT89C511電阻 1K1DS18B201按鈕5LM016L1蜂鳴器1電容 33pF2三極管2N54011108排阻13.6V直流電源1喇叭1電解電容40uF1晶振

11、11.0592MHz1附錄(fl)2程序設(shè)計(jì)(chn x sh j)原理圖:附錄(fl)3主程序:#include#define uchar unsigned char#define uint unsigned intsbit rs=P05;sbit rw=P06;sbit e=P07; sbit k1=P32;sbit k2=P31;sbit k3=P30;uchar count,k1value;char year,month,day,hour,min,second;uchar code table=5-17 2009 sun;uchar code table1= 00:00:00;void

12、 delay(uint z) uint x,y; for(x=z;x0;x-) for(y=120;y0;y-);void write_command(uchar command) rs=0; e=0; P2=command; delay(5); e=1; delay(5); e=0; void write_datas(uchar datas) rs=1; e=0; P2=datas; delay(5); e=1; delay(5); e=0; void write_time(uchar add,uchar datas) uchar high,low; high=datas/10; low=d

13、atas%10; write_command(0 x80+0 x40+add); write_datas(0 x30+high); write_datas(0 x30+low);void keyscan() if(k1=0) delay(5); if(k1=0) k1value+; while(!k1); if(k1value=1) TR0=0; write_command(0 x0f); write_command(0 x80+0 x40+11); if(k1value=2) write_command(0 x80+0 x40+8); if(k1value=3) write_command(

14、0 x80+0 x40+5); if(k1value=4) k1value=0; write_command(0 x0c); TR0=1; if(k1value!=0) if(k2=0) delay(5); if(k2=0) while(!k2); if(k1value=1) second+; if(second=60) second=0; write_time(11,second); write_command(0 x80+0 x40+11); if(k1value=2) min+; if(min=60) min=0; write_time(8,min); write_command(0 x

15、80+0 x40+8); if(k1value=3) hour+; if(hour=24) hour=0; write_time(5,hour); write_command(0 x80+0 x40+5); if (k1value!=0) if(k3=0) delay(5); if(k3=0) while(!k3); if(k1value=1) second-; if(second=-1) second=59; write_time(11,second); write_command(0 x80+0 x40+11); if(k1value=2) min-; if(min=-1) min=59;

16、 write_time(8,min); write_command(0 x80+0 x40+8); if(k1value=3) hour-; if(hour=-1) hour=23; write_time(5,hour); write_command(0 x80+0 x40+5); void main() uchar num; rw=0; e=0; write_command(0 x38); write_command(0 x0c); write_command(0 x06); write_command(0 x01); write_command(0 x80); for(num=0;num15;num+) write_datas(tablenum); delay(20); write_command(0 x80+0 x40); for(num=0;num14;num+) write_datas(table1num); delay(20); TMOD=0 x01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1; ET0=1; TR0=1; while(1) keyscan(); void timer0() interrupt 1 TH0=(65536-50000)/256; TL0=(65536-50000)%256; co

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論