




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、基于AT89C51單片機(jī)的數(shù)字(shz)時(shí)鐘設(shè)計(jì)小組(xioz)成員:共二十四頁設(shè)計(jì)簡(jiǎn)介一設(shè)計(jì)背景二AT89C51單片機(jī)簡(jiǎn)介 三設(shè)計(jì)方案四硬件電路設(shè)計(jì)五軟件設(shè)計(jì)與程序代碼 六主要內(nèi)容共二十四頁一、設(shè)計(jì)簡(jiǎn)介本設(shè)計(jì)利用Atmel公司的AT89C51單片機(jī)對(duì)電子時(shí)鐘進(jìn)行開發(fā),設(shè)計(jì)了實(shí)現(xiàn)所需功能的硬件電路,應(yīng)用匯編進(jìn)行軟件編程,并用Proteus軟件進(jìn)行仿真演示、驗(yàn)證。主要介紹用單片機(jī)內(nèi)部的定時(shí)/計(jì)數(shù)器來實(shí)現(xiàn)電子時(shí)鐘的方法,本設(shè)計(jì)由單片機(jī)80C51芯片和LED數(shù)碼管為核心,輔以必要的電路,構(gòu)成了一個(gè)單片機(jī)的數(shù)字電子時(shí)鐘。它的計(jì)時(shí)周期為24小時(shí),顯滿刻度為“23時(shí)59分59秒”,且配有3個(gè)獨(dú)立鍵盤,可以
2、靈活地調(diào)節(jié)時(shí)間,并具有一定的擴(kuò)展性。 共二十四頁二、設(shè)計(jì)背景十一世紀(jì)的今天,最具代表性的計(jì)時(shí)產(chǎn)品就是電子萬年歷,它是近代世界鐘表業(yè)界的第三次革命。第一次是擺和擺輪游絲的發(fā)明,相對(duì)穩(wěn)定的機(jī)械振蕩頻率源使鐘表的走時(shí)差從分級(jí)縮小到秒級(jí),代表性的產(chǎn)品就是帶有擺或擺輪游絲的機(jī)械鐘或表。第二次革命是石英晶體振蕩器的應(yīng)用,發(fā)明了走時(shí)精度更高的石英電子鐘表,使鐘表的走時(shí)月差從分級(jí)縮小到秒級(jí)。第三次革命就是單片機(jī)數(shù)碼計(jì)時(shí)技術(shù)的應(yīng)用(電子萬年歷),使計(jì)時(shí)產(chǎn)品的走時(shí)日差從分級(jí)縮小到1/600萬秒,從原有傳統(tǒng)指針計(jì)時(shí)的方式發(fā)展為人們?nèi)粘8鼮槭煜さ囊构鈹?shù)字顯示方式,直觀明了,并增加了全自動(dòng)日期、星期、溫度以及其他日常附
3、屬信息的顯示功能,它更符合消費(fèi)者的生活需求!共二十四頁四、設(shè)計(jì)方案1、主程序主程序執(zhí)行流程圖如圖1所示。主程序先對(duì)顯示單元和定時(shí)器計(jì)數(shù)器初始化,然后重復(fù)調(diào)用數(shù)碼管顯示模塊和按鍵處理模塊,當(dāng)有建按下,則轉(zhuǎn)入相應(yīng)的功能程序。 共二十四頁共二十四頁四、設(shè)計(jì)方案2、數(shù)碼管顯示模塊 本設(shè)計(jì)的顯示模塊采用6位一體共陽極數(shù)碼管,顯示分為時(shí)鐘顯示模式,從右到左依次顯示秒個(gè)位,秒十位,分個(gè)位,分十位,時(shí)個(gè)位,時(shí)十位;數(shù)碼管顯示的信息用6個(gè)內(nèi)存單元存放,這6個(gè)內(nèi)存單元為顯示緩沖區(qū),其中秒個(gè)位和秒十位,分個(gè)位和分十位,時(shí)個(gè)位和時(shí)十位分別由秒數(shù)據(jù),分?jǐn)?shù)據(jù)和小時(shí)數(shù)據(jù)分拆得到。共二十四頁四、設(shè)計(jì)方案3、定時(shí)器計(jì)數(shù)器T0中
4、斷服務(wù)程序 定時(shí)器計(jì)數(shù)器T0用于時(shí)間計(jì)時(shí),選擇方式1,重復(fù)定時(shí),定時(shí)時(shí)間設(shè)為20MS,定時(shí)時(shí)間到則溢出中斷,計(jì)50次則對(duì)秒單元加1,秒單元加到60則對(duì)分單元加1,同時(shí)秒單元清零。分單元加到60的時(shí)候,則對(duì)時(shí)單元加1,同時(shí)分單元清零,時(shí)單元加到24的時(shí)候則對(duì)時(shí)單元清零,標(biāo)志一天時(shí)間計(jì)滿,此時(shí)所以單元清零。在對(duì)各單元計(jì)數(shù)的同時(shí),把它們的值放到存儲(chǔ)器單元的制定位置 共二十四頁四、設(shè)計(jì)方案4、按鍵處理模塊 按鍵處理設(shè)置為:如果沒有按鍵,則為時(shí)鐘模式,時(shí)鐘正常走時(shí).按鍵KEY1為工作模式鍵,用于時(shí)鐘顯示或調(diào)秒、調(diào)分、調(diào)時(shí)的功能切換選擇。R3寄存器記錄KEY1按鍵的次數(shù),R3=0,顯示時(shí)鐘;R3=1,調(diào)秒
5、;R3=2,調(diào)分;R3=3,調(diào)時(shí)。按鍵KEY2為增1鍵,對(duì)選定的被調(diào)項(xiàng)的當(dāng)前值增1;按鍵KEY3為減1鍵,對(duì)選定的被調(diào)項(xiàng)的當(dāng)前值減1共二十四頁五、硬件電路設(shè)計(jì)共二十四頁六、軟件設(shè)計(jì)與程序代碼 1、軟件選擇與介紹 Proteus7.8是一款電路分析實(shí)物仿真系統(tǒng),可仿真各種電路和IC,并支持單片機(jī),元件庫齊全,使用方便,是不可多得的專業(yè)的單片機(jī)軟件仿真系統(tǒng) 。共二十四頁六、軟件設(shè)計(jì)與程序代碼 2、軟件仿真電路全圖 1.模式(msh)0顯示(xinsh)時(shí)鐘共二十四頁2.模式(msh)1第1次按KEY1鍵選擇(xunz)調(diào)秒共二十四頁3.模式(msh)2第2次按KEY1鍵選擇(xunz)調(diào)分共二十四
6、頁4.模式(msh)3第3次按KEY1鍵選擇(xunz)調(diào)時(shí)共二十四頁六、軟件設(shè)計(jì)與程序代碼 3、程序代碼KEY1 BIT P1.0KEY2 BIT P1.1KEY3 BIT P1.2CLK BIT P1.3LOAD BIT P1.4DIN BIT P1.5SECOND DATA 30HMINUTE DATA 31HHOUR DATA 32H ORG 0000H AJMP MAIN ORG 000BH AJMP TIMER0MAIN:MOV SP,#60H MOV TMOD,#01H;定時(shí)器T0方式(fngsh)設(shè)置 MOV TH0,#0B1H;定時(shí)器T0裝入初值20ms MOV TL0,#0
7、E0H SETB ET0;T0中斷允許(ynx) SETB EA;總中斷允許 MOV R2,#50;T0中斷為1s SETB TR0;啟動(dòng)T0 MOV SECOND,#00H MOV MINUTE,#00H MOV HOUR,#08H ;初始化時(shí)間8點(diǎn)00分00秒 MOV A,HOUR時(shí)間值送顯示緩沖區(qū)79H7EH ANL A,#0F0H SWAP A MOV 79H,A共二十四頁 MOV A,HOUR ANL A,#0FH MOV 7AH,A MOV A,MINUTE ANL A,#0F0H SWAP A MOV 7BH,A MOV A,MINUTE ANL A,#0FH MOV 7CH,A
8、 MOV A,SECOND ANL A,#0F0H SWAP A MOV 7DH,A MOV A,SECOND ANL A,#0FH MOV 7EH,A MOV R3,#00H;R3初值設(shè)為0,顯示(xinsh)時(shí)鐘 ACALL INI7219;調(diào)用7219初始化子程序I NI7219:MOV 50H,#0FH;顯示測(cè)試寄存器設(shè)置(shzh) MOV 51H,#00H;非測(cè)試模式,正常顯示MOV R0,#50HACALL SEND7219MOV 50H,#0CH;關(guān)閉顯示寄存器MOV 51H,#01H;正常顯示MOV R0,#50HACALL SEND7219MOV 50H,#0BH;掃描界限
9、寄存器MOV 51H,#05H;6位顯示MOV R0,#50HACALL SEND7219MOV 50H,#0AH;亮度寄存器,其值為000EH,設(shè)置為0AH共二十四頁 MOV 51H,#09HMOV R0,#50HACALL SEND7219MOV 50H,#09H;譯碼方式(fngsh)寄存器MOV 51H,#0FFH;8位顯示全部B譯碼MOV R0,#50HACALL SEND7219RETDISPLAY:MOV 50H,#01H;顯示子程序 MOV 51H,79H;顯示緩沖區(qū)設(shè)在79H7EH單元MOV R0,#50H;其內(nèi)容從左至右一次顯示在數(shù)碼管顯示器上ACALL SEND7219M
10、OV 50H,#02HMOV 51H,7AH MOV R0,#50HACALL SEND7219MOV 50H,#03HMOV 51H,7BHMOV R0,#50HACALL SEND7219MOV 50H,#04HMOV 51H,7CHMOV R0,#50HACALL SEND7219MOV 50H,#05HMOV 51H,7DHMOV R0,#50HACALL SEND7219MOV 50H,#06HMOV 51H,7EHMOV R0,#50HACALL SEND7219RET共二十四頁SEND7219:CLR LOAD;向7219寫入數(shù)據(jù)子程序 MOV R4,#02H;寫入16位串行數(shù)據(jù)
11、CLR CLOP1: MOV R1,#08H MOV A,R0LOP2: RLC A MOV DIN,C SETB CLK CLR CLK DJNZ R1,LOP2 INC R0 DJNZ R4,LOP1 SETB LOAD RET;鍵掃描處理(chl)子程序KEY: JNB KEY1,KK1;判斷KEY1鍵是否按下 JB KEY1,$;等待KEY1鍵是否釋放INC R3;模式(msh)值增1 ,在0、1、2、3間逐項(xiàng)切換 CJNE R3,#04H,JMPKK3;當(dāng)讓中的模式值為4時(shí),在設(shè)置為0 MOV R3,#00HJMPKK3:AJMP KK3;轉(zhuǎn)至KK3,按R3內(nèi)容選擇顯示KK1:JNB
12、 KEY2,KK2;判斷KEY2鍵是否按下 JB KEY2,$;等待KEY2鍵釋放MOV A,R3;根據(jù)當(dāng)前R3值對(duì)時(shí)間項(xiàng)增1調(diào)整RL AMOV DPTR,#KJMP1JMP A+DPTRKJMP1: AJMP DISCLK AJMP SINC AJMP MINC AJMP HINC共二十四頁SINC: MOV A,SECOND;秒增1 ADD A,#01H DA A MOV SECOND,A CJNE A,#60H,DISS1 MOV 30H,#01HDISS1:AJMP DISS;轉(zhuǎn)至秒顯示(xinsh)緩沖區(qū)設(shè)置MINC:MOV A,MINUTE;分增1 ADD A,#01H DA A
13、MOV MINUTE,A CJNE A,#60H,DISM1 MOV MINUTE,#00HDISM1:AJMP DISM;轉(zhuǎn)至分顯示緩沖區(qū)設(shè)置HINC: MOV A,HOUR;時(shí)增1 ADD A,#01H DA A MOV HOUR,A CJNE A,#24H,DISH1 MOV HOUR,#00HDISH1:AJMP DISH;轉(zhuǎn)至?xí)r顯示緩沖區(qū)設(shè)置KK2:JNB KEY3,KK3;判斷KEY3是否按下 JB KEY3,$;等待(dngdi)KEY3鍵釋放MOV A,R3RL AMOV DPTR,#KJMP2JMP A+DPTRKJMP2:AJMP DISCLK AJMP SDEC AJMP
14、 MDEC AJMP HDECSDEC:MOV A,#9AH;秒減1 CLR C SUBB A,#01H ADD A,SECOND DA A共二十四頁MOV SECOND,A CJNE A,#00H,DISS2 MOV SECOND,#59HDISS2:AJMP DISS;轉(zhuǎn)至秒顯示(xinsh)緩沖區(qū)設(shè)置MDEC:MOV A,#9AH;分減1 CLR C SUBB A,#01H ADD A,MINUTE DA A MOV MINUTE,A CJNE A,#0,DISM2 MOV MINUTE,#59HDISM2:AJMP DISM;轉(zhuǎn)至分顯示緩沖區(qū)設(shè)置HDEC:MOV A,#9AH;時(shí)減1
15、CLR C SUBB A,#01H ADD A,HOUR DA A MOV HOUR,A CJNE A,#99H,DISH2 MOV HOUR,#23HDISH2:AJMP DISH;轉(zhuǎn)至?xí)r顯示緩沖區(qū)設(shè)置(shzh)KK3:MOV A,R3 RL AMOV DPTR,#KJMP3 JMP A+DPTRKJMP3:AJMP DISCLK ;R3=0顯示時(shí)鐘 AJMP DISS;R3=1顯示秒 AJMP DISM;R3=2顯示分 AJMP DISH;R3=3顯示時(shí)DISCLK:MOV R0,#79H MOV R1,#HOUR MOV R4,#03H共二十四頁CFLOOP:MOV A,R1 SWAP
16、 A ANL A,#0FH MOV R0,A INC R0 MOV A,R1 ANL A,#0FH MOV R0,A INC R0 DEC R1 DJNZ R4,CFLOOP SETB TR0 RETDISS:CLR TR0;顯示(xinsh)秒,時(shí)與分的數(shù)碼管不亮 MOV A,SECOND SWAP A ANL A,#0FH MOV 7DH,A MOV A,SECOND ANL A,#0FH MOV 7EH,A MOV 79H,#0FH MOV 7AH,#0FH MOV 7BH,#0FH MOV 7CH,#0FH AJMP KK5DISM:CLR TR0;顯示(xinsh)分,時(shí)與秒的數(shù)碼管
17、不亮 MOV A,MINUTE SWAP A ANL A,#0FH MOV 7BH,A MOV A,MINUTE ANL A,#0FH MOV 7CH,A MOV 79H,#0FH MOV 7AH,#0FH MOV 7DH,#0FH MOV 7EH,#0FH AJMP KK5共二十四頁DISH: CLR TR0;顯示時(shí),分與秒的數(shù)碼管不亮 MOV A,HOUR SWAP A ANL A,#0FH MOV 79H,A MOV A,HOUR ANL A,#0FH MOV 7AH,A MOV 7BH,#0FH MOV 7CH,#0FH MOV 7DH,#0FH MOV 7EH,#0FHKK5:RET
18、;定時(shí)器T0中斷處理子程序TIMER0:PUSH ACC;保護(hù)現(xiàn)場(chǎng) PUSH PSW MOV TH0,#0B1H;重裝定時(shí)常數(shù) MOV TL0,#0E0H DJNZ R2,NEXT;判斷是否中斷了50次,不足50次,中斷返回MOV R2,#50;若達(dá)到(d do)50次,計(jì)時(shí)滿1s,刷新時(shí)間單元格 MOV A,SECOND ADD A,#01H DA A MOV SECOND,A CJNE A,#60H,NEXTS1:MOV SECOND,#00H MOV A,MINUTEADD A,#01HDA AMOV MINUTE,ACJNE A,#60H,NEXTS2:MOV MINUTE,#00H MOV A,HOUR ADD A,#01H DA A MOV HOUR,A CJNE A,#24H,NEXT MOV HOUR,#00HNEXT:POP PSW;恢復(fù)(huf)現(xiàn)場(chǎng) POP ACCRETI;中斷返回 END共二十四頁內(nèi)容摘要基于AT89C51單片機(jī)的數(shù)字時(shí)鐘設(shè)計(jì)。本設(shè)計(jì)利用At
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫(yī)療領(lǐng)域的新機(jī)遇區(qū)塊鏈技術(shù)的市場(chǎng)應(yīng)用與前景
- 醫(yī)療設(shè)備操作規(guī)范與質(zhì)量控制
- 醫(yī)療大數(shù)據(jù)分析在醫(yī)療服務(wù)中的應(yīng)用
- 2025年試用期轉(zhuǎn)正工作總結(jié)模版
- 醫(yī)療大數(shù)據(jù)下的患者滿意度分析
- AI技術(shù)在手術(shù)輔助系統(tǒng)中的倫理邊界探討
- 醫(yī)學(xué)倫理在中藥治療技術(shù)傳播中的作用研究
- 生產(chǎn)部門2025年度工作總結(jié)模版
- 代課老師聘用合同范例
- 醫(yī)患溝通藝術(shù)與銷售溝通技巧共通點(diǎn)解析
- 地震監(jiān)測(cè)技術(shù)在城市交通管理中的應(yīng)用
- 居家養(yǎng)老上門服務(wù)投標(biāo)方案技術(shù)標(biāo)
- GB/T 7702.7-2023煤質(zhì)顆?;钚蕴吭囼?yàn)方法第7部分:碘吸附值的測(cè)定
- 國(guó)開【形考】《管理英語(3)》形成性考核1-8答案
- 起訴意見書(公安)
- 2023學(xué)年完整公開課版用戶思維
- 醫(yī)院獲得性肺炎的診斷與治療
- 新產(chǎn)品試產(chǎn)工作指引
- 松下伺服驅(qū)動(dòng)器說明書
- 連桿加工工藝規(guī)程及夾具設(shè)計(jì)工序卡-工藝規(guī)程卡
- 動(dòng)態(tài)軌道衡電子稱重儀及定量稱重控制系統(tǒng)設(shè)計(jì)概要
評(píng)論
0/150
提交評(píng)論