版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、成都大學chengdu university-14-基于單片機的電子數(shù)字鐘課程設(shè)計報告專 業(yè):電子信息工程班級:姓名:學號:指導教師:電孑信息工程學筑of ekffctronig and inf9rmwltaiw en>grin««ring2010年6月一、課程設(shè)計的目的本課程設(shè)計是自動化專業(yè)、電子信息技術(shù)專業(yè)學生在學完單片機原理及課程之后必修課程,它 的教學目的和任務(wù)是綜合利用所學單片機知識完成一個單片機應用系統(tǒng)設(shè)計并在實驗室實現(xiàn),從而 加深對單片機軟硬知識的理解,獲得初步的應用經(jīng)驗,為走出校門從事單片機應用的相關(guān)工作打下 基礎(chǔ)。二、設(shè)計內(nèi)容利用單片機的定時/計數(shù)器
2、,中斷系統(tǒng),以及陣列鍵盤和led顯示器進行設(shè)計。在數(shù)碼管顯示器上實現(xiàn)電子時鐘,并且能進行設(shè)置時間和暫停、啟動控制。用定時/計數(shù)器 t0,工作于定時,采用方式1,對12mhz的系統(tǒng)時鐘進行定時計數(shù),初值設(shè)為xxyy (自己計算)。形成定時時間為 50ms。用片內(nèi)ram的7bh單元對50ms計數(shù),計20次產(chǎn) 生秒計數(shù)器7bh單元加1,秒計數(shù)器加到 60則分計數(shù)器79h單元加1,分計數(shù)器加到60則時計數(shù) 器7ah單元加1 ,時計數(shù)器加到24則時計數(shù)器清0。然后把秒、分、時計數(shù)器分成十位和個位放到8個數(shù)碼管的顯示緩沖區(qū),通過數(shù)碼管顯示出來。顯示格式為小時十位、小時個位-分十位、分個位一秒十位、秒個位。
3、在處理過程中加上了按鍵判斷程序,能對按鍵處理。三、設(shè)計要求1、在proteus中設(shè)計硬件,在 keil51中編寫軟件,在 proteus中運行程序仿真實現(xiàn)。2、寫課程設(shè)計報告,給出設(shè)計思想,原理, 課程設(shè)計報告格式:1、課程設(shè)計的目的2、課程設(shè)計具體要求3、mcs-51單片機系統(tǒng)簡介4、mcs-51單片機內(nèi)部定時器/計數(shù)器簡介5、鍵盤和led數(shù)碼管顯示器簡介四、mcs-51單片機系統(tǒng)簡介硬件電路圖,給出相應程序,并寫出設(shè)計過程。6、基本原理7、硬件電路8、軟件程序流程及代碼9、設(shè)計制作過程10、總結(jié)mcs-51系列單片機是美國intel公司在1980年推出的高性能 8位單片機,它包含 51和5
4、2兩 個子系列。對于51子系列,主要有8031、8051、8751三種機型,它們的指令系統(tǒng)與芯片引腳完全兼容, 僅片內(nèi)程序存儲器有所不同,8031芯片不帶 rom , 8051芯片帶4krom , 8751芯片帶4keprom 。51子系列的主要特點為: 8位 cpu。 片內(nèi)帶振蕩器,頻率范圍1. 272mhz。 片內(nèi)帶128字節(jié)的數(shù)據(jù)存儲器。 片內(nèi)帶4k的程序存儲器。 程序存儲器的尋址空間為64k字節(jié)。 片外數(shù)據(jù)存儲器的尋址空間為64k字節(jié)。 128個用戶位尋址空間。 21個字節(jié)特殊功能寄存器。 4個8位的并行i/o接口: p0、p1、p2、p3。 2個16位定時器/計數(shù)器 2個優(yōu)先級別的5
5、個中斷源。 1個全雙工的串行i/o接口,可多機通信。 111條指令,含乘法指令和除法指令。 片內(nèi)采用單總線結(jié)構(gòu)。 有較強的位處理能力。 采用單一 +5v電源。p0.0p0.7p2.0p2.7圖一、mcs-51系列單片機的內(nèi)部結(jié)構(gòu)五、mcs-51單片機內(nèi)部定時器/計數(shù)器中斷系統(tǒng)簡介定時/計數(shù)器的主要特性:1 . mcs-51系列中51子系列有兩個16位的可編程定時/計數(shù)器:定時/計數(shù)器t0和定時/計數(shù)器 t1, 52子系列有三個,還有一個定時 /計數(shù)器t2。2.每個定時/計數(shù)器既可以對系統(tǒng)時鐘計數(shù)實現(xiàn)定時,也可以對外部信號計數(shù)實現(xiàn)計數(shù)功能, 通過編程設(shè)定來實現(xiàn)。3.每個定時/計數(shù)器都有多種工作方
6、式,其中t0有四種工作方式;t1有三種工作方式,t2有三種工作方式。通過編程可設(shè)定工作于某種方式。4.每一個定時/計數(shù)器定時計數(shù)時間到時產(chǎn)生溢出,使相應的溢出位置位,溢出可通過查詢或 中斷方式處理。圖二、定時/計數(shù)器t0、t1的結(jié)構(gòu)及工作原理定時/計數(shù)器的工作方式:方式0是13位的定時/計數(shù)方式,因而最大計數(shù)值(滿值)為 2的13次哥,等于8192。如計數(shù) 值為n,則置入的初值 x為:x=8192-n方式1的結(jié)構(gòu)與方式。結(jié)構(gòu)相同,只是把13位變成16位,16位的加法計數(shù)器被全部用上。 由于是16位的定時/計數(shù)方式,因而最大計數(shù)值(滿值)為 2的16次哥,等于65536。如計數(shù)值為 n,則置入的
7、初值 x為: x=65536-n方式2下,16位的計數(shù)器只用了 8位來計數(shù),用的是tl0 (或tl1 )的8位來進行計數(shù),而th0 (或th1 )用于保存初值。當 tl0 (或tl1 )計滿時則溢出,一方面使tf0 (或tf1)置位,另一方面溢出信號又會觸發(fā)圖 6.5上的三態(tài)門,使三態(tài)門導通,th0 (或th1)的值就自動裝入 tl0 (或tl1)。由于是8位的定時/計數(shù)方式,因而最大計數(shù)值(滿值)為 2的8次哥,等于256。如計數(shù)值 為n,則置入的初值 x為:x=256-n方式3只有定時/計數(shù)器t0才有,當m1m0兩位為11時,定時/計數(shù)器t0工作于方式3。方式 3下,定時/計數(shù)器t0被分為
8、兩個部分 tl0和th0,其中,tl0可作為定時/計數(shù)器使用,占用 t0 的全部控制位:gate、c/t、tr0和tf0;而th0固定只能作定時器使用,對機器周期進行計數(shù), 這時它占用定時/計數(shù)器t1的tr1位、tf1位和t1的中斷資源。六、鍵盤簡介1、鍵盤的工作原理鍵盤實際上是一組按鍵開關(guān)的集合,平時按鍵開關(guān)總是處于斷開狀態(tài),當按下鍵時它才閉合。它的 結(jié)構(gòu)和產(chǎn)生的波形如圖所示。vccp1.17lgndp1.1斷開圖三、鍵盤開關(guān)及波形示意圖2、鍵盤抖動的消除消除按鍵盤抖動通常有兩種方法:硬件消抖和軟件消抖。+5v+5v輸由圖四、硬件消抖電路硬件消抖可以采用 rs觸發(fā)器或單穩(wěn)態(tài)電路。軟件消抖是利
9、用延時來跳過抖動過程3、鍵盤的結(jié)構(gòu)形式鍵盤的結(jié)構(gòu)形式一般有兩種:獨立式鍵盤與矩陣式鍵盤。獨立式鍵盤就是各按鍵相互獨立,每個按鍵各接一根i/o 口線,每根i/o 口線上的按鍵都不會影響其它的i/o 口線。矩陣式鍵盤又叫行列式鍵盤。用 i/o 口線組成行、列結(jié)構(gòu),鍵位設(shè)置在行列的交點上。例如 4 x4的行、列結(jié)構(gòu)可組成 16個鍵的鍵盤,比一個鍵位用一根 i/o 口線的獨立式鍵盤少了一半的 i/o 口線。七、le躁碼管顯示器簡介a 11b w" c m* d oh, e ->hh f -a-g o dp ohcom (a )a i=i-kh b k c kj- d k"e
10、11k1" f -kh1 g k" dp 11k311com (b )圖五、led顯示器的結(jié)構(gòu)g f com a b10e d com c dp(c )c dp,各段選線分別與i/o 口線i/o 口控制,公共端不是直接接led數(shù)碼管的顯示方式:led靜態(tài)顯示時,其公共端直接接地(共陰極)或接電源(共陽極) 相連。要顯示字符,直接在i/o線送相應的字段碼。led動態(tài)顯示是將所有的數(shù)碼管的段選線并接在一起,用一個地(共陰極)或電源(共陽極),而是通過相應的i/o 口線控制。led顯示器從譯碼方式上有硬件譯碼方式和軟件譯碼方式。從顯示方式上有靜態(tài)顯示方式和動 態(tài)顯示方式。在使用時
11、可以把它們組合起來。在實際應用時,如果數(shù)碼管個數(shù)較少,通常用硬件譯 碼靜態(tài)顯示,在數(shù)碼管個數(shù)較多時,則通常用軟件譯碼動態(tài)顯示。八、基本原理本設(shè)計考慮到僅僅是數(shù)字鐘,就用內(nèi)部的定時計數(shù)器來技術(shù),并過中斷來處理。在硬件的設(shè)計 上采用c51單片機作為核心部件。在按鍵上,只用到位選擇、位加和位減,就采用獨立式的鍵盤。 顯示上采用數(shù)碼管的動態(tài)顯示。 譯碼采用軟件譯碼。 顯示碼通過p0 口輸出,為選擇通過p 2 口輸出。 軟件設(shè)計流程圖如下:開始保護現(xiàn)場,重置初值啟動下一個50ms50ms計數(shù)器加1否50ms計數(shù)器=20?是秒單元加1,50ms計數(shù)器清0圖六、主程序流程圖秒單元=60 ?是分單元加1,秒單
12、元清0分單元=60 ?是時單元加1 ,分單元清0時單元=24 ?是時單元清0中斷返回圖七、定時計數(shù)器t0中斷服務(wù)程序流程圖九、硬件電路u1xtal1xtal2rstc1r11k29d n gpsenale eacvcrystal 191nfr35.1kx1k1p1.0p1.1p1.2p1.3p1.4p1.5p1.6p1.780c51p0.0/ad0p0.1/ad1p0.2/ad2p0.3/ad3p0.4/ad4p0.5/ad5p0.6/ad6p0.7/ad7p2.0/a8p2.1/a9p2.2/a10p2.3/a11p2.4/a12p2.5/a13p2.6/a14p2.7/a15p3.0/rx
13、dp3.1/txdp3.2/int0p3.3/int1p3.4/t0p3.5/t1p3.6/wrp3.7/rd393837363534332122232425262728k0鍵為模式選擇鍵,按第一次暫停,設(shè)小時; 按第二次暫停,設(shè)分,按第三次重新開始走動。k1為加1鍵,k2為減1健。對應元器件如下:單片機:按鍵電阻電容led數(shù)碼管: 運行效果如下:80c52晶振:crystalbutton地:grandres電源:powercap7seg-mpx8-ca-blue (ca:共陽,cc:共陰)十、軟件程序流程及代碼;采用8位led軟件譯碼動態(tài)顯示程序使用at89c51單片機,12mhz晶振,p0
14、輸出字段碼,p2 口輸出位選碼,用共陽 ;led數(shù)碼管,p1.0為調(diào)時位選擇按鍵,p1.1為加1鍵,p1.2為減1鍵。;片內(nèi)ram的70h到77h單元為led數(shù)碼管的顯示緩沖區(qū);78h,79h,7ah分別為秒、分、小時計數(shù)單元;7bh為50ms計數(shù)器,7ch為調(diào)時按鍵計數(shù)器org 0000h ljmp startorg 000bh;定時器/計數(shù)器t0中斷程序入口ljmp intt0;主程序start:mov r0,#70h mov r7,#0chinit: mov r0,#00h inc r0 djnz r7,init mov 72h,#10 mov 75h,#10mov tmod,#01hm
15、ov tl0,#0b0hmov th0,#03ch setb ea setb et0 setb tr0start1: lcall scan lcall keyscan sjmp start1;延時1ms子程序dl1ms:movr6,#14hdl1:movr7,#19hdl2:djnzr7,dl2djnz r6,dl1 ret;延時20ms子程序dl20ms:acall scan acall scan acall scan ret ;數(shù)碼管顯示程序scan:mov a,78h;時間存入顯示緩沖區(qū)相應位置movb,#0ahdivabmov71h,amov70h,bmova,79hmovb,#0ah
16、divabmov74h,amov73h,bmova,7ahmovb,#0ahdivabmov77h,amov76h,bmovr1,#70h;循環(huán)掃描顯示movr5,#80hmovr3,#08hscan1: mova,r5movp2,amova,r1movdptr,#tabmovca,a+dptrmovp0,amova,r5lcalldl1msinc r1mov a,r5rr amov r5,adjnz r3,scan1mov p2,#00hmov p0,#0ffh rettab:db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h, 80h,90h,0bfh;“09”
17、,“-”的共陽極字段碼;定時器/計數(shù)器t0中斷服務(wù)程序 intt0:push accpush psw clr et0 clr tr0 mov tl0,#0b0h mov th0,#03ch setb tr0 inc 7bh mov a,7bh cjne a,#14h,outt0 mov 7bh,#00 inc 78h mov a,78h cjne a,#3ch,outt0 mov 78h,#00 inc 79h mov a,79h cjne a,#3ch,outt0 mov 79h,#00 inc 7ah mov a,7ah cjne a,#18h,outt0 mov 7ah,#00outt0
18、: setb et0 pop psw pop acc reti;按鍵處理程序 keyscan: clr eajnb p1.0,keyscan0 jnb p1.1,keyscan1 jnb p1.2,keyscan2 keyout:setb earet keyscan0: lcall dl20msjb p1.0,keyout wait0:jnb p1.0,wait0inc 7ch mov a,7ch clr tr0 clr et0 cjne a,#03h,keyout mov 7ch,#00 setb tr0 setb et0 sjmp keyout keyscan1: lcall dl20ms
19、 jb p1.1,keyoutwait1:jnb p1.1,wait1mov a,7ch cjne a,#02h,kscan11 inc 79h mov a,79h cjne a,#3ch,keyout mov 79h,#00 sjmp keyout kscan11:inc 7ahmov a,7ah cjne a,#18h,keyout mov 7ah,#00 sjmp keyout keyscan2: lcall dl20ms jb p1.2,keyoutwait2:jnb p1.2,wait2mov a,7ch cjne a,#02h,kscan21 dec 79h mov a,79h cjne
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度養(yǎng)殖場廢棄物資源化利用技術(shù)承包合同范本4篇
- 2022版義務(wù)教育階段英語課程標準模擬測試卷
- 2025年度整棟醫(yī)療設(shè)施出租經(jīng)營合同4篇
- 2025年度存量房交易資金監(jiān)管服務(wù)合同范本2篇
- 2024智能健康監(jiān)測設(shè)備研發(fā)與生產(chǎn)合同
- 2025別墅庭院園藝景觀植物租賃與養(yǎng)護合同3篇
- 2025年度新能源汽車動力電池回收利用技術(shù)合作合同范本3篇
- 2024美容院員工勞動合同及保密協(xié)議
- 2025年度醫(yī)院兒科病房改造與承包運營協(xié)議4篇
- 2025年度床上用品行業(yè)環(huán)保公益活動合作合同3篇
- 餐飲業(yè)環(huán)境保護管理方案
- 人教版【初中數(shù)學】知識點總結(jié)-全面+九年級上冊數(shù)學全冊教案
- 食品安全分享
- 礦山機械設(shè)備安全管理制度
- 計算機等級考試二級WPS Office高級應用與設(shè)計試題及答案指導(2025年)
- 造價框架協(xié)議合同范例
- 糖尿病肢端壞疽
- 心衰患者的個案護理
- 醫(yī)護人員禮儀培訓
- 無人機飛行安全協(xié)議書
- 2024-2025學年人教版七年級英語上冊各單元重點句子
評論
0/150
提交評論