版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、單片機(jī)原理及應(yīng)用課程設(shè)計(jì)報(bào)告課題:以電子鐘為主的多功能設(shè)計(jì)班級(jí) 車輛3101學(xué)號(hào)3102117107學(xué)生姓名_秦延力_指導(dǎo)教師_段衛(wèi)平_淮陰工學(xué)院電子與電氣工程學(xué)院目錄1課程設(shè)計(jì)概述.41.1設(shè)計(jì)課題任務(wù).41.2功能要求說明.41.3設(shè)計(jì)課題總體方案及工作原理.42設(shè)計(jì)課題硬件系統(tǒng)的設(shè)計(jì).62.1硬件系統(tǒng)各模塊功能簡(jiǎn)要介紹.62.2原理電路圖.72.3設(shè)計(jì)PCB圖,元器件布局圖與與器件清單.73軟件系統(tǒng)的設(shè)計(jì).83.1軟件系統(tǒng)各功能模塊簡(jiǎn)要介紹.83.2設(shè)計(jì)課題軟件系統(tǒng)程序流程框圖.83.3設(shè)計(jì)課題軟件系統(tǒng)程序清單 .114仿真與誤差分析 .124.1設(shè)計(jì)課題的設(shè)計(jì)結(jié)論及使用說明 .124.
2、2設(shè)計(jì)課題的仿真結(jié)果 .124.3設(shè)計(jì)課題的誤差分析 .124.4設(shè)計(jì)體會(huì).134.5教學(xué)建議.13參考文獻(xiàn) .14致謝 .15附錄 .16一、設(shè)計(jì)目的1總體要求(1)獨(dú)立完成設(shè)計(jì)任務(wù)(2)繪制系統(tǒng)硬件總框圖(3)繪制系統(tǒng)原理電路圖(4)制定編寫設(shè)計(jì)方案,編制軟件框圖,完成詳細(xì)完整的程序清單和注釋;(5)制定編寫調(diào)試方案,編寫用戶操作使用說明書(6)寫出設(shè)計(jì)工作小結(jié)。 對(duì)在完成以上文件過程所進(jìn)行的有關(guān)步驟如設(shè)計(jì)思想、 指標(biāo)論證、方案確定、參數(shù)計(jì)算、元器件選擇、原理分析等作出說明,并對(duì)所完成 的設(shè)計(jì)作出評(píng)價(jià),對(duì)自己整個(gè)設(shè)計(jì)工作中經(jīng)驗(yàn)教訓(xùn),總結(jié)收獲和今后研修方向。2具體要求本次工程實(shí)踐的校內(nèi)部分主
3、要以單片機(jī)為基礎(chǔ),進(jìn)行單片機(jī)軟件編程,目的是 為了提高學(xué)生的軟件編程和系統(tǒng)設(shè)計(jì)能力,整個(gè)設(shè)計(jì)系統(tǒng)包括兩個(gè)部分,硬件及軟 件部分,硬件部分已經(jīng)制作成功,學(xué)生只需要掌握其原理和焊接相應(yīng)的元器件,掌 握元器件的辨別和元器件的作用以及應(yīng)用場(chǎng)所即可,另外對(duì)所焊接的電路還需要進(jìn) 行仔細(xì)的檢查,判斷是否有焊接錯(cuò)誤的地方或者短路的地方,對(duì)出現(xiàn)的異常情況要 能夠根據(jù)現(xiàn)象判別原因,并具備解決問題的能力,從而切實(shí)提高學(xué)生的硬件電子電 路的分析、判斷能力。軟件編程是本次工程實(shí)踐的重要環(huán)節(jié)。在為期兩周的工程實(shí)踐中,將占據(jù)主要 時(shí)間,學(xué)生要完成的軟件編程任務(wù)主要包括以下幾點(diǎn):1)、熟悉Keil C51編程平臺(tái)及相關(guān)編程軟
4、件2)、編寫、調(diào)試蜂鳴器、繼電器動(dòng)作、方波程序并進(jìn)行軟硬件聯(lián)調(diào)3)、編寫、調(diào)試LED流水燈(循環(huán)顯示)程序并進(jìn)行軟硬件聯(lián)調(diào)4)、編寫、調(diào)試鍵盤掃描子程序并進(jìn)行軟硬件聯(lián)調(diào)5)、編寫、調(diào)試數(shù)碼管動(dòng)態(tài)掃描程序并進(jìn)行軟硬件聯(lián)調(diào)6)、電子鐘設(shè)計(jì)(包括鍵盤、時(shí)鐘、顯示等)7)、溫度測(cè)量控制系統(tǒng)設(shè)計(jì)(包括鍵盤、顯示、控制、報(bào)警等)其中前五個(gè)內(nèi)容是后兩個(gè)內(nèi)容的基礎(chǔ),主要是編制一些子程序,為后繼的整個(gè)系統(tǒng)設(shè)計(jì)打下基礎(chǔ)電子鐘設(shè)計(jì)一個(gè)簡(jiǎn)單的單片機(jī)編程設(shè)計(jì),要求電子鐘軟件程序必須具備鍵盤掃 描、數(shù)碼管顯示、時(shí)鐘以及日歷、秒表和鬧鐘功能。溫度測(cè)量與控制系統(tǒng)設(shè)計(jì)是一種非常簡(jiǎn)單而又應(yīng)用普遍的溫度控制系統(tǒng)、他包 括溫度采集、
5、信號(hào)轉(zhuǎn)換、單片機(jī)處理以及控制、報(bào)警等部分。要求學(xué)生采用聲光報(bào) 警方式。二、總體設(shè)計(jì)2.1 系統(tǒng)硬件總框圖圖1系統(tǒng)設(shè)計(jì)總框圖此次課程設(shè)計(jì),AT89C52是一種帶2K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(FPEROMFalsh Programmable and Erasable Read Only Memory的低電壓,高性能CMOS8位微處理器,俗稱單片機(jī)。此次課程設(shè)計(jì)的電子鐘就是由AT89C52單片機(jī)、時(shí)鐘電路、報(bào)警電路,LED流水 燈電路,動(dòng)態(tài)數(shù)碼管顯示電路、音樂電路等組成。運(yùn)用匯編語(yǔ)言來控制單片機(jī)AT89C52來實(shí)現(xiàn)LED流水燈、報(bào)警器、動(dòng)態(tài)數(shù)碼顯示、電子音樂等功能,并在此基礎(chǔ)上綜合 運(yùn)用上述功
6、能,實(shí)現(xiàn)電子鐘的設(shè)計(jì)(包括鍵盤、時(shí)鐘、顯示等),溫度測(cè)量控制系統(tǒng)(包 括鍵盤、顯示、控制、報(bào)警等)。且本設(shè)計(jì)中的AT89C52單片機(jī)是整個(gè)工作過程的核 心,是整個(gè)設(shè)計(jì)靈魂,它控制了脈沖時(shí)序的產(chǎn)生,顯示信號(hào)的發(fā)送控制顯示LED的選擇。同時(shí)也考慮到AT89C52單片機(jī)來制作電子時(shí)鐘其最大的好處就是可最大的調(diào) 整時(shí)鐘使其準(zhǔn)確度更高。2.2 設(shè)計(jì)原理圖圖2時(shí)鐘電路原理圖睛O68HVO68HV三、硬件單元設(shè)計(jì)3.1 NE555P模塊圖3為555定時(shí)器管腳分布。555定時(shí)器可構(gòu)成多諧振蕩器,是一種性能較好的時(shí)鐘源。 調(diào)節(jié)電位器RW1使在555輸出端3獲得頻率為5060Hz的矩形波信號(hào), 當(dāng)基本RS觸發(fā)器Q
7、為1時(shí),門5開啟,此時(shí)脈沖信號(hào)通過門5作為計(jì)數(shù)脈沖加于計(jì) 數(shù)器的計(jì)數(shù)輸入端CP3.2 數(shù)碼管顯示為了能使電路簡(jiǎn)單我們采用數(shù)碼管動(dòng)態(tài)顯示方式。數(shù)碼管不同位顯示的時(shí)間間 隔可以通過調(diào)整延時(shí)程序的延時(shí)長(zhǎng)短來完成。數(shù)碼管顯示的時(shí)間間隔也能夠確定數(shù) 碼管顯示時(shí)的亮度,若顯示的時(shí)間間隔長(zhǎng),顯示時(shí)數(shù)碼管的亮度將亮些,若顯示的 時(shí)間間隔短,顯示時(shí)數(shù)碼管的亮度將暗些。若顯示的時(shí)間間隔過長(zhǎng)的話,數(shù)碼管顯 示時(shí)將產(chǎn)生閃爍現(xiàn)象。圖4數(shù)碼管顯示圖3.3 DS1302 模塊Illi87 6 :*D5 手 9i233L 1 D*S- TH*-1CO-GNO TR* OUT-* Ra+圏3555管聊圈552定時(shí)器芻鍛振蕩器電
8、路I. EIITORFI1 LEFETJR4 4I2I. E- IM?R7UT5fTTMTRTTT7Q O O Q鈾DP疔UM斗8S9CC1M2TTTTKiTDS1302的RST是復(fù)位/片選線,通過把RST輸入驅(qū)動(dòng)置高電平來啟動(dòng)所有的數(shù) 據(jù)傳送。當(dāng)RST為高電平時(shí),所有的數(shù)據(jù)傳送被初始化,允許對(duì)DS1302進(jìn)行操作 如果在傳送過程中RST置為低電平,則會(huì)終止此次數(shù)據(jù)傳送,I/O引腳變?yōu)楦咦钁B(tài)。其管腳圖如下:各引腳功能:Vcc1為后備電源,VCC2為主電源,X1和X2是振蕩源,SCLK為輸入端RST輸入有兩種功能:首先,RST接通控制邏輯,允許地址/命令序列送入 移位寄存器;其次,RST提供終止
9、單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。3.4 時(shí)鐘控制石英晶體振蕩器是利用石英晶體的壓電效應(yīng)制成的一種諧振器件,它的基本構(gòu)成大致是:從一塊石英晶體上按一定方位角切下薄片,在它的兩個(gè)對(duì)應(yīng)面上涂敷銀層 作為電極,在每個(gè)電極上各焊一根引線接到管腳上,再加上封裝外殼就構(gòu)成了石英 晶體諧振器。其產(chǎn)品一般用金屬外殼封裝,也有用玻璃殼、陶瓷或塑料封裝的。HMOS型MCS-51外部時(shí)鐘源的接發(fā):在XTLA1和XTLA2兩端跨接晶體或陶瓷振蕩器,與內(nèi) 部反相器構(gòu)成穩(wěn)定的自激振蕩器。其發(fā)出的時(shí)鐘脈沖直接送入片內(nèi)定時(shí)控制部件, 其中C電容對(duì)頻率有微調(diào)作用。VCC 1XIGiro1仝&3卑scucTZORST圖 5
10、5DS1302DS1302 管腳圖START: SETB P1.0STOP: CLR P1.01C1 C233p 33CRYSTAL丄圖 6 6 時(shí)鐘電路3.5 揚(yáng)聲器圖 7 7 揚(yáng)聲器原理圖蜂鳴器發(fā)聲原理是電流通過電磁線圈,使電磁線圈產(chǎn)生磁場(chǎng)來驅(qū)動(dòng)振動(dòng)膜發(fā)聲 的。因此需要一定的電流才能驅(qū)動(dòng)它,單片機(jī)10口輸出的電流較小,其TTL電平基本上驅(qū)動(dòng)不了蜂鳴器,因此需要增加一個(gè)電流放大的電路。程序中通過改變單片機(jī) 對(duì)應(yīng)I0口輸出波形的頻率,就可以調(diào)整控制蜂鳴器音調(diào),產(chǎn)生各種不同音色、音調(diào) 的聲音。另外,改變其占空比,也可以控制蜂鳴器的聲音大小。可以有兩種驅(qū)動(dòng)方 式,即用PNF或NPN三極管電流放大電
11、路驅(qū)動(dòng)。本電路通過一個(gè)PNP三極管9012來 放大驅(qū)動(dòng)蜂鳴器,當(dāng)輸出高電平時(shí),三極管Q1截止,沒有電流流過線圈,蜂鳴器不 發(fā)聲;當(dāng)輸出低電平時(shí),三極管導(dǎo)通,這樣蜂鳴器的電流形成回路,發(fā)出聲音。因 此,我們可以通過程序控制10口輸出的電平來使蜂鳴器發(fā)出聲音和關(guān)閉,從而實(shí)現(xiàn) 各種可能音響的產(chǎn)生。啟動(dòng)報(bào)警子程序如下:停止報(bào)警子程序如下:RETRET3.6 LED 燈顯示本次課程設(shè)計(jì)中,“程序語(yǔ)言”通過“翻譯”軟件“翻譯”成單片機(jī)所需的二進(jìn)制代碼,單片機(jī)可工作。要用外加電源和分壓電阻來控制低電平驅(qū)動(dòng)點(diǎn)亮,因?yàn)?單片機(jī)不能直接高電平驅(qū)動(dòng)LED燈。如圖D1-D8和R1、R2以及R6-R11連接到單片 機(jī)1
12、0口,當(dāng)P1口某腳變低時(shí)相應(yīng)LED發(fā)光。實(shí)現(xiàn)LED燈的閃爍,只需利用編程方 法依次從低位到高位逐個(gè)變?yōu)榈碗娖?,等待少許時(shí)刻再變高即可。3.7 鍵盤圖9鍵盤電路在MCS-51系列單片機(jī)的指令系統(tǒng)中設(shè)有散轉(zhuǎn)指令JMP A+DPTF可看成是專門 配合FhE-CH圖 8 8 LEDLED 燈顯示電路圖RETRET鍵入程序是整個(gè)應(yīng)用程序的核心部分。鍵盤的操作,無論是按鍵或鍵盤都是利用機(jī)械觸點(diǎn)的合、斷作用。一個(gè)電壓信 號(hào)通過機(jī)械觸點(diǎn)的閉合、斷開過程。由于機(jī)械觸點(diǎn)的彈性作用,在閉合及斷開瞬間 均有抖動(dòng)過程,會(huì)出現(xiàn)一系列負(fù)脈沖。抖動(dòng)時(shí)間的長(zhǎng)短,與開關(guān)的機(jī)械特性有關(guān), 一般為510ms一組按鍵或鍵盤都要通過I/
13、O口線查詢按鍵的開關(guān)狀態(tài)。且獨(dú)立式按鍵電路配 置靈活,軟件結(jié)構(gòu)簡(jiǎn)單,但每個(gè)按鍵必須占用一根I/O口線,在按鍵數(shù)量較多時(shí),I/O口線浪費(fèi)較大。3.8 AT89C52AT89C52是此次課程設(shè)計(jì)的核心部分。其管腳圖如下:圖 1010AT89C52管 腳圖AT89C52是低功耗、高性能的CMOS位單片機(jī)。片內(nèi)帶有8KB的Flash存儲(chǔ)器, 且允許在系統(tǒng)內(nèi)改寫或用編程器編程。另外,AT89C52的指令系統(tǒng)和引腳與80C52完 全兼容。AT89C52各管腳功能如下:VCC供電電壓;GND接地;P0口:P0口為一個(gè)8位漏級(jí)開路雙向I/O口,每腳 可吸收8TTL門電流。;P1口:P1口是一個(gè)內(nèi)部提供上拉電阻
14、的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流;P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1”時(shí),其管腳 被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流;P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫入“T后,它們被內(nèi)部上拉為高電平,并用作輸入;P3口管腳功能:P3.0是RX(串行輸入口);P3.1是TX(串行輸出口);P3.2是/INTO(外部中斷0);P3.3是/INT1(外部中斷1);P3.4是T0(記時(shí)器0外部輸入);P3.5是
15、T1(記時(shí)器1外部輸入);P3.6是/WR(外部數(shù)據(jù)存儲(chǔ)器寫選通);P3.7是/RD(外部數(shù)據(jù)存儲(chǔ)器讀選通);P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。RST復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。ALE/PROG當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許輸出電平用于鎖存地址的地位字節(jié)。/PSEN外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期 兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。/EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH,不管 是否有內(nèi)部程序存儲(chǔ)器。XTAL1
16、:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。XTAL2來自反向振蕩器的輸出。四、軟件單元設(shè)計(jì)4.1 程序流程圖4.2程序清單T_R Bit P3.4 ;實(shí)時(shí)時(shí)鐘復(fù)位線引腳T_C Bit P3.2 ;實(shí)時(shí)時(shí)鐘時(shí)鐘線引腳T_I Bit P3.3 ;實(shí)時(shí)時(shí)鐘數(shù)據(jù)線引腳SEC EQU 30HMIN EQU 31HH EQU 32HD EQU 33HMON EQU 34HW EQU 35HY EQU 36HORG 0000HLJMP startORG 001bHAJMP INTT1ORG 0030HSTART: LCALL KEYAJMP STARTKEY0: SETB P3.4LCALL DELA
17、YLCALL DELAYCLR P3.4LCALL DELAYLCALL DELAYSETB P3.4LCALL DELAYLCALL DELAY.*蜂鳴器*CLR P3.4 LCALL DELAY LCALL DELAY SETBP3.4 LCALL DELAY LCALL DELAY CLR P3.4RET.*JKEY1:REB:MOV A,#0AFH LOOPB: MOV P2,A RL ALCALL DELAY DJNZ R1,LOOPB DJNZ R2,REBRET.*日期*KEY2: CLR T_RCLR T_CMOV SP,#60HMOV SEC,#00HMOV MIN,#00H
18、修改堆棧初始時(shí)間設(shè)為10:00:00MOV H,#10HMOV D,#18hMOV MON,#01H初始日期設(shè)為08年1月18日第一周流水燈*MOV R2,#2MOV W,#01HMOV Y,#08HLCALL SETDS1302LCALL GET1302LCALL DISPLAYMOV R3,#25MOV TMOD,#01HMOV TH0,#70H ;MOV TL0,#00HSETB TR0;LP1: JBC TF0,LP2 ;SJMP LP1;LP2: MOV TH0,#0B8HMOV TL0,#00HLCALL DISPLAY;DJNZ R3,LP1 ;LCALL GET1302MOV
19、r3,#25SJMP LP1;數(shù)碼顯示子程序DISPLAY:MOV DPTR,#DIG_CODE ;顯示分鐘MOV P1,#11110111bMOV A,MINANL A,#0FHMOVC A,A+DPTRMOV P0,ALCALL DIS_DELAY置定時(shí)器初值(定時(shí)40ms)啟動(dòng)定時(shí)器0查詢計(jì)數(shù)溢出未到40 ms繼續(xù)計(jì)數(shù)重新置定時(shí)器初值顯示未到1 S繼續(xù)循環(huán)每過1s從DS1302賣取一次時(shí)間MOVP1,#11111011bMOVA, MINSWAPAANLA,#07HMOVCA,A+DPTRMOVP0,ALCALL DIS_DELAY顯示小時(shí)MOVP1,#11111101bMOVA,HAN
20、LA,#0FHMOVCA,A+DPTRMOVP0,ALCALL DIS_DELAYMOVP1,#11111110bMOVA,HSWAPAANLA,#03HMOVCA,A+DPTRMOVP0,ALCALL DIS_DELAYRET;顯示延時(shí)5ms子程序DIS_DELAY:PUSH PSWMOV R7,#10D1: MOV R6,#248D2: DJNZ R6,$DJNZ R7,D1POP PSWRET;設(shè)置DS1302初始時(shí)間,并啟動(dòng)計(jì)時(shí)SETDS1302:CLRT_RNOPCLRT_CNOPSETBT_RNOPMOVB,#8EH ;寫控制命令字LCALL INPUTBYTEMOVB,#00H
21、;寫保護(hù)關(guān)閉LCALL INPUTBYTESETBT_CNOPCLRT_RMOVR0,#SECOND ;內(nèi)存中的時(shí)間首地址MOVR1,#80H;DS1302中的時(shí)間首地址MOVR7,#7 ;字節(jié)數(shù)SETLOOP:CLRT_RNOPCLRT_CNOPSETBT_RNOPMOVB,R1 ;寫命令字LCALL INPUTBYTEMOVA,R0MOVB,ALCALLINPUTBYTEINCR0INCR1INCR1SETBT_CNOPCLRT_RNOPDJNZ R7,SETLOOPCLRT_RNOPCLRT_CNOPSETBT_RNOPMOVB,#8EHLCALLINPUTBYTEMOVB,#80H ;
22、LCALLINPUTBYTESETBT_CNOPCLRT_RNOPRET設(shè)置時(shí)間開寫保護(hù);從DS1302讀取時(shí)間GET1302:MOV R0,#SECONDMOV R1,#81H ;DS1302中讀時(shí)間的首地址MOV R7,#7GETLOOP:CLR T_RNOPCLR T_CNOPSETB T_RNOPMOV B,R1LCALL INPUTBYTE ;寫命令字LCALL OUTPUTBYTE ;讀時(shí)間MOV R0,A;將從DS1302中讀取的時(shí)間從內(nèi)存中保存INC R0;修改地址指針I(yè)NC R1INC R1SETB T_CNOPCLR T_RNOPDJNZ R7,GETLOOPRET;向DS
23、1302寫一個(gè)字節(jié)INPUTBYTE:MOV R4,#8INPUTLOOP:MOV A,BRRC AMOVB,AMOVT_I,CSETBT_CNOPNOPNOPCLRT_CDJNZR4,INPUTLOOPRET;從DS1302讀一個(gè)字節(jié)OUTPUTBYTE:CLRaCLRcMOVR4,#8OUTPUTLOOP:NOPNOPMOVC,T_IRRCASETBT_CNOPNOPNOPCLRT_CDJNZR4,OUTPUTLOOPRETKEY: MOV P1,#0F0HMOV A,P1MOV B,AACALL DELAYMOV A,P1CJNE A,B,DOCJNE A,#0E0H,K1AJMP KE
24、Y0K1: CJNE A,#0D0H,K2AJMP KEY1K2: CJNE A,#0B0H,K3AJMP KEY2K3: CJNE A,#070H,DOAJMP KEY3DO: RETDELAY: MOV R6,(#200)DL1: MOV R5,#250DJNZ R5,$DJNZ R6,DL1RETDEL1: MOV R7,#02DL2:MOV R6,#0FFHDJNZ R6,$DJNZ R7,DL2RETDELAYY1:MOV R7,#02DELAY10:MOV R4,#187DELAY11:MOV R3,#248DJNZ R3,$DJNZ R4,DELAY11DJNZ R7,DELAY
25、10DJNZ R5,DELAYY1RETkey3: MOV SP,#60HMOV TMOD,#10HSETB ET1SETB EASETB TR1START0:clr p3.4MOV 30H,#00HNEXTT:MOV A,30HMOV DPTR,#TABLEMOVC A,A+DPTRMOV R2,AJZ ENDDANL A,#0FHMOV R5,AMOV A,R2SWAP AANL A,#0FHJNZ SINGCLR TR1AJMP DD1SING:DEC AMOV 22H,ARL AMOV DPTR,#TABLE1 MOVC A,A+DPTR MOV TH1,AMOV 21H,AMOV A
26、,22HRL AINC AMOVC A,A+DPTRMOV TL1,AMOV 20H,ASETB TR1DD1: LCALL DELAYYINC 30HAJMP NEXTTENDD:CLR TR1AJMP START0INTT1:PUSH PSWPUSH ACCMOV TL1,20HMOV TH1,21HCPL p3.4POP ACCPOP PSWRETIDELAYY:MOV R7,#02DELAY0:MOV R4,#187DELAY1:MOV R3,#248DJNZ R3,$DJNZ R4,DELAY1DJNZ R7,DELAY0DJNZ R5,DELAYYRETTABLE:DB 82H,0
27、1H,81H,94H,84H,0B4H,0A4H,04HDB 82H,01H,81H,94H,84H,0C4H,0B4H,04HDB 82H,01H,81H,0F4H,0D4H,0B4H,0A4H,94HDB 0E2H,01H,0E1H,0D4H,0B4H,0C4H,0B4H,04HDB 82H,01H,81H,94H,84H,0B4H,0A4H,04HDB 82H,01H,81H,94H,84H,0C4H,0B4H,04HDB 82H,01H,81H,0F4H,0D4H,0B4H,0A4H,94HDB 0E2H,01H,0E1H,0D4H,0B4H,0C4H,0B4H,04H,00HTABL
28、E1:DW 64260,64400,64524,64580,64684,64777,64820,64898DW 64968,65030,65058,65110,65157,65178,65217;字符顯示碼表DIG_CODE:DB 14H,0d7H,4cH,45H,87H,25H,24H,57H,04H,44HEND五、焊接與調(diào)試(一)軟件調(diào)試步驟1、從桌面或【開始】菜單選擇【程序】Keil Uvision命令,打開此軟件,進(jìn)入Keil Uvision界面。2、打開軟件后,在Project菜單中選擇New Project命令,打開一個(gè)新項(xiàng)目。 保存此項(xiàng)目,輸入工程文件名后,并保存工程文件的目錄
29、。4、為項(xiàng)目文件選擇一個(gè)目標(biāo)器件,即選擇8051的類型。在Data base列表框 中選擇“ATML 89C52,確定。5、用鼠標(biāo)對(duì)準(zhǔn)項(xiàng)目工作區(qū)的目標(biāo)1,點(diǎn)擊右鍵在彈出的菜單中選擇“為目標(biāo)目 標(biāo)1設(shè)置選項(xiàng)”。在為“為目標(biāo)目標(biāo)1設(shè)置選項(xiàng)”中,點(diǎn)擊“調(diào)試”菜單,在 此菜單中可選擇使用硬件仿真或軟件仿真,若連接實(shí)驗(yàn)箱時(shí)則選擇硬件仿真,點(diǎn)擊 硬件仿真選項(xiàng)后面的調(diào)試選項(xiàng),在此對(duì)話框中選擇串口波特率,波特率為38400。6、上述設(shè)置好后,點(diǎn)擊“文件/新建”,創(chuàng)建源程序文件并輸入程序代碼。輸 入好代碼后點(diǎn)擊“文件/保存”。7、把源文件添加到項(xiàng)目中,用鼠標(biāo)指在目標(biāo)工作區(qū)的目標(biāo)1,點(diǎn)擊右鍵在彈出 的菜單中選擇添
30、加文件到源代碼組,在彈出的添加文件框中,選擇需要添加到項(xiàng)目 中的文件。8、開始編譯,點(diǎn)擊編譯連接的圖標(biāo),對(duì)項(xiàng)目文件進(jìn)行編譯。9、若編譯沒有錯(cuò)誤后,為工程項(xiàng)目設(shè)置軟硬件調(diào)試環(huán)境。(二)燒錄程序的步驟1、用編輯軟件編寫程序,使用匯編語(yǔ)言編寫的程序文件名后綴(即擴(kuò)展名)是.ASM編寫的程序?yàn)榉Q為源程序。2將源程序用編譯軟件進(jìn)行編譯,生成擴(kuò)展名為.OBJ的文件。3、通過編程器擴(kuò)展名為.HEX的可執(zhí)行文件燒到單片機(jī)內(nèi)。在寫入之前還可以進(jìn) 行軟件仿真,既在軟件上模擬單片機(jī)程序原形情況,以便進(jìn)行調(diào)試和修改。(三)調(diào)試按照此次課程設(shè)計(jì)的要求調(diào)試過程如下:按鍵KEY0,KEY1,KEY2,KEY3分 別對(duì)應(yīng)蜂鳴
31、器,LED流水燈,數(shù)碼管,音樂四個(gè)功能。1、蜂鳴器測(cè)試通過按按鍵KEY0聽到蜂鳴器發(fā)出“嘀”,“嘀”的響聲;與相應(yīng)的程序代碼 相比較,結(jié)果正確。2、LED流水燈測(cè)試通過按按鍵KEY1觀察到LED流水燈顯示,并循環(huán)2次;與相應(yīng)的程序代碼相 比較,結(jié)果正確。3、數(shù)碼管測(cè)試通過按按鍵KEY2觀察到數(shù)碼管從“1000”開始計(jì)時(shí), 依次顯示“1001” , “1002” ,“1003” ;與相應(yīng)的程序代碼相比較,結(jié)果正確。因?yàn)槌绦蛞?數(shù)碼管顯示的時(shí)間是小時(shí)和分鐘,所以要觀察到數(shù)碼管的變化要等一分鐘的時(shí)間。4、 音樂測(cè)試通過按按鍵KEY3聽到蜂鳴器響起“生日快樂”的音樂;與相應(yīng)的程序代碼相比較,結(jié)果正確
32、。六、設(shè)計(jì)總結(jié)通過本次實(shí)驗(yàn),讓我對(duì) 80C5180C51 單片機(jī)有了更好的了解,懂得如何去使用定時(shí)器計(jì)數(shù)器,中斷, 串行口,數(shù)碼管顯示,按鍵等知識(shí),讓自己對(duì)單片機(jī)產(chǎn)生了更大的興趣。能夠完全實(shí)現(xiàn)數(shù)字鐘的 功能,讓自己所學(xué)的東西應(yīng)用到實(shí)踐中,感覺到了單片機(jī)的重要性。能夠通過單片機(jī),完成各種 成品的設(shè)計(jì)。通過本次設(shè)計(jì),我們系統(tǒng)的了解了實(shí)時(shí)時(shí)鐘的設(shè)計(jì)流程,尤其是硬、軟件的設(shè)計(jì)方法,掌握了鍵 盤顯示電路的基本功能及編程方法, 掌握了鍵盤電路和顯示電路的一般原理, 也進(jìn)一步掌握了定 時(shí)器的使用和中斷處理器程序的編程方法。 開拓了思路, 鍛煉了實(shí)踐動(dòng)手能力, 提高了分工協(xié)作 能力和分析問題, 解決問題的能力, 達(dá)到了本次課程設(shè)計(jì)的目的。 在調(diào)試電路的過程中也積累了 一些寶貴的經(jīng)驗(yàn),比如說,在 I/OI/O 口要保證標(biāo)準(zhǔn)的高電平” 1 1”的產(chǎn)生,一般要上拉電阻 5.1k5.1k , 在一些需要高電平的地方,不能用懸空來模擬,必須嚴(yán)格的按照“+5v+5v ”來連接,特別是調(diào)試過程中的分部分進(jìn)行很重要。此次單片機(jī)課程設(shè)計(jì),從理論到實(shí)踐,學(xué)到了很多的東西。同時(shí)不僅鞏固了以前所
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版房地產(chǎn)買賣合同擔(dān)保及產(chǎn)權(quán)轉(zhuǎn)移范本3篇
- 2025版農(nóng)業(yè)科技股份收購(gòu)與農(nóng)產(chǎn)品品牌合作合同3篇
- 2025年高標(biāo)準(zhǔn)住宅小區(qū)水電安裝及售后服務(wù)合同2篇
- 2025年銷售薪資與銷售團(tuán)隊(duì)激勵(lì)合同3篇
- 桶裝水銷售合同中的質(zhì)量糾紛處理2025年度3篇
- 2025版事業(yè)單位職工食堂職工餐飲滿意度調(diào)查與分析承包合同3篇
- 2025版司機(jī)雇傭服務(wù)質(zhì)量監(jiān)督與考核合同3篇
- 2025版標(biāo)準(zhǔn)二手車鑒定評(píng)估師服務(wù)合同3篇
- 二零二五版門頭廣告位招商與運(yùn)營(yíng)管理合同4篇
- 2025版?zhèn)€人小額教育貸款抵押擔(dān)保協(xié)議3篇
- 油氣行業(yè)人才需求預(yù)測(cè)-洞察分析
- 《數(shù)據(jù)采集技術(shù)》課件-Scrapy 框架的基本操作
- 高一化學(xué)《活潑的金屬單質(zhì)-鈉》分層練習(xí)含答案解析
- 華為集團(tuán)干部管理
- 圖書館前臺(tái)接待工作總結(jié)
- 衛(wèi)生院藥品管理制度
- 理論力學(xué)智慧樹知到期末考試答案章節(jié)答案2024年中國(guó)石油大學(xué)(華東)
- 2024老年人靜脈血栓栓塞癥防治中國(guó)專家共識(shí)(完整版)
- 四年級(jí)上冊(cè)脫式計(jì)算100題及答案
- 上海市12校2023-2024學(xué)年高考生物一模試卷含解析
- 儲(chǔ)能電站火災(zāi)應(yīng)急預(yù)案演練
評(píng)論
0/150
提交評(píng)論