




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
項目五地震報警器的制作項目學(xué)習(xí)目標(biāo)項目學(xué)習(xí)目標(biāo)學(xué)習(xí)方式學(xué)時技能目標(biāo)①掌握一秒定時電路的制作與編程。②掌握數(shù)碼顯示電路的制作與編程。③掌握電子時鐘電路的制作與編程學(xué)生實際制作,教師指導(dǎo)調(diào)試和維修6課時知識目標(biāo)①了解數(shù)碼管的結(jié)構(gòu),掌握數(shù)碼管接口方式和編程方法。②了解鍵盤工作原理,掌握獨立式按鍵的接口方式和編程。③了解定時器的相關(guān)知識,掌握定時器的應(yīng)用與編程教師講授重點:數(shù)碼管編程方法;獨立式按鍵的處理和編程;定時器的應(yīng)用與編程4課時任務(wù)一一秒定時閃爍電路的制作任務(wù)要求單片機(jī)的P2.0作輸出口,接一個LED發(fā)光二極管,通過編程實現(xiàn)發(fā)光二極管以1s為周期,亮0.5s,滅0.5s。
項目基本技能1.硬件電路制作
(1)電路原理圖(2)制作要點及元器件清單代
號名
稱實
物
圖規(guī)
格R1電阻2k
R2電阻200
C1、C2瓷介電容30pFC3電解電容22μFS1輕觸按鍵CY晶振6MHzIC1單片機(jī)AT89S51IC插座40腳VD1發(fā)光二極管紅色
51秒定時閃爍參考程序ORG0000H ;程序開始LJMPSTART ;轉(zhuǎn)初始化程序ORG001BH ;定時/計數(shù)器1中斷入口地址LJMPRT1 ;轉(zhuǎn)定時/計數(shù)器1中斷服務(wù)程序ORG0030H ;初始化程序開始START: MOVTMOD,#10H ;定時/計數(shù)器1,工作方式1MOVTH1,#3CH ;設(shè)置計數(shù)初值MOVTL1,#0B0H ;設(shè)置計數(shù)初值MOVR2,#05H ;設(shè)置記錄中斷次數(shù)初值SETBEA ;開啟總中斷允許SETBET1 ;開啟定時/計數(shù)器1中斷允許SETBTR1 ;啟動定時/計數(shù)器1MAIN: NOP ;主程序不執(zhí)行任何任務(wù),只是等待中斷LJMPMAIN 2.程序編寫1秒定時閃爍參考程序;中斷服務(wù)程序RT1:MOVTH1,#3CH;定時/計數(shù)器1中斷服務(wù)子程序,置計數(shù)初值MOVTL1,#0B0HDJNZR2,BACK ;中斷次數(shù)少于5次直接返回MOVR2,#05H ;重新置中斷次數(shù)初值CPLP2.0 ;P2.0取反BACK:RETI ;中斷返回END任務(wù)二LED數(shù)碼顯示電路的制作任務(wù)要求單片機(jī)的P0口作輸出口,接一個數(shù)碼管,通過編程實現(xiàn)數(shù)碼管循環(huán)顯示十進(jìn)制數(shù)字0~9。單片機(jī)的P0口作輸出口,接兩個數(shù)碼管,通過編程實現(xiàn)數(shù)碼管循環(huán)顯示十進(jìn)制數(shù)字0~59。1.LED顯示器靜態(tài)顯示0~9(1)硬件電路制作(2)軟件設(shè)計NUMEQU40h ;定義數(shù)字變量ORG0000HLJMPSTART ;轉(zhuǎn)移到初始化程序ORG0030HSTART: MOVNUM,#00H ;初始化變量初值MAIN: MOVA,NUM ;數(shù)字送入AMOVDPTR,#CHAR ;字型碼首地址存放DPTRMOVCA,@A+DPTR ;數(shù)字對應(yīng)字型碼送入AMOVP0,A ;字型碼送P0口顯示LCALLDELAY ;延時MOVA,NUM ;數(shù)字送入AINCA ;加1CJNEA,#0AH,AA ;不等于10轉(zhuǎn)AABB:MOVA,#00H ;等于10,送初值0AA:MOVNUM,A ;保存數(shù)字LJMPMAIN ;循環(huán),繼續(xù)顯示
DELAY: MOVR7,#1EH ;延時子程序D3: MOVR6,#21HD2: MOVR5,#0FAHD1: DJNZR5,D1DJNZR6,D2DJNZR7,D3RETCHAR: DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H;共陽型字型碼表END2.LED顯示器動態(tài)顯示0~59
(1)硬件電路制作(2)軟件設(shè)計SECEQU42H ;秒位變量SEC_1EQU40H ;秒BCD碼個位SEC_2EQU41H ;秒BCD碼十位ORG0000HLJMPSTART ;到主程序ORG000BHLJMPCT0S ;到定時器0的中斷服務(wù)程序ORG0030HSTART: MOVR3,#20;初始化R3(20次50ms的中斷)MOV TMOD,#01H ;T0工作方式1,定時50msMOV TH0,#04BHMOV TL0,#0FFHSETBEA ;開總中斷SETBET0MOVSEC,#00H ;開定時器0中斷SETBTR0 ;啟動定時器MAIN: LCALLBCD8421LCALL DISPLAY ;調(diào)顯示子程序LJMPMAINDELAY: MOVR7,#255 ;延時子程序D1: DJNZR7,D1RETCT0S: PUSHA ;1s的中斷服務(wù)程序MOV TH0,#04BHMOV TL0,#0FFHDJNZR3,EE ;不到1s,中斷返回MOV R3,#20MOV A,SECINCA ;秒加1MOVSEC,A ;保存秒數(shù)值CJNEA,#60,EEMOVSEC,#00H ;滿60s置0EE: POPARETIBCD8421:MOVA,SECMOVB,#0AHDIVABMOVSEC_1,BMOVSEC_2,ARETDISPLAY: ;秒顯示子程序MOVP2,#00HMOVA,SEC_2 ;顯示秒的十位MOVDPTR,#CHARMOVCA,@A+DPTRMOVP0,AMOVP2,#02HLCALLDELAYMOVA,SEC_1 ;顯示秒的個位MOVCA,@A+DPTRMOVP0,AMOVP2,#01HLCALLDELAYRETCHAR: DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H;共陽型字型碼表END任務(wù)三電子時鐘的制作任務(wù)要求單片機(jī)的P0口作段控,P2口作位控,接6個數(shù)碼管,通過編程實現(xiàn)6位數(shù)碼電子時鐘功能。1.硬件電路制作
(1)電路原理圖CPU按鍵顯示電路(2)制作要點及元器件清單代
號名
稱實
物
圖規(guī)
格R1~R4電阻1k
R5電阻2k
R6~R11電阻1k
C1、C2瓷介電容30pFC3電解電容22μFS1~S5輕觸按鍵CY晶振6MHzIC1單片機(jī)AT89S51IC插座40腳VT1~VT6三極管9012DS1~DS6共陽極數(shù)碼管(1)程序流程圖2.程序編寫(2)參考程序
;變量定義和內(nèi)存分配KEY_BUFEQU33H ;鍵盤緩沖區(qū)KEYTEMPEQU34H ;臨時按鍵值HOUREQU40H ;小時變量MINEQU 41H ;分鐘變量SECEQU 42H ;秒變量HOUR_1EQU50H ;小時BCD碼個位HOUR_2EQU51H ;小時BCD碼十位MIN_1EQU52H ;分鐘BCD碼個位MIN_2EQU53H ;分鐘BCD碼十位SEC_1EQU54H ;秒BCD碼個位SEC_2EQU55H ;秒BCD碼十位SW1BITP1.0 ;小時加1按鍵SW2BITP1.1 ;小時減1按鍵SW3BITP1.2 ;分鐘加1按鍵SW4BITP1.3 ;分鐘減1按鍵ORG0000HLJMPSTART ;轉(zhuǎn)移到初始化程序ORG000BHLJMPCT0S ;到定時器0的中斷服務(wù)程序ORG0030HSTART: ;初始化部分MOV33H,#00H ;初始化緩沖區(qū)MOVHOUR,#12 ;初始時間12:30:00MOVMIN,#30MOVSEC,#00MOVR3,#20 ;初始化R3(20次50ms的中斷)MOVTMOD,#01H ;初始化T0定時器,T0工作方式1,定時50msMOVTH0,#04BH ;送定時器初值MOVTL0,#0FFHSETBEA ;開總中斷SETBET0 ;開定時器0中斷SETBTR0 ;啟動定時器MAIN: LCALLKEYPRESS ;調(diào)按鍵處理子程序LCALLBCD8421 ;調(diào)BCD碼轉(zhuǎn)換子程序LCALLDISPLAY ;調(diào)顯示子程序LJMPMAINDELAY: MOVR7,#255 ;延時子程序D2: DJNZR7,D2RETKEYPRESS: ;按鍵處理子程序,P1口為按鍵的接口SETBSW1 ;設(shè)置為輸入JBSW1,KEY1 ;按鍵沒有按下,查詢下一按鍵LCALLDELAY ;若按下,延時去抖JBSW1,KEY1MOVA,HOUR ;小時變量送入AINCA ;小時數(shù)加1MOVHOUR,A ;保存小時數(shù)CJNEA,#24,KEY0 ;如果不等于24,等待按鍵釋放MOVHOUR,#00H ;如果等于24,則使小時數(shù)等于0KEY0: LCALLDISPLAY ;調(diào)顯示起延時去抖作用,保證掃描顯示不停止JNBSW1,KEY0 ;沒有釋放,繼續(xù)等待LCALLDISPLAYJNBSW1,KEY0KEY1: SETBSW2JBSW2,KEY2LCALLDELAYJBSW2,KEY2MOVA,HOURDECA ;小時變量減1MOVHOUR,ACJNEA,#255,KEY10 ;0減1等于255MOVHOUR,#23KEY10: LCALLDISPLAYJNBSW2,KEY10LCALLDISPLAYJNBSW2,KEY10KEY2: SETBSW3JBSW3,KEY3LCALLDELAYJBSW3,KEY3MOVA,MININCA ;分鐘變量加1MOVMIN,ACJNEA,#60,KEY20MOVMIN,#00HKEY20: LCALLDISPLAYJNBSW3,KEY20LCALLDISPLAYJNBSW3,KEY20KEY3: SETBSW4JBSW4,KRETLCALLDELAYJBSW4,KRETMOVA,MINDECA ;分鐘變量減1MOVMIN,ACJNEA,#255,KEY30 ;0減1等于255MOVMIN,#59KEY30: LCALLDISPLAYJNBSW4,KEY30LCALLDISPLAYJNBSW4,KEY30KRET: RETCT0S: ;走時部分。延時1s,秒加1,秒滿60,分鐘加1,分鐘滿60,小時加1PUSHA ;保護(hù)現(xiàn)場MOV TH0,#04BH ;重新送定時器初值MOV TL0,#0FFHDJNZR3,TIMEEND ;中斷次數(shù)不足20次直接返回MOV R3,#20 ;中斷次數(shù)滿20次為1s,重新送計數(shù)初值MOV A,SEC ;秒增加1INCAMOV SEC,ACJNEA,#60,TIMEENDMOV SEC,#00HMOV A,MIN ;秒滿60,分鐘加1INCAMOV MIN,ACJNEA,#60,TIMEENDMOVMIN,#00HMOV A,HOUR ;分鐘滿60,小時加1INCAMOV HOUR,ACJNEA,#24,TIMEENDMOV HOUR,#00HTIMEEND:POPA ;恢復(fù)現(xiàn)場RETI;BCD碼轉(zhuǎn)換子程序,變量不大于60,沒有百位BCD8421:MOVA,HOURMOVB,#0AHDIVAB ;除以10,商為十位,余數(shù)為個位MOVHOUR_2,AMOVHOUR_1,BMOVA,MINMOVB,#0AHDIVABMOVMIN_2,AMOVMIN_1,BMOVA,SECMOVB,#0AHDIVABMOVSEC_2,AMOVSEC_1,BRETDISPLAY:;以下是顯示子程序,P0口輸出段碼,P2口輸出位碼,MOV P2,#00H ;顯示小時的部分MOV DPTR,#CHARMOV A,HOUR_2MOVCA,@A+DPTRMOV P0,AMOVP2,#02HLCALLDELAYMOV A,HOUR_1MOVCA,@A+DPTRMOV P0,AMOVP2,#01HLCALL DELAY;顯示分鐘的部分MOV A,MIN_2MOVCA,@A+DPTRMOV P0,AMOVP2,#08HLCALLDELAYMOV A,MIN_1MOVCA,@A+DPTRMOV P0,AMOVP2,#04HLCALLDELAY;顯示秒的部分MOV A,SEC_2MOVCA,@A+DPTRMOV P0,AMOV P2,#20HLCALLDELAYMOV A,SEC_1MOVCA,@A+DPTRMOV P0,AMOV P2,#10HLCALLDELAYRETCHAR:DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H;共陽型字型碼表END任務(wù)四程序調(diào)試與燒寫
使用仿真器調(diào)試程序。程序調(diào)試完成后,使用編程器將編譯的十六進(jìn)制文件燒寫入單片機(jī),將單片機(jī)從編程器上取下,插入電路板的IC插座,給電路板接上5V電源,觀察電路運(yùn)行情況。知識點一LED數(shù)碼管接口電路及編程
項目基本知識1.?dāng)?shù)碼管簡介顯示字符字形共
陽
極共
陰
極dpgfedcba字形碼dpgfedcba字形碼011000000C0H001111113FH111111001F9H0000011006H210100100A4H010110115BH310110000B0H010011114FH41001100199H0110011066H51001001092H011011016DH61000001082H011111017DH711111000F8H0000011107H81000000080H011111117FH91001000090H011011116FH熄滅11111111FFH0000000000H顯示字形碼(1)LED數(shù)碼管靜態(tài)顯示接口2.LED數(shù)碼管靜態(tài)顯示(2)LED數(shù)碼管靜態(tài)顯示編程
字形碼存放在數(shù)據(jù)表格中,通常在DPTR內(nèi)存放數(shù)據(jù)表格首地址,A存放要顯示的數(shù)據(jù),利用MOVCA,@A+DPTR這條指令查找字形碼。
(1)LED數(shù)碼管動態(tài)顯示接口3.LED數(shù)碼管動態(tài)顯示(2)LED數(shù)碼管動態(tài)顯示編程
動態(tài)掃描頻率太低,LED數(shù)碼管將出現(xiàn)閃爍現(xiàn)象;頻率太高,由于每個LED數(shù)碼管點亮的時間太短,LED數(shù)碼管的亮度太低,無法看清。因此,在編程時,常采用調(diào)用延時子程序來達(dá)到要求的保持時間,一般取幾毫秒為宜。
知識點二鍵盤接口電路及編程
1.鍵盤工作原理機(jī)械式按鍵在按下或釋放時,由于機(jī)械彈性作用的影響,通常伴隨有一定時間的觸點機(jī)械抖動,然后其觸點才穩(wěn)定下來。抖動時間的長短與開關(guān)的機(jī)械特性有關(guān),一般為5~10ms。2.獨立式按鍵
對于獨立式按鍵主程序可以采用不斷查詢的方法來進(jìn)行處理,即如果只有一個獨立式按鍵,檢測是否閉合,如果閉合,則去除鍵抖動后再執(zhí)行按鍵程序;如果有多個獨立式按鍵,可以依次逐個查詢處理。
知識點三MCS-51單片機(jī)定時/計數(shù)器
1.定時、計數(shù)的概念
(1)計數(shù)概念(2)計數(shù)器的容量(3)定時(4)溢出(5)任意定時及計數(shù)的方法(1)定時/計數(shù)器的方式控制字TMOD位D7D6D5D4D3D2D1D0位名稱GATEC/TM1M0GATEC/TM1M0功能門控位定時/計數(shù)方式選擇工作方式選擇門控位定時/計數(shù)方式選擇工作方式選擇高4位控制定時器/計數(shù)器1低4位控制定時器/計數(shù)器02.定時/計數(shù)器概述
(2)定時/計數(shù)器的4種工作方式①工作方式0。定時/計數(shù)器的工作方式0稱為13位定時/計數(shù)方式。它由TL的低5位和TH的8位構(gòu)成13位的計數(shù)器,TL的高3位未用。②工作方式1。工作方式1是16位的定時/計數(shù)方式,M1M0為01,其他特性與工作方式0相同。③工作方式2。工作方式2是16位加法計數(shù)器,TH0和TL0具有不同功能,其中,TL0是8位計數(shù)器,TH0是重置初值的8位緩沖器。方式2具有初值自動裝入功能,每當(dāng)計數(shù)溢出,就會打開高、低8位之間的開關(guān),預(yù)置數(shù)進(jìn)入低8位。這是由硬件自動完成的,不需要由人工干預(yù)。④工作方式3。定時/計數(shù)器工作于方式3時,定時器T0被分解成兩個獨立的8位計數(shù)器TL0和TH0。
(1)定時/計數(shù)器的初始化3.定時/計數(shù)器初始化及應(yīng)用
①確定工作方式—對TMOD賦值。如“MOVTMOD#10H”,表明定時器1工作在方式1,且工作在定時器方式。②預(yù)置定時或計數(shù)的初值—直接將初值寫入TH0、TL0或TH1、TL1。③根據(jù)需要開啟定時/計數(shù)器中斷—直接對IE寄存器賦值。如MOVIE,#82H,表明允許定時器T0中斷。④啟動定時/計數(shù)器工作—將TR0或TR1置“1”。解:因方式0采用13位計數(shù)器,其最大定時時間為:8192×1
s=8.192ms,因此,定時時間不可能像方式1一樣選擇50ms,但可選擇定時時間為5ms,再循環(huán)200次。定時時間選定后,再確定計數(shù)值為5000,則定時器1的初值為:X=M?計數(shù)值=8192?5000=3192=C78H=0110001111000B因13位計數(shù)器中TL1的高3位未用,應(yīng)填寫0,TH1占高8位,所以,X的實際填寫值應(yīng)為:X=0110001100011000B=6318H即TH1=63H,TL1=18H,又因采用方式0定時,故TMOD=00H。例6.1用定時器1方式0實現(xiàn)1s的延
溫馨提示
- 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電動汽車電池系統(tǒng)的技術(shù)適配性研究試題及答案
- 幼兒園數(shù)學(xué)情境設(shè)定試題及答案
- 安全工程師如何提升安全培訓(xùn)的效果試題及答案
- 家具行業(yè)市場競爭分析與應(yīng)對策略考題及答案
- 理解政策與市場結(jié)合試題及答案
- ??家魳穼W(xué)試題及答案
- 船員機(jī)工考試試題及答案
- 校園擁抱測試題及答案
- 應(yīng)用能力提升2025年商務(wù)英語考試試題及答案
- 戰(zhàn)略投資考試題及答案
- 2025-2030工程塑料行業(yè)市場深度分析及發(fā)展策略研究報告
- 2025-2030中國涂料設(shè)備行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報告
- 業(yè)務(wù)員合同范本與業(yè)務(wù)員和公司的合同6篇
- 2025年大學(xué)生學(xué)習(xí)鄉(xiāng)村振興知識競賽題庫及答案(共60道題)
- 期中考試質(zhì)量分析會上校長引用6個關(guān)鍵詞講話:深耕、融合、賦能、深耕、創(chuàng)新、協(xié)同、堅守
- JJF 2230-2025混凝土電阻率測試儀校準(zhǔn)規(guī)范
- 【9數(shù)一?!?025年安徽合肥市第四十五中學(xué)九年級中考一模數(shù)學(xué)試卷(含答案)
- 煤炭加工中的選煤技術(shù)與選煤機(jī)械考核試卷
- 2024年江蘇師范大學(xué)科文學(xué)院招聘專任教師筆試真題
- 微生物檢驗員專業(yè)考試試題及答案
- 人教PEP版英語五年級下冊Unit 4 When is the art show?單元教學(xué)設(shè)計(6課時教案)
評論
0/150
提交評論