秒倒計(jì)時(shí)器設(shè)計(jì)副本_第1頁(yè)
秒倒計(jì)時(shí)器設(shè)計(jì)副本_第2頁(yè)
秒倒計(jì)時(shí)器設(shè)計(jì)副本_第3頁(yè)
秒倒計(jì)時(shí)器設(shè)計(jì)副本_第4頁(yè)
秒倒計(jì)時(shí)器設(shè)計(jì)副本_第5頁(yè)
已閱讀5頁(yè),還剩8頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、物理與電氣工程學(xué)院?jiǎn)纹瑱C(jī)課程設(shè)計(jì) 題 目: 基于單片機(jī)99秒倒計(jì)時(shí)器的設(shè)計(jì) 學(xué) 院: 物理與電氣工程學(xué)院 專(zhuān) 業(yè): 自動(dòng)化專(zhuān)業(yè) 班 級(jí): 四 組 員: 學(xué) 號(hào): 指導(dǎo)老師: 摘要:隨著計(jì)算機(jī)在社會(huì)領(lǐng)域的滲透,單片機(jī)的應(yīng)用正在不斷地走向深入,同時(shí)帶動(dòng)傳統(tǒng)控制檢測(cè)日新月益更新。在實(shí)時(shí)檢測(cè)和自動(dòng)控制的單片機(jī)應(yīng)用系統(tǒng)中,單片機(jī)往往是作為一個(gè)核心部件來(lái)使用,僅單片機(jī)方面知識(shí)是不夠的,還應(yīng)根據(jù)具體硬件結(jié)構(gòu),以及針對(duì)具體應(yīng)用對(duì)象特點(diǎn)的軟件結(jié)合,以作完善。【關(guān)鍵詞】AT89s52;共陰數(shù)碼管;keil;晶體振蕩器一、要求:?jiǎn)纹瑱C(jī)控制的99s倒計(jì)時(shí)器,用單片機(jī)AT89s52的定時(shí)器實(shí)現(xiàn)99s倒計(jì)時(shí)器。用兩位數(shù)碼

2、管靜態(tài)顯示倒計(jì)時(shí)秒值。二、總體設(shè)計(jì):要求的硬件電路都主要由AT89s52芯片、兩位數(shù)碼管、晶振產(chǎn)生電路、復(fù)位電路,電源,asp下載電路組成。1.1、AT89s52的芯片概述At89s52 是一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統(tǒng)可編程Flash 存儲(chǔ)器。使用Atmel 公司高密度非 易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80C51 產(chǎn)品指令和引腳完 全兼容。片上Flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于 常規(guī)編程器。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng) 可編程Flash,使得AT89S52為眾多嵌入式控制應(yīng)用系統(tǒng)提 供高靈活、超有效的解決方案。 AT89S52具有以下標(biāo)準(zhǔn)功

3、能: 8k字節(jié)Flash,256字節(jié)RAM, 32 位I/O 口線(xiàn),看門(mén)狗定時(shí)器,2 個(gè)數(shù)據(jù)指針,三個(gè)16 位 定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口, 片內(nèi)晶振及時(shí)鐘電路。另外,AT89S52 可降至0Hz 靜態(tài)邏 輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU 停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工 作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié), 單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。8 位微控制器 8K 字節(jié)在系統(tǒng)可編程 Flash AT89S52P0 口:P0口是一個(gè)8位漏極開(kāi)路的雙向I/O口。作為輸出口,每位能驅(qū)動(dòng)8個(gè)TTL邏輯

4、電平。對(duì)P0端口寫(xiě)“1”時(shí),引腳用作高阻抗輸入。當(dāng)訪(fǎng)問(wèn)外部程序和數(shù)據(jù)存儲(chǔ)器時(shí),P0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在這種模式下,P0具有內(nèi)部上拉電阻。在flash編程時(shí),P0口也用來(lái)接收指令字節(jié);在程序校驗(yàn)時(shí),輸出指令字節(jié)。程序校驗(yàn)時(shí),需要外部上拉電阻。P1 口:P1 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,p1 輸出緩沖器能驅(qū)動(dòng)4 個(gè)TTL 邏輯電平。對(duì)P1 端口寫(xiě)“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。此外,P1.0和P1.2分別作定時(shí)器/計(jì)數(shù)器2的外部計(jì)數(shù)輸入(P1.0/T2)和時(shí)器/計(jì)數(shù)

5、器2的觸發(fā)輸入(P1.1/T2EX),具體如下表所示。在flash編程和校驗(yàn)時(shí),P1口接收低8位地址字節(jié)。引腳號(hào)第二功能P1.0 T2(定時(shí)器/計(jì)數(shù)器T2的外部計(jì)數(shù)輸入),時(shí)鐘輸出P1.1 T2EX(定時(shí)器/計(jì)數(shù)器T2的捕捉/重載觸發(fā)信號(hào)和方向控制)P1.5 MOSI(在系統(tǒng)編程用)P1.6 MISO(在系統(tǒng)編程用)P1.7 SCK(在系統(tǒng)編程用)P2 口:P2 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,P2 輸出緩沖器能驅(qū)動(dòng)4 個(gè)TTL 邏輯電平。對(duì)P2 端口寫(xiě)“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(II

6、L)。在訪(fǎng)問(wèn)外部程序存儲(chǔ)器或用16位地址讀取外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVX DPTR)時(shí),P2 口送出高八位地址。在這種應(yīng)用中,P2 口使用很強(qiáng)的內(nèi)部上拉發(fā)送1。在使用8位地址(如MOVX RI)訪(fǎng)問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口輸出P2鎖存器的內(nèi)容。在flash編程和校驗(yàn)時(shí),P2口也接收高8位地址字節(jié)和一些控制信號(hào)。P3 口:P3 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,p3 輸出緩沖器能驅(qū)動(dòng)4 個(gè)TTL 邏輯電平。對(duì)P3 端口寫(xiě)“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。P3口亦作為AT89S52特

7、殊功能(第二功能)使用,如下表所示。在flash編程和校驗(yàn)時(shí),P3口也接收一些控制信號(hào)。端口引腳 第二功能P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口)P3.2 INTO(外中斷0)P3.3 INT1(外中斷1)P3.4 TO(定時(shí)/計(jì)數(shù)器0)P3.5 T1(定時(shí)/計(jì)數(shù)器1)P3.6 WR(外部數(shù)據(jù)存儲(chǔ)器寫(xiě)選通)P3.7 RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)此外,P3口還接收一些用于FLASH閃存編程和程序校驗(yàn)的控制信號(hào)。RST復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將是單片機(jī)復(fù)位。ALE/PROG當(dāng)訪(fǎng)問(wèn)外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許)輸出脈沖用

8、于鎖存地址的低8位字節(jié)。一般情況下,ALE仍以時(shí)鐘振蕩頻率的1/6輸出固定的脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的。要注意的是:每當(dāng)訪(fǎng)問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過(guò)一個(gè)ALE脈沖。對(duì)FLASH存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖(PROG)。如有必要,可通過(guò)對(duì)特殊功能寄存器(SFR)區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該位置位后,只有一條MOVX和MOVC指令才能將ALE激活。此外,該引腳會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE禁止位無(wú)效。PSEN程序儲(chǔ)存允許(PSEN)輸出是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)AT89C52由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩

9、次PSEN有效,即輸出兩個(gè)脈沖,在此期間,當(dāng)訪(fǎng)問(wèn)外部數(shù)據(jù)存儲(chǔ)器,將跳過(guò)兩次PSEN信號(hào)。EA/VPP外部訪(fǎng)問(wèn)允許,欲使CPU僅訪(fǎng)問(wèn)外部程序存儲(chǔ)器(地址為0000H-FFFFH),EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲(chǔ)器的指令。FLASH存儲(chǔ)器編程時(shí),該引腳加上+12V的編程允許電源Vpp,當(dāng)然這必須是該器件是使用12V編程電壓Vpp。振蕩器特性:XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時(shí)鐘源驅(qū)動(dòng)器件,

10、XTAL2應(yīng)不接。有余輸入至內(nèi)部時(shí)鐘信號(hào)要通過(guò)一個(gè)二分頻觸發(fā)器,因此對(duì)外部時(shí)鐘信號(hào)的脈寬無(wú)任何要求,但必須保證脈沖的高低電平要求的寬度。 1.2、LED數(shù)碼管顯示器概述本設(shè)計(jì)中采用的是SH5261AS共陰兩位數(shù)碼管 共陰數(shù)碼管是指將所有發(fā)光二極管的陰極接到一起形成公共陰極(COM)的數(shù)碼管。共陰數(shù)碼管在應(yīng)用時(shí)應(yīng)將公共極COM接到地線(xiàn)GND上,當(dāng)某一字段發(fā)光二極管的陽(yáng)極為高電平時(shí),相應(yīng)字段就點(diǎn)亮。當(dāng)某一字段的陽(yáng)極為低電平時(shí),相應(yīng)字段就不亮。段碼位 D7 D6 D5 D4 D6 D2 D1 D0 顯示段 pd g f e d e b a 字型 共陽(yáng)極段碼 共陰極段碼 字型 共陽(yáng)極段碼 0 C0H

11、3FH 9 90H 1 F9H 06H A 88H 2 A4H 5BM B 83H 3 B0H 4FH C C6H 4 99H 66H D A1H 5 92H 6DH E 86H 6 82H 7DH F 84H 7 F8H 07H 空白 FFH 8 80H 7FH P 8CH 數(shù)碼管的驅(qū)動(dòng)方式:靜態(tài)顯示驅(qū)動(dòng):靜態(tài)驅(qū)動(dòng)也稱(chēng)直流驅(qū)動(dòng)。靜態(tài)驅(qū)動(dòng)是指每個(gè)數(shù)碼管的每一個(gè)段碼都由一個(gè)單片機(jī)的I/O端口進(jìn)行驅(qū)動(dòng),或者使用如BCD碼二-十進(jìn)制譯碼器譯碼進(jìn)行驅(qū)動(dòng)。靜態(tài)驅(qū)動(dòng)的優(yōu)點(diǎn)是編程簡(jiǎn)單,顯示亮度高,缺點(diǎn)是占用I/O端口多,如驅(qū)動(dòng)5個(gè)數(shù)碼管靜態(tài)顯示則需要5840根I/O端口來(lái)驅(qū)動(dòng),要知道一個(gè)89S51單片機(jī)可用

12、的I/O端口才32個(gè)呢:),實(shí)際應(yīng)用時(shí)必須增加譯碼驅(qū)動(dòng)器進(jìn)行驅(qū)動(dòng),增加了硬件電路的復(fù)雜性。1.3、其他元器件介紹及參數(shù)晶振,電容,電阻排,電解電容,開(kāi)關(guān),asp接口,按鍵晶振采用頻率為12MHZ,連接的兩個(gè)電容為22pF;電解電容為10uF;2.單片機(jī)的最小系統(tǒng)與復(fù)位電路 2.1最小系統(tǒng) 最小系統(tǒng)就是單片機(jī)在發(fā)揮具體測(cè)控功能時(shí)所必須的組成部分。為 復(fù)位電路,振蕩電路,單片機(jī),I/O口,電源組成。 時(shí)鐘頻率電路的設(shè)計(jì)單片機(jī)內(nèi)部有一個(gè)時(shí)鐘振蕩電路,只要外界一個(gè)振蕩源就能產(chǎn)生一定的時(shí)鐘信號(hào)送到單片機(jī)內(nèi)部的各個(gè)單元,決定單片機(jī)的工作速度。時(shí)鐘電路如下圖: 外部震蕩源電路一般選用石英晶體振蕩器。此電路在

13、加電大約延遲10ms后振蕩器起振,在XTAL2引腳產(chǎn)生幅度為3V左右的正弦波時(shí)鐘信號(hào),其振蕩頻率主要由石英晶振的頻率確定。電路中兩個(gè)電容C1、C2的作用有兩個(gè):一是幫助振蕩器起振;二是對(duì)振蕩器的頻率進(jìn)行微調(diào)。C1、C2的典型值為30pf。單片機(jī)在工作時(shí),有內(nèi)部振蕩器產(chǎn)生或由外直接輸入的送至內(nèi)部控制邏輯單元的時(shí)鐘信號(hào)的周期稱(chēng)為時(shí)鐘周期。其大小是時(shí)鐘信號(hào)頻率的倒數(shù),f表示。圖中的時(shí)鐘頻率為12MHz,即f=12MHz,則時(shí)鐘周期為1/12us。復(fù)位電路的設(shè)計(jì)單片機(jī)的第九腳RES為硬件復(fù)位端,只要將該端持續(xù)4個(gè)機(jī)器周期的高電平即可實(shí)現(xiàn)復(fù)位,復(fù)位后單片機(jī)的各狀態(tài)都恢復(fù)到初始化狀態(tài),其電路圖如下: 復(fù)位

14、電路圖中由按鍵K3以及電解電容C1構(gòu)成了復(fù)位電路。由于單片機(jī)是高電平復(fù)位,所以當(dāng)按下K3時(shí),單片機(jī)的9腳RESET管腳處于高電平,此時(shí)單片機(jī)處于復(fù)位狀態(tài)。當(dāng)上電后,由于電容緩慢充電,單片機(jī)的9腳電壓逐步由高向低轉(zhuǎn)化,經(jīng)過(guò)一段時(shí)間后,單片機(jī)的9腳處于穩(wěn)定的低電平狀態(tài),此時(shí)單片機(jī)上復(fù)位完畢,系統(tǒng)程序從0000H開(kāi)始執(zhí)行。值得注意的是,在設(shè)計(jì)當(dāng)中使用到了硬件復(fù)位和軟件復(fù)位兩種功能,由上面的硬件復(fù)位后的各狀態(tài)可知寄存器及存儲(chǔ)器的值都恢復(fù)到了初始值,而前面的功能介紹中提到的倒計(jì)時(shí)時(shí)間的記憶功能。顯示電路的設(shè)計(jì)顯示功能與硬件關(guān)系極大,當(dāng)硬件固定后,如何在不引起操作者誤解的前提下提供盡可能豐富的信息,全靠軟

15、件來(lái)解決。在這里我們使用的是七段數(shù)碼管顯示,通常在顯示上我們采用的方法一般包括兩種:一種是靜態(tài)顯示,另一種是動(dòng)態(tài)顯示。其中靜態(tài)顯示的特點(diǎn)是顯示穩(wěn)定不閃爍,程序編寫(xiě)簡(jiǎn)單,但占用端口資源多;動(dòng)態(tài)顯示的特點(diǎn)是顯示穩(wěn)定性沒(méi)靜態(tài)好,程序編寫(xiě)復(fù)雜,但是相對(duì)靜態(tài)顯示而言占用端口資源少。在本設(shè)計(jì)中根據(jù)實(shí)際情況采用的是動(dòng)態(tài)顯示方法。數(shù)碼管顯示電路如下圖: 共陰極數(shù)碼管總體硬件電路設(shè)計(jì)圖: 三、Keil用到了Keil C軟件,集成調(diào)試環(huán)境,集成了編輯器、譯碼器、調(diào)試器,支持軟件模擬,支持項(xiàng)目管理功能強(qiáng)大的觀(guān)察窗口,支持所有的數(shù)據(jù)類(lèi)型。樹(shù)狀結(jié)構(gòu)顯示,一目了然,支持ASM(匯編)、C語(yǔ)言多模塊源程序混合調(diào)試,在直接修

16、改、編譯、調(diào)試源程序,錯(cuò)誤指令定位。功能很強(qiáng)大,用于對(duì)程序的調(diào)試和編輯。其界面如下:Keil C界面2.1程序框圖如圖: 開(kāi)始程序初始化是否產(chǎn)生外部中斷是否進(jìn)入工作狀態(tài)進(jìn)入設(shè)定狀態(tài) 判斷是否足夠1秒 倒計(jì)時(shí)時(shí)間減1是否到0返回是是否否是否是否設(shè)定子程序流程圖(按鍵處理)按K1 暫停按K2開(kāi)始返回4 調(diào)試1、 單片機(jī)最小系統(tǒng)的調(diào)試先向單片機(jī)下載程序,給P1口賦值:0x55,從p1口接一個(gè)LED燈,接不同的的接口會(huì)顯示燈亮、滅交替的過(guò)程,說(shuō)明程序已經(jīng)下載進(jìn)單片機(jī)并且已經(jīng)開(kāi)始工作2、將編好的程序下載進(jìn)單片機(jī),99s開(kāi)始倒計(jì)時(shí),工作正常。參考文獻(xiàn)【1】鄒應(yīng)全.51系列單片機(jī)原理與實(shí)驗(yàn)教程. 西安:西安

17、電子科技大學(xué)出版社【2】 何立民. 單片機(jī)高級(jí)教程 第1版北京:北京航空航天大學(xué)出版社,2001 【3】趙曉安. MCS-51單片機(jī)原理及應(yīng)用. 天津:天津大學(xué)出版社,2001.3 【4】李全利. 單片機(jī)原理及接口技術(shù).高等教育出版社,2007.4 軟件程序:ORG 0000HLJMP MAINORG 0003HLJMP INTR0ORG 000BHLJMP INTRR1ORG 0100HMAIN: MOV 20H,#99 MOV 21H,#9 MOV 22H,#9 MOV TH0,#8AH MOV TL0,#0D8H MOV TMOD,#01H MOV R7,#20 SETB ET0;T0中

18、斷允許 SETB EA;CPU中斷允許(總允許)位 SETB IT0;開(kāi)中斷(邊沿觸發(fā)) SETB EX0;INT0中斷允許 SETB TR0DISPLAY: MOV R1,#01H MOV DPTR,#TAB MOV A,21H MOVC A,A+DPTR MOV P0,A MOV P2,R1 LCALL D10ms MOV R1,#0 MOV DPTR,#TAB MOV A,22H MOVC A,A+DPTR MOV P0,A MOV P2,R1 LCALL D10ms JMP DISPLAY;遞減,溢出則清0INTR1:DJNZ R7,L3 DEC 20H MOV A,20H CLR C SUBB A,#0 JZ L2;TOBCD轉(zhuǎn)碼 MOV A,20H MOV B,#10 DIV AB MOV 21H,B MOV 22H,A

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論