基于單片機(jī)的電子時(shí)鐘課程設(shè)計(jì)_第1頁(yè)
基于單片機(jī)的電子時(shí)鐘課程設(shè)計(jì)_第2頁(yè)
基于單片機(jī)的電子時(shí)鐘課程設(shè)計(jì)_第3頁(yè)
基于單片機(jī)的電子時(shí)鐘課程設(shè)計(jì)_第4頁(yè)
基于單片機(jī)的電子時(shí)鐘課程設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩11頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

PAGE1- 目錄第一章前言1第二章設(shè)計(jì)目的與要求2第三章系統(tǒng)原理分析3第四章硬件介紹4第五章軟件實(shí)現(xiàn)與流程55.1主程序55.2數(shù)據(jù)的顯示程序75.3鍵盤(pán)響應(yīng)程序8第六章結(jié)束語(yǔ)9參考文獻(xiàn)10附錄一程序代碼11附錄二程序仿真圖15PAGE2-第一章前言時(shí)鐘,自從它發(fā)明的那天起,就成為人類(lèi)的朋友,但隨著時(shí)間的推移,科學(xué)技術(shù)的不斷發(fā)展,人們對(duì)時(shí)間計(jì)量的精度要求越來(lái)越高,應(yīng)用越來(lái)越廣。怎樣讓時(shí)鐘更好的為人民服務(wù),怎樣讓我們的老朋友煥發(fā)青春呢?這就要求人們不斷設(shè)計(jì)出新型時(shí)鐘。現(xiàn)今,高精度的計(jì)時(shí)工具大多數(shù)都使用了石英晶體振蕩器,由于電子鐘,石英表,石英鐘都采用了石英技術(shù),因此走時(shí)精度高,穩(wěn)定性好,使用方便,不需要經(jīng)常調(diào)校,數(shù)字式電子鐘用集成電路計(jì)時(shí)時(shí),譯碼代替機(jī)械式傳動(dòng),用LED顯示器代替顯示器代替指針顯示進(jìn)而顯示時(shí)間,減小了計(jì)時(shí)誤差,這種表具有時(shí),分,秒顯示時(shí)間的功能,還可以進(jìn)行時(shí)和分的校對(duì),片選的靈活性好。時(shí)鐘電路在計(jì)算機(jī)系統(tǒng)中起著非常重要的作用,是保證系統(tǒng)正常工作的基礎(chǔ)。在一個(gè)單片機(jī)應(yīng)用系統(tǒng)中,時(shí)鐘有兩方面的含義:一是指為保障系統(tǒng)正常工作的基準(zhǔn)振蕩定時(shí)信號(hào),主要由晶振和外圍電路組成,晶振頻率的大小決定了單片機(jī)系統(tǒng)工作的快慢;二是指系統(tǒng)的標(biāo)準(zhǔn)定時(shí)時(shí)鐘,即定時(shí)時(shí)間,它通常有兩種實(shí)現(xiàn)方法:一是用軟件實(shí)現(xiàn),即用單片機(jī)內(nèi)部的可編程定時(shí)/計(jì)數(shù)器來(lái)實(shí)現(xiàn),但誤差很大,主要用在對(duì)時(shí)間精度要求不高的場(chǎng)合;二是用專(zhuān)門(mén)的時(shí)鐘芯片實(shí)現(xiàn),在對(duì)時(shí)間精度要求很高的情況下,通常采用這種方法,典型的時(shí)鐘芯片有:DS1302,DS12887,X1203等都可以滿(mǎn)足高精度的要求。本文主要介紹用單片機(jī)內(nèi)部的定時(shí)/計(jì)數(shù)器來(lái)實(shí)現(xiàn)電子時(shí)鐘的方法,本設(shè)計(jì)由單片機(jī)AT89S51芯片和LED數(shù)碼管為核心,輔以必要的電路,構(gòu)成了一個(gè)單片機(jī)電子時(shí)鐘。第二章設(shè)計(jì)目的與要求進(jìn)行電路硬件設(shè)計(jì)和系統(tǒng)軟件編程,以及仿真調(diào)試或制作。一般3~5人一組,每組完成的內(nèi)容不能雷同。選擇設(shè)計(jì)基于單片機(jī)的時(shí)鐘顯示器,數(shù)字鐘是一個(gè)將“時(shí)”、“分”、“秒”顯示計(jì)時(shí)裝置。它的計(jì)時(shí)周期為24小時(shí),顯示滿(mǎn)刻度為23時(shí)59分59秒99毫秒,另外應(yīng)有校時(shí)功能。實(shí)現(xiàn)的功能:在數(shù)字鐘正常進(jìn)行顯示時(shí),其顯示周期為00:00:00至23:59:59,其中有五個(gè)按鍵,按下“暫?!辨I時(shí)鐘停止走動(dòng),按下“開(kāi)始”鍵時(shí)鐘開(kāi)始走動(dòng),按下“秒設(shè)置”時(shí)鐘秒位自加1,加至60時(shí)向分位進(jìn)1,按下“分設(shè)置”時(shí)鐘分位自加1,加至60時(shí)向時(shí)位進(jìn)1,按下“時(shí)設(shè)置”時(shí)鐘秒位自加1,加至24時(shí)顯示00。第三章系統(tǒng)原理分析系統(tǒng)設(shè)計(jì)中用到89C51單片機(jī)的部分功能:包括內(nèi)部定時(shí)器,鍵盤(pán)擴(kuò)展,程序中斷,串口通信等。用一個(gè)六位的共陰極七段顯示器,可通過(guò)一個(gè)輸入/輸出口作為顯示器數(shù)據(jù)發(fā)送端;另一個(gè)輸入/輸出口的六位作為顯示器各位的片選信號(hào),另一個(gè)輸入/輸出口作為鍵盤(pán)擴(kuò)展口使用。系統(tǒng)原理圖如圖1所示。P2.0-7P2.0-7單片機(jī)數(shù)碼顯示器按鍵P3.0-5P1.0-4圖1系統(tǒng)原理圖圖2數(shù)字鐘仿真圖第四章硬件介紹AT89C51:芯片共有40個(gè)引腳,引腳的排列順序?yàn)閺目啃酒娜笨谧筮吥橇心鏁r(shí)針數(shù)起,依次為1,2,3,4、、、40,其中芯片的1腳頂上有一個(gè)凹點(diǎn)。在單片機(jī)的40個(gè)引腳中,電源引腳2根,外接晶體振蕩器引腳2根,控制引腳4根以及4組8為可編程I/O引腳32根。主要特性:與MCS-51兼容;4K字節(jié)可編程閃爍存儲(chǔ)器;壽命:1000寫(xiě)/擦循環(huán);數(shù)據(jù)保留時(shí)間:10年;全靜態(tài)工作:0Hz-24Hz;三級(jí)程序存儲(chǔ)器鎖定:128*8位內(nèi)部RAM;32可編程I/O線(xiàn);兩個(gè)16位定時(shí)器/計(jì)數(shù)器;5個(gè)中斷源;可編程串行通道;低功耗的閑置和掉電模式;片內(nèi)振蕩器和時(shí)鐘電路。主要管腳說(shuō)明:P0口:P0口為一個(gè)8位漏級(jí)開(kāi)路雙向I/O口,每腳可吸收8TTL門(mén)電流。當(dāng)P1口的管腳第一次寫(xiě)1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時(shí),P0口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高。P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門(mén)電流。P1口管腳寫(xiě)入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門(mén)電流,當(dāng)P2口被寫(xiě)“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫(xiě)時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門(mén)電流。當(dāng)P3口寫(xiě)入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。六位共陰級(jí)數(shù)碼管:cc表示共陰極的ac是共陽(yáng)極的設(shè)計(jì)中所用的是7段六位共陰級(jí)數(shù)碼管,如果要實(shí)現(xiàn)動(dòng)態(tài)顯示必須位碼(1-6)輪流通低電位,也就是片選,段碼控制數(shù)碼管的顯示.0-b,1-g,2-a,3-f,4-c,5-e,6-h,7-d。圖3數(shù)碼管顯示原理圖如圖3數(shù)碼管顯示原理圖所示,使用LED顯示器時(shí),要注意是共陰還是共陽(yáng),要注意區(qū)分這兩種不同的接法。為了顯示數(shù)字或字符,必須對(duì)數(shù)字或字符進(jìn)行編碼。七段數(shù)碼管加上一個(gè)小數(shù)點(diǎn),共計(jì)8段。因此為L(zhǎng)ED顯示器提供的編碼正好是一個(gè)字節(jié)。我們用的是共陰LED顯示器,根據(jù)電路連接圖顯示16進(jìn)制數(shù)的編碼已列在下表。0x3f,0x06,0x5b,0x4f,0x66,0x6d,0 1 2 3450x7d,0x07,0x7f,0x6f,0x77,0x7c,6 7 8 9AB0x39,0x5e,0x79,0x71,0x00CDEF無(wú)顯示動(dòng)態(tài)顯示的特點(diǎn)是將所有位數(shù)碼管的段選線(xiàn)并聯(lián)在一起,由位選線(xiàn)控制是哪一位數(shù)碼管有效,由另一位控制顯示碼值。選亮數(shù)碼管采用動(dòng)態(tài)掃描顯示。所謂動(dòng)態(tài)掃描顯示即輪流向各位數(shù)碼管送出字形碼和相應(yīng)的位選,利用發(fā)光管的余輝和人眼視覺(jué)暫留作用,使人的感覺(jué)好像各位數(shù)碼管同時(shí)都在顯示。動(dòng)態(tài)顯示的亮度比靜態(tài)顯示要差一些,所以在選擇限流電阻時(shí)應(yīng)略小于靜態(tài)顯示電路中的。我們這里正是利用的數(shù)碼管動(dòng)態(tài)顯示來(lái)完成顯示功能。第五章軟件實(shí)現(xiàn)與流程5.1主程序由于系統(tǒng)的主要功能都是由子程序來(lái)完成的,主程序基本上沒(méi)什么事可做,只是利用調(diào)用子程序的方式實(shí)現(xiàn)的,主程序流程圖如圖3所示。開(kāi)始開(kāi)始初始化調(diào)用顯示子程序調(diào)用按鍵操作子程序1?結(jié)束YN圖3主程序流程圖5.2數(shù)據(jù)的顯示程序時(shí)鐘數(shù)字顯示涉及到兩個(gè)操作:發(fā)數(shù)據(jù)和改片選信號(hào)。先發(fā)片選,再發(fā)數(shù)據(jù)。用延時(shí)程序進(jìn)行一個(gè)消影操作,這樣就很好地解決了重影問(wèn)題。這樣做的關(guān)鍵在于,在極短的一段時(shí)間內(nèi)讓顯示器都不亮,等一切準(zhǔn)備工作都做好了以后再發(fā)數(shù)據(jù),只要顯示頻率足夠快,是看不出顯示器有閃爍的。代碼如下:shi=hour/10;ge=hour%10;P3=0xfe;P2=table1[shi];delay(5);P3=0xfd;P2=table1[ge];dp=1;delay(5);這段顯示程序流程圖如圖4:開(kāi)始開(kāi)始求時(shí)/分/秒的個(gè)位、十位片選顯示時(shí)/分/秒十位延時(shí)消影顯示時(shí)/分/秒個(gè)位縣市小數(shù)點(diǎn)結(jié)束圖4數(shù)據(jù)顯示流程圖5.3鍵盤(pán)響應(yīng)程序鍵盤(pán)分編碼鍵盤(pán)和非編碼鍵盤(pán),鍵盤(pán)上閉合鍵的識(shí)別由專(zhuān)用的硬件編碼器實(shí)現(xiàn),并產(chǎn)生按鍵編碼號(hào)或鍵值的稱(chēng)為編碼鍵盤(pán),如計(jì)算機(jī)鍵盤(pán)。而靠軟件編程來(lái)識(shí)別的稱(chēng)為非編碼鍵盤(pán),在單片機(jī)組成的各種系統(tǒng)中,用的最多的是非編碼鍵盤(pán),也有用到編碼鍵盤(pán)的,我們這里用的就是非編碼鍵盤(pán)。如圖4鍵盤(pán)圖所示,當(dāng)按鈕按下時(shí);端口會(huì)變成低電平,我們?cè)O(shè)計(jì)一段掃描程序來(lái)判斷那個(gè)端口是低電平來(lái)判斷是否有按鍵按下。鍵盤(pán)處理程序流程相對(duì)簡(jiǎn)單,只是簡(jiǎn)單的判鍵與處理。當(dāng)設(shè)置按鍵按下為低電平時(shí),對(duì)應(yīng)位數(shù)加1至滿(mǎn)進(jìn)制。開(kāi)始開(kāi)始檢測(cè)“暫?!卑存ISet1=0?標(biāo)記為1按鍵按下?秒/分/時(shí)自增1至滿(mǎn)進(jìn)制結(jié)束向高位增1NNNY圖5按鍵響應(yīng)程序流程第六章結(jié)束語(yǔ)通過(guò)這次單片機(jī)設(shè)計(jì),我加深了對(duì)課本專(zhuān)業(yè)知識(shí)的理解,平常都是理論知識(shí)的學(xué)習(xí),在此次課程設(shè)計(jì)中,真正做到了自己查閱資料、完成一個(gè)基本電路的設(shè)計(jì)。在此次的數(shù)字鐘設(shè)計(jì)過(guò)程中,我更進(jìn)一步地熟悉了芯片的結(jié)構(gòu)及掌握了各芯片的工作原理和其具體的使用方法。當(dāng)然,在這個(gè)過(guò)程中我也遇到了困難,通過(guò)查閱資料,相互討論,我準(zhǔn)確地找出錯(cuò)誤所在并及時(shí)糾正了,這也是我最大的收獲,使自己的實(shí)驗(yàn)動(dòng)手能力有了進(jìn)一步的提高,讓我對(duì)以后的工作學(xué)習(xí)有了更大的信心。回顧起此次設(shè)計(jì),感慨頗多,從理論到實(shí)踐,我學(xué)到很多很多的東西,不僅鞏固了以前所學(xué)過(guò)的知識(shí),而且學(xué)到了很多在書(shū)本上沒(méi)有學(xué)到過(guò)的內(nèi)容。通過(guò)這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來(lái),從理論中得出結(jié)論,才是真正的知識(shí),才能提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。在設(shè)計(jì)的過(guò)程遇到了各種各樣的問(wèn)題,同時(shí)在設(shè)計(jì)的過(guò)程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過(guò)的知識(shí)理解得不夠深刻,掌握得不夠牢固,通過(guò)這次課程設(shè)計(jì),把以前所學(xué)過(guò)的知識(shí)重新溫故,鞏固了所學(xué)的知識(shí)。此次的課程設(shè)計(jì),還讓我知道了最重要的是心態(tài),在你拿到題目時(shí)會(huì)覺(jué)得困難,但是只要充滿(mǎn)信心,腳踏實(shí)地,就肯定會(huì)完成的。參考文獻(xiàn)[1]張齊、朱寧西編著.《單片機(jī)系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)--基于Proteus單片機(jī)仿真和C語(yǔ)言編程》北京:機(jī)械工業(yè)出版社.2008年[2]馬忠梅編著.《單片機(jī)的C語(yǔ)言應(yīng)用程序設(shè)計(jì)(第4版)》.北京:北京航天航空大學(xué)出版社.2007年[3]李學(xué)禮編著.《基于Proteus的8051單片機(jī)實(shí)例教程》電子工業(yè)出版社,2008年[4]戴佳戴、衛(wèi)恒、劉博文編著.《51單片機(jī)C語(yǔ)言應(yīng)用程序設(shè)計(jì)實(shí)例精講》電子工業(yè)出版社.2008年[5]侯玉寶編著.《基于Proteus的51系列單片機(jī)設(shè)計(jì)與仿真》電子工業(yè)出版社.2008年附錄一程序代碼#include<reg51.h>#defineucharunsignedchar#defineuintunsignedintsbitset1=P1^0;//暫停sbitset2=P1^1;//開(kāi)始sbitsets=P1^2;//秒設(shè)置sbitsetm=P1^3;//分設(shè)置sbitseth=P1^4;//時(shí)設(shè)置sbitdp=P2^7;//小數(shù)點(diǎn)ucharcodetable1[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};uchart0,hour,fen,miao,ge,shi,flag;voiddelay(uintz)//延時(shí)子程序z的取值為這個(gè)函數(shù)的延時(shí)ms數(shù),如delay(200);大約延時(shí)200ms{uintx,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}voidinit(){TMOD=0x01;//TMOD的值表示定時(shí)器工作方式選擇TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;//開(kāi)總中斷ET0=1;//允許定時(shí)器0中斷TR0=1;//啟動(dòng)定時(shí)器}voidtimer0()interrupt1//定時(shí)器0的中斷號(hào)是1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;t0++;if(t0==20){t0=0;miao++;if(miao==60){miao=0;fen++;if(fen==60){fen=0;hour++;if(hour==24)hour=0;}}}}voiddisplay(ucharhour,ucharfen,ucharmiao){shi=hour/10;ge=hour%10;P3=0xfe;P2=table1[shi];delay(5);P3=0xfd;P2=table1[ge];dp=1;delay(5);shi=fen/10;ge=fen%10;P3=0xfb;P2=table1[shi];delay(5);P3=0xf7;P2=table1[ge];dp=1;delay(5);shi=miao/10;ge=miao%10;P3=0xef;P2=table1[shi];delay(5);P3=0xdf;P2=table1[ge];delay(5);}voidkeyscan(){if(set1==0){delay(5);if(set1==0){TR0=0;flag=1;}while(!set1);}if(flag==1){if(sets==0){delay(5);if(sets==0){miao++;if(miao==60){miao=0;fen++;if(fen==60){fen=0;hour++;if(hour==24)hour=0;}}}while(!sets);}}if(setm==0){delay(5);if(setm==0){fen++;if(fen==60){fen=0;hour++;if(hour==24)hour=0;}}while(!setm);}if

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論