微機(jī)原理電子秒表課程設(shè)計(jì)_第1頁
微機(jī)原理電子秒表課程設(shè)計(jì)_第2頁
微機(jī)原理電子秒表課程設(shè)計(jì)_第3頁
微機(jī)原理電子秒表課程設(shè)計(jì)_第4頁
微機(jī)原理電子秒表課程設(shè)計(jì)_第5頁
已閱讀5頁,還剩1頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、電子秒表設(shè)計(jì)報(bào)告 設(shè)計(jì)要求:設(shè)計(jì)要求: 用 89C51,外接晶振,復(fù)位電路,二個(gè)數(shù)碼管,二個(gè)按鍵,做一個(gè)電子秒表,具體要 求為用按鍵起停電子表,可用按鍵設(shè)計(jì)倒計(jì)時(shí)時(shí)間(如 10S,20S,60S) ,并啟動倒計(jì)時(shí)功 能。能用按鍵選擇以上兩功能之一。 實(shí)現(xiàn)原理:實(shí)現(xiàn)原理: 利用 12M 晶振的一個(gè)機(jī)器周期為 1 微秒,通過循環(huán)產(chǎn)生 1 秒時(shí)間延遲,掃描單片機(jī)中 所存放的時(shí)間的值(可正記時(shí),也可倒計(jì)時(shí)) ,并通過輸出顯示在數(shù)碼管上。 電路圖:電路圖: P0.0P0.7 對應(yīng)了兩個(gè)接數(shù)碼管的 A,B,C,D,E,F,G 和小數(shù)點(diǎn)位,P2.6 接顯示個(gè)位數(shù)的數(shù)碼 管的 3、8 引角,P2.7 則接十位

2、數(shù)的。P3.6、P3.7 分別接按鍵。 流程框圖:流程框圖: 程序代碼: A_BIT EQU 20H ;數(shù)碼管個(gè)位數(shù)存放內(nèi)存位置 B_BIT EQU 21H ;數(shù)碼管十位數(shù)存放內(nèi)存位置 TEMP EQU 22H ;計(jì)數(shù)器數(shù)值存放內(nèi)存位置 ;開機(jī)初始化 MOV P3,#0FFH;對 P3 口初始化,設(shè)置為高電平,用于按鍵輸入 MOV P0,#0FFH;使顯示時(shí)間數(shù)碼管熄滅 ;等待按鍵輸入 ;根據(jù)按鍵的輸入判斷執(zhí)行什么功能 ;按鍵 1 按下則執(zhí)行功能 1 START:JB P3.6,$;循環(huán)判斷開始按鈕 K1 是否按下? ACALL DELAY10;延時(shí) 10 毫秒觸點(diǎn)消抖 JB P3.6,STA

3、RT1;如果是干擾就返回 JNB P3.6,$;等待按鍵松開 LJMP GN1 ; 按鍵 2 按下則執(zhí)行功能 2 START1: JB P3.7,$;循環(huán)判斷開始按鈕 K2 是否按下? ACALL DELAY10;延時(shí) 10 毫秒觸點(diǎn)消抖 JB P3.7,START;如果是干擾就返回 JNB P3.7,$ LJMP GN2 ;數(shù)碼管顯示秒表時(shí)間的程序 GN1: ;先初始化 MOV P3,#0FFH;對 P3 口初始化,設(shè)置為高電平,用于按鍵輸入 MOV P0,#0FFH;使顯示時(shí)間數(shù)碼管熄滅 MOV A,#0 MOV TEMP,A GOON1: MOV R2,#2 JS1: MOV R3,#2

4、50 TIME1: MOV A,TEMP ;將 TEMP 中的十六進(jìn)制數(shù)轉(zhuǎn)換成 10 進(jìn)制 MOV B,#10 ;10 進(jìn)制/10=10 進(jìn)制 DIV AB MOV B_BIT,A ;十位在 A MOV A_BIT,B ;個(gè)位在 B MOV DPTR,#NUMTAB ;指定查表啟始地址 MOV R0,#4 DPL1: MOV R1,#250 ; DPLOP1: MOV A,A_BIT ;取個(gè)位數(shù) MOVC A,A+DPTR ;查個(gè)位數(shù)的 7 段代碼 MOV P0,A ;送出個(gè)位的 7 段代碼 MOV P0,A ;送出個(gè)位的 7 段代碼 CLR P2.7 ;開個(gè)位顯示 ACALL DELY1;顯

5、示 1 毫秒 SETB P2.7;關(guān)閉個(gè)位顯示,防止鬼影 MOV A,B_BIT ;取十位數(shù) MOVC A,A+DPTR ;查十位數(shù)的 7 段代碼 MOV P0,A ;送出十位的 7 段代碼 CLR P2.6 ;開十位顯示 ACALL DELY1;顯示 1 毫秒 SETB P2.6;關(guān)閉十位顯示,防止鬼影 ;插入一段判斷定時(shí)過程中是否有按鍵輸入的程序段 C1: JB P3.6,B1 ACALL DELAY10;延時(shí) 10 毫秒消抖 JB P3.6,C1 JNB P3.6,$;等待按鍵松開 ZT1: MOV P3,#0FFH;對 P3 口初始化,設(shè)置為高電平,用于按鍵輸入 JB P3.6,$;循

6、環(huán)判斷開始按鈕 K1 是否按下? ACALL DELAY10;延時(shí) 10 毫秒觸點(diǎn)消抖 JB P3.6,ZT1;如果是干擾就返回 JNB P3.6,$;等待按鍵松開 B1: JB P3.7,LOOP1 ACALL DELAY10;延時(shí) 10 毫秒消抖 JB P3.7,B1 JNB P3.7,$;等待按鍵松開 AJMP OVER LOOP1: DJNZ R3,TIME1 ;2 毫秒循環(huán)執(zhí)行 250 次,時(shí)間約 0.5 秒 DJNZ R2,JS1 ;循環(huán)執(zhí)行 2 次,時(shí)間為 1 秒鐘 INC TEMP;滿一秒鐘對時(shí)間加 1 MOV A,TEMP CLR C SUBB A,#60 JNZ GOON1

7、;判斷 TEMP 的數(shù)值是否為 60?不為 60 循環(huán) ACALL OVER RET GN2: MOV A,#14H ; 設(shè)定倒計(jì)時(shí)的時(shí)間 20S MOV TEMP,A ;數(shù)碼管顯示倒計(jì)時(shí)時(shí)間的程序 ;初始化 MOV P3,#0FFH;對 P3 口初始化,設(shè)置為高電平,用于按鍵輸入 MOV P0,#14H;使顯示時(shí)間為設(shè)定的倒計(jì)時(shí)時(shí)間 GOON2: MOV R2,#2 JS2: MOV R3,#250 TIME2: MOV A,TEMP ;將 TEMP 中的十六進(jìn)制數(shù)轉(zhuǎn)換成 10 進(jìn)制 MOV B,#10 ;10 進(jìn)制/10=10 進(jìn)制 DIV AB MOV B_BIT,A ;十位在 A MO

8、V A_BIT,B ;個(gè)位在 B MOV DPTR,#NUMTAB ;指定查表啟始地址 MOV R0,#4 DPL2: MOV R1,#250 ; DPLOP2: MOV A,A_BIT ;取個(gè)位數(shù) MOVC A,A+DPTR ;查個(gè)位數(shù)的 7 段代碼 MOV P0,A ;送出個(gè)位的 7 段代碼 MOV P0,A ;送出個(gè)位的 7 段代碼 CLR P2.7 ;開個(gè)位顯示 ACALL DELY1;顯示 1 毫秒 SETB P2.7;關(guān)閉個(gè)位顯示,防止鬼影 MOV A,B_BIT ;取十位數(shù) MOVC A,A+DPTR ;查十位數(shù)的 7 段代碼 MOV P0,A ;送出十位的 7 段代碼 CLR

9、P2.6 ;開十位顯示 ACALL DELY1;顯示 1 毫秒 SETB P2.6;關(guān)閉十位顯示,防止鬼影 ;插入一段判斷定時(shí)過程中是否有按鍵輸入的程序段 C2: JB P3.6,B2 ACALL DELAY10;延時(shí) 10 毫秒消抖 JB P3.6,C2 JNB P3.6,$;等待按鍵松開 ZT2: MOV P3,#0FFH;對 P3 口初始化,設(shè)置為高電平,用于按鍵輸入 JB P3.6,$;循環(huán)判斷開始按鈕 K1 是否按下? ACALL DELAY10;延時(shí) 10 毫秒觸點(diǎn)消抖 JB P3.6,ZT2;如果是干擾就返回 JNB P3.6,$;等待按鍵松開 B2: JB P3.7,LOOP2

10、 ACALL DELAY10;延時(shí) 10 毫秒消抖 JB P3.7,B1 JNB P3.7,$;等待按鍵松開 AJMP OVER LOOP2: DJNZ R3,TIME2 ;2 毫秒循環(huán)執(zhí)行 250 次,時(shí)間約 0.5 秒 DJNZ R2,JS2 ;循環(huán)執(zhí)行 2 次,時(shí)間為 1 秒鐘 DEC TEMP;滿一秒鐘對時(shí)間加 1 MOV A,TEMP JNZ GOON2;判斷 TEMP 的數(shù)值是否為 0?不為 0 循環(huán) ACALL OVER RET ;結(jié)束定時(shí) OVER: AJMP START;退到開機(jī)初始化狀態(tài) ;1 毫秒延時(shí)子程序 DELY1: MOV R4,#2 D1:MOV R5,#248 DJNZ R5,$ DJNZ R4,D1 RET

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論