大工20春《單片機原理及應(yīng)用》大作業(yè)_第1頁
大工20春《單片機原理及應(yīng)用》大作業(yè)_第2頁
大工20春《單片機原理及應(yīng)用》大作業(yè)_第3頁
已閱讀5頁,還剩11頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、頁腳頁腳網(wǎng)絡(luò)教育學(xué)院網(wǎng)絡(luò)教育學(xué)院單片機原理及應(yīng)用大作業(yè)題目:單片機電子時鐘設(shè)計學(xué)習(xí)中心:層次:專升本專業(yè):電氣工程及其自動化學(xué)號:學(xué)生:完成日期:2022年 5月27 日大工 20 春單片機原理及應(yīng)用大作業(yè)具體要求:1 作業(yè)容從以下五個題目中任選其一作答。 2 正文格式作業(yè)正文容統(tǒng)一承受宋體,字號為小四,字數(shù)在 2022 字以上。作業(yè)提交學(xué)生需要以附件形式上交離線作業(yè)10M成的作業(yè),點“上交”即可。如以下圖所示。留意事項請同學(xué)獨立完成作業(yè),不準抄襲其他人或者請人代做,如有雷同作業(yè),成 績以零分計!題目一:單片機電子時鐘設(shè)計準則:設(shè)計一個基51 單片機或STM 單片機的電子時鐘,并且能夠?qū)崿F(xiàn)時分

2、秒的顯示和調(diào)整顯示和調(diào)整首先介紹課題背景,并進展需求分析及可行性分析,包括軟硬件功頁腳頁腳能安排、核心器件的選型等;能安排、核心器件的選型等;對系統(tǒng)軟件進展設(shè)計,選用匯編語言或C 語言編寫程序,給出軟件開發(fā)流程;總結(jié):需要說明的問題以及設(shè)計的心得體會。單片機電子時鐘設(shè)計一、引言單片機技術(shù)在計算機中作為獨立的分支,有著性價比高、集成度高、體積片機是將計算機的根本部件微型化并集成在一塊芯片上的微型計算機。二、時鐘的根本原理分析00.01s100,每中斷一次中斷計數(shù)1,01s1,1min1h為了將時間在 LEDLED看起來總是亮的,從而實現(xiàn)了各種顯示。三、時鐘設(shè)計分析針對要實現(xiàn)的功能,承受AT89S

3、51單片機進展設(shè)計,AT89S51 單片機是一款低功耗,高性能CMOS8位單片機,片含4KB在線可編程ISP的可反復(fù)擦寫1000次的Flash只讀程序存儲器,器件承受高密度、非易失性存儲技術(shù)制造,兼容標功能。時間調(diào)整程序、鬧鐘調(diào)整程序、定時調(diào)整程序,延時程序等。運用這種方法,關(guān)鍵在于各模塊的兼容和協(xié)作,假設(shè)各模塊不匹配會消滅意想不到的錯誤。語言的編程方法再依據(jù)設(shè)計的硬件電路進展分塊的編程調(diào)試,最終完成程序設(shè)繪制。四、時鐘的實現(xiàn)A.電路設(shè)計整體設(shè)計此次設(shè)計主要是應(yīng)用單片機來設(shè)計電子時鐘,硬件局部主要分以下電路模8個共陰數(shù)碼管分別顯示,星期年份,小時、分鐘月份秒日,通過動態(tài)掃描進展顯示,從而避開了

4、譯碼器的使用,同季節(jié)約了I/0端口,使電路更加簡潔。單片機承受AT89S51系列,這種單片機應(yīng)用簡潔,適合電子鐘設(shè)計。電路的總體設(shè)計框架如下:輸入局部輸入局部單片機輸出局部晶振和復(fù)位分塊設(shè)計模塊電路主要分為:輸入局部、輸出局部、復(fù)位和晶振電路。輸入局部以下為輸入局部樣例:頁腳頁腳在本試驗中主要用用P3口輸入按鍵信號,還用到了特別的P0口。對于P0口,輸出局部7段數(shù)碼管的位選和段選信號,鬧鈴脈沖信號,提示燈信號。P1P2.6端輸出,模塊如下:晶振與復(fù)位電路本試驗單片機時鐘用部時鐘,模塊如下:復(fù)位電路為手動復(fù)位構(gòu)成,模塊如下:各模塊拼接組合,電路總體設(shè)計圖如下:程序設(shè)計程序總體設(shè)計 程序總的流程圖

5、如下:開頭顯示星期,時,是否有調(diào)3.T0定中時鬧按按鈴12按按按按3457秒,分,提示時等響鈴顯示提示日期時間鬧鈴調(diào)整設(shè)置鈴聲秒表測試模式回主程序按程序0按按04按7按0鍵8倒 計時 啟動 并回 主秒 表秒 表程序暫停清零按0按7頁腳頁腳頁腳程序主要模塊延時模塊1ms需反復(fù)調(diào),除數(shù)碼管動態(tài)掃描外,數(shù)碼管的閃耀提示,以及音樂模塊也用到了延時,只是延時的長短不同罷了,在此不再贅述。中斷效勞程序本試驗中,計數(shù)器T0,T1中斷都有運用,其中T0中斷為時鐘定時所用,T1中斷用于音樂播放。T0的定時長度為0.01s,工作于方式1,計數(shù)1次,時長1us,故計數(shù)器計數(shù)10000次,進入中斷,計數(shù)初值為6553

6、6-10000=55536=#0D8F0,裝滿定時器需要0.01s的時間,從而100次中斷為一秒,一秒之后,推斷是否到60秒,假設(shè)不到則秒加一,然后返回,假設(shè)到,則秒賦值為0,分加一,依次類推。包括日R3為倒計時中的秒,為倒計時的分,當秒加1時R3減一,減到0之后,秒賦值為59,分減一,直到分為0。波輸出口電平的凹凸,用語句 CPL2月,每月的天數(shù)的不盡一樣。具體的規(guī)律推斷方法為:首先,要考慮年份是不是閏年,1004則為閏年,假設(shè)不能則為平年。只有2月與平、閏年相關(guān),因此在閏年和平年的子程序中,要推斷是不是2月,假設(shè)是則在相應(yīng)的年中進展日期的增加,假設(shè)不是則轉(zhuǎn)10、12月是每月31天,4、6、

7、9、11月為每月30天。日歷進位推斷流程圖如下:NY4年份是否能被 400 整除YNNY平年閏年YYNN日=281日=29 之后返回為1假設(shè)月份為 1、3、5、7、8、10、1231的程序8個數(shù)碼管,剛好能顯示年,月,日,掃描顯示與時間的掃描顯示類似。年比較特別,由兩個存放器存儲,個位,十位為0時,說明年數(shù)能被100 整除,假設(shè)此時千位,百位440044主程序用相關(guān)程序。顯示子程序8個數(shù)碼管輪番進展顯示,分別顯示1ms,數(shù)碼管持續(xù)高亮的錯覺。ACALL調(diào)用;有點直接嵌套在相應(yīng)的程序里面,挨次執(zhí)行,或者用調(diào)轉(zhuǎn)語句AJMP 調(diào)用。C本程序通過KeilHEXKeil頁腳頁腳Proteus的聯(lián)合,可以

8、將設(shè)計效果仿真出來,依據(jù)效果,有目的的轉(zhuǎn)變設(shè)計,優(yōu)化程序。利用Proteus仿真試驗過程截圖:9點10分38秒五,總結(jié)本文先從整體論述了設(shè)計電子鐘的大致思路,然后再承受劃分模塊的方法,將硬件電路劃分為開關(guān)電路,顯示驅(qū)動電路,以及數(shù)碼管電路等,而軟件局部,秒表顯示程序,時間調(diào)整程序、鬧鐘調(diào)整程序、定時調(diào)整程序,延時程序等。最終將各模塊集成為一個整體,合成一個多功能的電子鐘。的決心。附錄:延時程序: D_1MS: MOV R7,#2D_5:MOV R2,#250DJNZ R2,$ DJNZ R7,D_5頁腳頁腳RET主程序:MAIN:JNB P3.0,DATETZ;按下0鍵,顯示日期并可對日期進展

9、調(diào)整JNB P3.1,ZSTZ1;按下1鍵,顯示時間,并可調(diào)時JNB P3.2,NLTZZ;按下2鍵,進展鬧鈴設(shè)置JNB P3.3,DSTZ;按下3鍵,進展定時設(shè)置JNB P3.4,CESHI;鬧鈴測試JNB P3.6,STOPWATCHTZ;按下6鍵,進入秒表方式ACALL DISP;調(diào)用時鐘顯示子程序JNB P0.6,RERING;推斷是否開啟鬧鈴重響功能RE: JNB P2.7,DSPDKQ;推斷是否開啟鬧鈴功能,沒開則去推斷定時FMQPD:;推斷定時值R4,R3是否到零、鬧鈴時刻是否已到MOV A,HOUR;SUBB A,38H;JZ FEN;推斷小時數(shù)是否到鬧鈴所定時間,假設(shè)到,則對

10、分進展推斷;假設(shè)不到,則對定時進展推斷AJMP DSPDKQFEN:MOV A,MINUTE;SUBB A,37H;JZ MIAO;推斷分是否到鬧鈴所定時間,假設(shè)到,則對秒進展推斷;假設(shè)不到,則對定時進展推斷AJMP DSPDKQMIAO:MOV A,SECONDSUBB A,#0JZSHENGYIN1;推斷秒是否到鬧鈴所定時間,假設(shè)到,則時,分,秒都到達鬧鈴時刻,進入響鈴子程序;假設(shè)不到 則推斷定時AJMP DSPDKQRERING:;鬧鈴重響推斷程序JNB F0, RE;標志位F0為0,不進展鬧鈴重響設(shè)定CPL F0MOV 3CH,#1;定時推斷標志位賦1, 定時推斷功能開啟JNB P0.

11、7,M1;鬧鈴重響間隔時間選取MOV R4,#0;鬧鈴重響間隔30秒MOV R3,#30AJMP MAINM1:;鬧鈴重響間隔60秒MOV R4,#1MOV R3,#0AJMP MAINDSPDKQ:;推斷是否應(yīng)當進展定時推斷MOV A,3CH;3CH是引入的推斷因子,當其為0時,不對定時時間是否到0進展推斷JNZ DSPD2;當3CH不是0時,跳轉(zhuǎn)到定時推斷程序AJMP MAINDSPD2:MOV A,R4;JZ S_PD;R4所存定時分數(shù)為0,則轉(zhuǎn)而推斷R3所存定時秒數(shù)AJMP MAIN;S_PD:MOV A,R3;JNZ MAIN;R4,R3所存參數(shù)減為0, 定時長度已到JNB P0.6

12、,SHENGYIN2;鬧鈴重響功能開啟時,跳入響鈴程序AJMP TISHI;不是鬧鈴重響定時,則定時時間到時,跳入提示程序AJMP MAINCESHI:ACALL RINGAJMP MAINSHENGYIN1:;調(diào)用響鈴子程序LCALL RINGAJMP MAIN SHENGYIN2:SETB F0;鬧鈴重響標志位設(shè)定LCALL RING;響鈴CLR F0;標志位復(fù)位AJMP MAINNLTZZ:AJMP NLTZ1;跳入鬧鈴調(diào)整程序DSTZ:AJMP DSTZ1;跳入定時調(diào)整程序DATETZ:AJMP DATETZ1;跳入日期調(diào)整程序STOPWATCHTZ:AJMP STOPWATCHTZ1

13、;跳入秒表程序顯示子程序:DISP:;時間顯示子程序JNB P3.7,OUT1;推斷節(jié)能開關(guān)7是否按下,按下則數(shù)碼管不顯示,延長其壽命MOV DPTR,#LEDTABMOV A,SECOND;顯示當前時間秒位MOV B,#10DIV AB;A存十位,B存?zhèn)€位MOVC A,A+DPTRMOV P1,ACLR SEC_SACALL D_1MS;顯示當前時間秒十位SETB SEC_SMOV A,BMOVC A,A+DPTRMOV P1,ACLR SEC_GACALL D_1MS;顯示當前時間秒個位SETB SEC_GMOV A,MINUTE;顯示當前時間分位MOV B,#10DIV ABMOVC A,A+DPTRMOV P1,ACLR MIN_S ACALL D_1MSSETB MIN_S MOV A,BMOVC A,A+DPTRMOV P1,ACLR MIN_G ACALL D_1MSSETB MIN_GMOV A,HOUR;顯示當前時間時位MOV B,

溫馨提示

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

評論

0/150

提交評論