基于單片機(jī)C語(yǔ)言電子時(shí)鐘完整版(鬧鐘整點(diǎn)報(bào)時(shí))_第1頁(yè)
基于單片機(jī)C語(yǔ)言電子時(shí)鐘完整版(鬧鐘整點(diǎn)報(bào)時(shí))_第2頁(yè)
基于單片機(jī)C語(yǔ)言電子時(shí)鐘完整版(鬧鐘整點(diǎn)報(bào)時(shí))_第3頁(yè)
基于單片機(jī)C語(yǔ)言電子時(shí)鐘完整版(鬧鐘整點(diǎn)報(bào)時(shí))_第4頁(yè)
基于單片機(jī)C語(yǔ)言電子時(shí)鐘完整版(鬧鐘整點(diǎn)報(bào)時(shí))_第5頁(yè)
已閱讀5頁(yè),還剩9頁(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)介

本文格式為Word版,下載可任意編輯——基于單片機(jī)C語(yǔ)言電子時(shí)鐘完整版(鬧鐘,整點(diǎn)報(bào)時(shí))

《單片機(jī)技術(shù)》課程設(shè)計(jì)說(shuō)明書

數(shù)字電子鐘

系、部:電氣與信息工程學(xué)院學(xué)生姓名:

指導(dǎo)教師:職稱專業(yè):班級(jí):

完成時(shí)間:2023-06-07

摘要

電子鐘在生活中應(yīng)用十分廣泛,而一種簡(jiǎn)單便利的數(shù)字電子鐘則更能受到人們的歡迎。所以設(shè)計(jì)一個(gè)簡(jiǎn)易數(shù)字電子鐘很有必要。本電子鐘采用ATMEL公司的AT89S52單片機(jī)為核心,使用12MHz晶振與單片機(jī)AT89S52相連接,通過(guò)軟件編程的方法實(shí)現(xiàn)以24小時(shí)為一個(gè)周期,同時(shí)8位7段LED數(shù)碼管(兩個(gè)四位一體數(shù)碼管)顯示小時(shí)、分鐘和秒的要求,并在計(jì)時(shí)過(guò)程中具有定時(shí)功能,當(dāng)時(shí)間到達(dá)提前定好的時(shí)間進(jìn)行蜂鳴報(bào)時(shí)。該電子鐘設(shè)有四個(gè)按鍵KEY1、KEY2、KEY3、KEY4和KEU5鍵,進(jìn)行相應(yīng)的操作就可實(shí)現(xiàn)校時(shí)、定時(shí)、復(fù)位功能。具有時(shí)間顯示、整點(diǎn)報(bào)時(shí)、校正等功能。走時(shí)確鑿、顯示直觀、運(yùn)行穩(wěn)定等優(yōu)點(diǎn)。具有極高的推廣應(yīng)用價(jià)值。

關(guān)鍵詞電子鐘;AT89S52;硬件設(shè)計(jì);軟件設(shè)計(jì)

ABSTRACT

Clockiswidelyusedinlife,andasimpledigitalclockismorewelcomedbypeople.Sotodesignasimpledigitalelectronicclockisnecessary.ThesystemuseasinglechipAT89S52ofATMEL’sasitscoretocontrolThecrystaloscillatorclock,usingofE-12MHZisconnectedwiththemicrocontrollerAT89S52,throughthesoftwareprogrammingmethodtoachievea24-hourcycle,andeight7-segmentLEDdigitaltube(twofourinonedigitaltube)displayshours,minutesandsecondsrequirements,andinthetimecourseofatimingfunction,whenthetimearrivedaheadofscheduledtimetobuzzagoodtimekeeping.TheclockhasfourbuttonsKEY1,KEY2,KEY3,KEY4andKEY5key,andmaketheappropriateactioncanbeachievedwhentheschool,timing,reset.Withatimedisplay,alarmclocksettings,timerfunction,correctiveaction.Accuratetraveltime,displayandintuitive,precision,stability,andsoon.Withahighapplicationvalue.KeywordsElectronicclock;;AT89S52;HardwareDesign;SoftwareDesign

目錄

1設(shè)計(jì)課題任務(wù)、功能要求說(shuō)明及方案介紹……11.1設(shè)計(jì)課題任務(wù)………………11.2功能要求說(shuō)明………………11.3設(shè)計(jì)總體方案介紹及原理說(shuō)明……………12設(shè)計(jì)課題硬件系統(tǒng)的設(shè)計(jì)………22.1設(shè)計(jì)課題硬件系統(tǒng)各模塊功能簡(jiǎn)要介紹…………………22.2設(shè)計(jì)課題電路原理圖、PCB圖、元器件布局圖…………22.3設(shè)計(jì)課題元器件清單………53設(shè)計(jì)課題軟件系統(tǒng)的設(shè)計(jì)………63.1設(shè)計(jì)課題使用單片機(jī)資源的狀況…………63.2設(shè)計(jì)課題軟件系統(tǒng)各模塊功能簡(jiǎn)要介紹…………………63.3設(shè)計(jì)課題軟件系統(tǒng)程序流程框圖…………63.4設(shè)計(jì)課題軟件系統(tǒng)程序清單………………104設(shè)計(jì)結(jié)論、仿真結(jié)果、誤差分析、教學(xué)建議…………………214.1設(shè)計(jì)課題的設(shè)計(jì)結(jié)論及使用說(shuō)明…………214.2設(shè)計(jì)課題的仿真結(jié)果………214.3設(shè)計(jì)課題的誤差分析………224.4設(shè)計(jì)體會(huì)……………………224.5教學(xué)建議……………………22結(jié)束語(yǔ)……………23減少了芯片的使用數(shù)量簡(jiǎn)化了整體電路也降低了整機(jī)的工作電流。鍵盤采用動(dòng)態(tài)掃描方式。利用單片機(jī)定時(shí)器及計(jì)數(shù)器產(chǎn)生定時(shí)效果通過(guò)編程形成數(shù)字鐘效果,再利用數(shù)碼管動(dòng)態(tài)掃描顯示單片機(jī)內(nèi)部處理的數(shù)據(jù),同時(shí)通過(guò)端口讀入當(dāng)前外部控制狀態(tài)來(lái)改變程序的不同狀態(tài),實(shí)現(xiàn)不同功能。

2設(shè)計(jì)課題硬件系統(tǒng)的設(shè)計(jì)

2.1設(shè)計(jì)課題硬件系統(tǒng)各模塊功能簡(jiǎn)要介紹

本設(shè)計(jì)的硬件系統(tǒng)主要采用以下基本模塊來(lái)實(shí)現(xiàn),單片機(jī)最小系統(tǒng)模塊,輸入模塊、輸出模塊、電源模塊。

(1)單片機(jī)最小系統(tǒng)模塊:包括低功耗、高性能CMOS8位微控制器AT89S52;復(fù)位電路;晶振電路。本本模塊AT89S52系統(tǒng)控制核心,單片機(jī)系統(tǒng)復(fù)位由復(fù)位電路完成,單片機(jī)內(nèi)部有一個(gè)高增益、反相放大器,其輸入端為芯片引腳XTAL1,其輸出端位位引腳XTAL2。通過(guò)這兩個(gè)引腳在芯片外并接石英晶體振蕩器和兩只電容。這樣就構(gòu)成一個(gè)穩(wěn)定的自激振蕩器。

(2)輸入模塊:本模塊共用到了4個(gè)按鍵,1個(gè)電源開(kāi)關(guān),一個(gè)復(fù)位鍵,單片機(jī)運(yùn)行期間,利用按鍵完成復(fù)位操作。3個(gè)按鍵獨(dú)立式鍵盤,KEY1鍵控制電子鐘的啟動(dòng),KEY2鍵為加1鍵,KEY3鍵為減1鍵,KEY1鍵第三次控制電子鐘的調(diào)整狀態(tài)。且KEY1、KEY2、KEY3、任一鍵都單獨(dú)連一個(gè)I/O(P1.0、P1.1、P1.2、P1.3)口線,說(shuō)明它們可以獨(dú)立實(shí)現(xiàn)相應(yīng)的電子鐘功能。

(3)輸出模塊:本次設(shè)計(jì)顯示為8位,采用兩個(gè)四位一體數(shù)碼管(共陽(yáng)極)作為顯示窗口,既可以儉約成本又能簡(jiǎn)化電路。數(shù)碼管用8個(gè)PNP三極管驅(qū)動(dòng)。(4)電源模塊:現(xiàn)在市面上銷售的編程器有好多都是由PC機(jī)的USB口直接供電為了降低本設(shè)計(jì)的成本及節(jié)省設(shè)計(jì)時(shí)間,沒(méi)有另外設(shè)計(jì)編程器,而直接購(gòu)買了市場(chǎng)上的USB供電及下載器。

2.2設(shè)計(jì)課題電路原理圖、PCB圖、元器件布局圖

圖2-1電路原理圖

總設(shè)計(jì)原理圖見(jiàn)附錄A原理總設(shè)計(jì)圖見(jiàn)附錄附錄B

PCB圖見(jiàn)附錄C

2.3設(shè)計(jì)課題元器件清單

表2-1設(shè)計(jì)所用元器件清單

名稱電容數(shù)碼管電阻下載口普通插座電阻按鍵三極管USB供電線晶振極性電容芯片發(fā)光二極管六角開(kāi)關(guān)數(shù)量2個(gè)2個(gè)1個(gè)1個(gè)1個(gè)16個(gè)4個(gè)9個(gè)1根1個(gè)1個(gè)1塊9個(gè)1個(gè)參數(shù)33pF4位一體200ΩWE40PIN470ΩPNP12MHz22μFAT89S52LEDSW-PB

3設(shè)計(jì)課題軟件系統(tǒng)的設(shè)計(jì)

3.1設(shè)計(jì)課題使用單片機(jī)資源的狀況

設(shè)計(jì)課題使用單片機(jī)資源的狀況如下:

P0口輸出數(shù)碼管段選信號(hào),P2口輸出數(shù)碼管位選信號(hào);晶振12MHz;調(diào)整選擇鍵KEY1:P1.0;通過(guò)選擇鍵選擇調(diào)整位,選中位閃爍;增加鍵KEY2:P1.1;按一次使選中位加1;減少鍵KEY3:P1.2;按一次使選中位減1;此數(shù)字鐘可實(shí)現(xiàn)基本的走時(shí)和顯示時(shí)間時(shí)、分、秒;時(shí)間的調(diào)整;鬧鐘的設(shè)定和調(diào)整;鬧鐘的開(kāi)啟和關(guān)閉功能,具體如下:(1)實(shí)現(xiàn)基本的走時(shí)和顯示時(shí)間的時(shí)、分、秒,上電自動(dòng)顯示初始時(shí)間12-00-00,且控制鬧鐘狀態(tài)的的藍(lán)色led燈為亮的狀態(tài)。

(2)當(dāng)?shù)谝淮伟聪碌谝粋€(gè)彈性按鍵時(shí)進(jìn)入時(shí)間的調(diào)理狀態(tài),此時(shí)實(shí)現(xiàn)對(duì)顯示時(shí)間的小時(shí)調(diào)理,按下其次個(gè)按鍵時(shí)實(shí)現(xiàn)小時(shí)的加一調(diào)理,按下第三個(gè)按鍵時(shí)實(shí)現(xiàn)小時(shí)的減一調(diào)理。

(3)當(dāng)其次次按下第一個(gè)彈性按鍵時(shí)進(jìn)入顯示時(shí)間的分鐘調(diào)理狀態(tài),按下其次個(gè)按鍵時(shí)實(shí)現(xiàn)分鐘的加一調(diào)理,按下第三個(gè)按鍵時(shí)實(shí)現(xiàn)分鐘的減一調(diào)理。

(4)當(dāng)?shù)谌伟聪碌谝粋€(gè)彈性按鍵時(shí)進(jìn)入鬧鐘的小時(shí)調(diào)理狀態(tài),按下其次個(gè)按鍵時(shí)實(shí)現(xiàn)鬧鐘小時(shí)的加一調(diào)理,按下第三個(gè)按鍵時(shí)實(shí)現(xiàn)鬧鐘小時(shí)的減一調(diào)理。

(5)當(dāng)?shù)谒拇伟聪碌谝粋€(gè)彈性按鍵時(shí)進(jìn)入鬧鐘的分鐘調(diào)理狀態(tài),按下其次個(gè)按鍵時(shí)實(shí)現(xiàn)鬧鐘分鐘的加一調(diào)理,按下第三個(gè)按鍵時(shí)實(shí)現(xiàn)鬧鐘分鐘的減一調(diào)理。(6)當(dāng)?shù)谖宕伟聪碌谝粋€(gè)彈性按鍵時(shí)返回正常的顯示時(shí)間走時(shí)狀態(tài)。

(7)當(dāng)同時(shí)按下其次和第三個(gè)彈性按鍵時(shí),關(guān)閉鬧鐘,且此時(shí)藍(lán)色led燈為滅,及定時(shí)時(shí)間到蜂鳴器并不響,若再次同時(shí)按下其次和第三個(gè)彈性按鍵,則開(kāi)啟鬧鐘,且此時(shí)藍(lán)色led燈為亮,定時(shí)時(shí)間到蜂鳴器發(fā)出滴滴的鬧鈴聲,同時(shí)按下其次和第三個(gè)彈性按鍵即可關(guān)閉鬧鈴。鬧鈴狀態(tài)默認(rèn)為開(kāi)啟。

3.2設(shè)計(jì)課題軟件系統(tǒng)個(gè)模塊功能簡(jiǎn)要介紹

本設(shè)計(jì)的軟件系統(tǒng)主要采用以下基本模塊來(lái)實(shí)現(xiàn),主程序、中斷服務(wù)程序、鍵盤輸入程序模塊、數(shù)碼管及其驅(qū)動(dòng)模塊和延時(shí)模塊。

主程序:主要是用于對(duì)輸入信號(hào)的處理、輸出信號(hào)的控制和對(duì)各個(gè)功能程序模塊的運(yùn)用及其控制。

中斷服務(wù)程序:主要是用于電子鐘的確鑿運(yùn)行、數(shù)據(jù)輸入過(guò)程中的閃爍。鍵盤輸入程序模塊:主要是用于確定按鍵并得到特定的鍵碼值。數(shù)碼管及其驅(qū)動(dòng)模塊:主要是用于驅(qū)動(dòng)數(shù)碼管及利用數(shù)碼管顯示時(shí)間。延時(shí)模塊:程序中有兩種延時(shí)子程序,一種是短延時(shí)用于判鍵按下等,一種是長(zhǎng)延時(shí)。

3.3設(shè)計(jì)課題軟件系統(tǒng)程序流程框圖

系統(tǒng)軟件采用匯編語(yǔ)言按模塊化方式進(jìn)行設(shè)計(jì),然后通過(guò)Keil軟件開(kāi)發(fā)平臺(tái)將程序轉(zhuǎn)變成十六進(jìn)制程序語(yǔ)言,接著使用Proteous進(jìn)行仿真,讀出顯示數(shù)據(jù)。

主程序流程框圖如3-1所示;時(shí)間處理子程序流程框圖3-2所示;中斷服務(wù)程序程序如3=3所示;

圖3-1主程序流程框圖

#defineuintunsignedint#defineucharunsignedcharsbitKEY1=P1^1;//切換鍵

sbitKEY2=P1^2;//minute,hour調(diào)整加1定義sbitKEY3=P1^7;//minute,hour調(diào)整減1定義sbitbear=P3^1;//鬧鈴

sbitled=P1^2;//鬧鐘,整時(shí)燈閃爍

codeunsignedchartab[]={0xc0,0xf9,0xa4,

0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf,0xc8,0x8e,0xff,0x21};//段碼控制charcodeweikong_code[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};ucharms[8]={2,2,10,4,0,0,1,14};ucharStrTab[8];

ucharminute=59,hour=12,second=0;//正常時(shí)鐘秒,分,時(shí)定義ucharminute1=00,hour1=00;second1=00;//鬧鐘時(shí)鐘秒,分,時(shí)定義ucharflag=0,flag1=0;//切換標(biāo)志ucharnum=0;uintcount=0;//定時(shí)器計(jì)數(shù),定時(shí)50ms,count滿20,秒加1/***********子函數(shù)聲明*******************************************/

voidxianshishuzu();//顯示數(shù)組子程序voidalarm();//鬧鐘子程序

/**********************延時(shí)子程序*****************************/voiddelay(uintz){uintx,y;for(x=0;x

if(flag==3)//鬧鐘對(duì)時(shí){if(KEY2==0){delay(10);if(KEY2==0){hour1++;if(hour1==24)hour1=0;}//鬧鐘時(shí)間小時(shí)加1while(!KEY2){alarm();}}if(KEY3==0){delay(10);if(KEY3==0){hour1--;if(hour1==0)hour1=23;}//鬧鐘時(shí)間小時(shí)減while(!KEY3){alarm();}}}if(flag==4){if(KEY2==0)//按鍵去抖以及動(dòng)作{delay(10);if(KEY2==0){minute1++;if(minute1==60)minute1=0;//鬧鐘分加1}while(!KEY2){alarm();}}

if(KEY3==0)//按鍵去抖以及動(dòng)作{

delay(10);if(KEY3==0){minute1--;if(minute1==0)minute1=59;}//鬧鐘分減1}while(!KEY3){alarm();}}}

/*******************蜂鳴器子程序****************************/voidbeng(){

bear=1;P3=0xfd;delay(100);bear=0;P3=0XFf;delay(100);}

/*****************整點(diǎn)報(bào)警子程序***************************/voidzhengdian(void){uchari=0;if((second==0)i0)

{if(flag==1||flag==2){TR0=1;dispaly(StrTab);zhengdian();}if(flag==3||flag==4){TR0=0;alarm();}if(flag==5){dispaly(StrTab);}if(flag==6){TR0=0;flag=0;dispaly(ms);}}}}

if(minute==60){minute=0;hour++;if(hour==24){hour=0;}}}}

xianshishuzu();

//分值等于60,分清零,時(shí)加1

//時(shí)值等于24,時(shí)清零,返回,全部歸零

4設(shè)計(jì)結(jié)論、仿真結(jié)果、誤差分析、教學(xué)建議

4.1設(shè)計(jì)課題的設(shè)計(jì)結(jié)論及使用說(shuō)明

本設(shè)計(jì)為基于單片機(jī)的電子

溫馨提示

  • 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)論