數(shù)字電子鐘說(shuō)明書(shū)_第1頁(yè)
數(shù)字電子鐘說(shuō)明書(shū)_第2頁(yè)
數(shù)字電子鐘說(shuō)明書(shū)_第3頁(yè)
數(shù)字電子鐘說(shuō)明書(shū)_第4頁(yè)
數(shù)字電子鐘說(shuō)明書(shū)_第5頁(yè)
已閱讀5頁(yè),還剩35頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 單片機(jī)技術(shù)課程設(shè)計(jì)說(shuō)明書(shū) 數(shù)字電子鐘 院 、 部: 電氣與信息工程學(xué)院學(xué)生姓名: * 指導(dǎo)教師: 王韌 職稱 副教授專 業(yè): 通信工程 班 級(jí): * 完成時(shí)間: 2013年12月20日 湖南工學(xué)院課程設(shè)計(jì)任務(wù)書(shū)課 程: 單片機(jī)技術(shù) 課程設(shè)計(jì)題目: 數(shù)字電子鐘 數(shù)字頻率計(jì) 數(shù)字電壓表 交通燈 搶答器 密碼鎖 波形發(fā)生器 數(shù)字溫度計(jì) 計(jì)算器 數(shù)字式秒表 適 用 班 級(jí): 電子11012、通信11023 通信1101電子1103 時(shí) 間: 20132014學(xué)年第一學(xué)期 指 導(dǎo) 教 師: 王 韌 單片機(jī)技術(shù)課程設(shè)計(jì)任務(wù)書(shū)一、設(shè)計(jì)題目:數(shù)字電子鐘、數(shù)字頻率計(jì)、數(shù)字電壓表、交通燈、搶答器、密碼鎖、波形發(fā)

2、生器、數(shù)字溫度計(jì)、計(jì)算器、數(shù)字式秒表。二、適用班級(jí):電子11012、通信11023、通信1101電子1103三、指導(dǎo)教師:王韌四、設(shè)計(jì)目的與任務(wù):學(xué)生通過(guò)理論設(shè)計(jì)和實(shí)物制作解決相應(yīng)的實(shí)際問(wèn)題,鞏固和運(yùn)用在單片機(jī)技術(shù)中所學(xué)的理論知識(shí)和實(shí)驗(yàn)技能,掌握單片機(jī)應(yīng)用系統(tǒng)的一般設(shè)計(jì)方法,提高設(shè)計(jì)能力和實(shí)踐動(dòng)手能力,為以后從事電子電路設(shè)計(jì)、研發(fā)電子產(chǎn)品打下良好的基礎(chǔ)。五、設(shè)計(jì)內(nèi)容與要求 設(shè)計(jì)內(nèi)容1、數(shù)字電子鐘設(shè)計(jì)一個(gè)具有特定功能的電子鐘。該電子鐘上電或按鍵復(fù)位后能自動(dòng)顯示系統(tǒng)提示符“P.”, 進(jìn)入時(shí)鐘準(zhǔn)備狀態(tài);第一次按電子鐘啟動(dòng)/調(diào)整鍵,電子鐘從0時(shí)0分0秒開(kāi)始運(yùn)行,進(jìn)入時(shí)鐘運(yùn)行狀態(tài);再次按電子鐘啟動(dòng)/調(diào)整

3、鍵,則電子鐘進(jìn)入時(shí)鐘調(diào)整狀態(tài),此時(shí)可利用各調(diào)整鍵調(diào)整時(shí)間,調(diào)整結(jié)束后可按啟動(dòng)/調(diào)整鍵再次進(jìn)入時(shí)鐘運(yùn)行狀態(tài)。2、數(shù)字頻率計(jì)設(shè)計(jì)一個(gè)能夠測(cè)量周期性矩形波信號(hào)的頻率、周期、脈寬、占空比的頻率計(jì)。該頻率計(jì)上電或按鍵復(fù)位后能自動(dòng)顯示系統(tǒng)提示符“P.”, 進(jìn)入測(cè)量準(zhǔn)備狀態(tài)。按頻率測(cè)量鍵則測(cè)量頻率;按周期測(cè)量鍵則測(cè)量周期;按脈寬測(cè)量鍵則測(cè)量脈寬;按占空比測(cè)量鍵則測(cè)量占空比。3、數(shù)字電壓表設(shè)計(jì)一個(gè)能夠測(cè)量直流電壓的數(shù)字電壓表。測(cè)量電壓范圍05V,測(cè)量精度小數(shù)點(diǎn)后兩位。該電壓表上電或按鍵復(fù)位后能自動(dòng)顯示系統(tǒng)提示符“P.”, 進(jìn)入測(cè)量準(zhǔn)備狀態(tài),按測(cè)量開(kāi)始鍵則開(kāi)始測(cè)量,并將測(cè)量值顯示在顯示器上,按測(cè)量結(jié)束鍵則自動(dòng)返

4、回“P.”狀態(tài)。4、交通燈設(shè)計(jì)一個(gè)具有特定功能的十字路口交通燈。該交通燈上電或按鍵復(fù)位后能自動(dòng)顯示系統(tǒng)提示符“P.”, 進(jìn)入準(zhǔn)備工作狀態(tài)。按開(kāi)始鍵則開(kāi)始工作,按結(jié)束鍵則返回“P.”狀態(tài)。要求甲車道和乙車道兩條交叉道路上的車輛交替運(yùn)行,甲車道為主車道,每次通車時(shí)間為60秒,乙車道為次車道,每次通車時(shí)間為30秒,要求黃燈亮3秒,并且1秒閃爍一次。有應(yīng)急車輛出現(xiàn)時(shí),紅燈全亮,應(yīng)急車輛通車時(shí)間10秒,同時(shí)禁止其他車輛通過(guò)。5、搶答器設(shè)計(jì)一個(gè)具有特定功能的搶答器。該搶答器上電或按鍵復(fù)位后能自動(dòng)顯示系統(tǒng)提示符“P.”, 進(jìn)入準(zhǔn)備工作狀態(tài)。主持人按下開(kāi)始按鈕后,搶答開(kāi)始并限定時(shí)間30S;10S內(nèi)無(wú)人搶答,蜂

5、鳴器發(fā)出音響;主持人按下開(kāi)始按鈕之前有人按下?lián)尨鹌鳎瑩尨疬`規(guī),顯示器顯示違規(guī)臺(tái)號(hào),違規(guī)指示燈亮,其它按鈕不起作用;正常搶答,顯示器顯示臺(tái)號(hào),蜂鳴器發(fā)出音響,其它搶答按鈕無(wú)效;正常搶答下,從按下?lián)尨鸢粹o開(kāi)始30S內(nèi),答完按鈕沒(méi)按下,則作超時(shí)處理,超時(shí)處理時(shí),違規(guī)指示燈亮,顯示器顯示違規(guī)臺(tái)號(hào)。蜂鳴器發(fā)出音響;各臺(tái)數(shù)字顯示的消除,蜂鳴器音響及違規(guī)指示燈的關(guān)斷,都要通過(guò)主持人按復(fù)位按鈕。6、密碼鎖設(shè)計(jì)一個(gè)具有特定功能的密碼鎖。該密碼鎖上電或按鍵復(fù)位后能自動(dòng)顯示系統(tǒng)提示符“P.”, 進(jìn)入準(zhǔn)備工作狀態(tài)。該密碼鎖具有系統(tǒng)原始密碼888888,用戶可以設(shè)定并存儲(chǔ)用戶密碼,密碼輸入時(shí)應(yīng)處于保密顯示狀態(tài),密碼輸入

6、正確時(shí)應(yīng)顯示密碼輸入正確提示信息,否則,顯示密碼輸入錯(cuò)誤提示信息。7、波形發(fā)生器設(shè)計(jì)一個(gè)具有特定功能的波形發(fā)生器。該波形發(fā)生器上電或按鍵復(fù)位后能自動(dòng)顯示系統(tǒng)提示符“P.”, 進(jìn)入準(zhǔn)備工作狀態(tài)。該波形發(fā)生器可以分別產(chǎn)生幅值05V、頻率100Hz100KHz范圍內(nèi)的三角波、鋸齒波、方波、梯形波和正弦波。8、數(shù)字溫度計(jì)設(shè)計(jì)一個(gè)具有特定功能的數(shù)字溫度計(jì)。該數(shù)字溫度計(jì)上電或按鍵復(fù)位后能自動(dòng)顯示系統(tǒng)提示符“P.”,進(jìn)入準(zhǔn)備工作狀態(tài)。測(cè)量溫度范圍099,測(cè)量精度小數(shù)點(diǎn)后兩位,可以通過(guò)開(kāi)始和結(jié)束鍵控制數(shù)字溫度計(jì)的工作狀態(tài)。9、計(jì)算器設(shè)計(jì)一個(gè)具有特定功能的計(jì)算器。該計(jì)算器上電或按鍵復(fù)位后能自動(dòng)顯示系統(tǒng)提示符“P

7、.”,進(jìn)入準(zhǔn)備工作狀態(tài)。能實(shí)現(xiàn)(1)基本的加、減、乘、除、平方、開(kāi)方;(2)三角函數(shù)運(yùn)算;(3)十進(jìn)制、十六進(jìn)制轉(zhuǎn)換運(yùn)算;(4)其他功能。10、數(shù)字式秒表設(shè)計(jì)一個(gè)具有特定功能的數(shù)字式秒表。該數(shù)字式秒表上電或按鍵復(fù)位后能自動(dòng)顯示系統(tǒng)提示符“P.”,進(jìn)入準(zhǔn)備工作狀態(tài)。該數(shù)字式秒表應(yīng)具有開(kāi)始、暫停、連續(xù)、清零和停止功能。設(shè)計(jì)要求1、以上課題可以任選其一或多選,學(xué)生也可以自擬課題;2、編程語(yǔ)言:匯編或C51;3、計(jì)算機(jī)打印單片機(jī)技術(shù)課程設(shè)計(jì)說(shuō)明書(shū)一份;4、設(shè)計(jì)時(shí)間:一周;5、實(shí)物制作;6、人員分組:一人一組一實(shí)物。六、單片機(jī)技術(shù)課程設(shè)計(jì)說(shuō)明書(shū)正文主要內(nèi)容參照“單片機(jī)技術(shù)課程設(shè)計(jì)說(shuō)明書(shū)正文主要內(nèi)容”文件

8、。七、單片機(jī)技術(shù)課程設(shè)計(jì)說(shuō)明書(shū)書(shū)寫(xiě)規(guī)范格式 參照“單片機(jī)技術(shù)課程設(shè)計(jì)說(shuō)明書(shū)書(shū)寫(xiě)規(guī)范格式”文件。八、參考資料1、馬忠梅,單片機(jī)的C語(yǔ)言Windows環(huán)境編程寶典M, 北京:北京航空航天大學(xué)出版社,2003.6; 2、李光飛,單片機(jī)C程序設(shè)計(jì)指導(dǎo)M,北京:北京航空航天大學(xué)出版社,2003.01 ;3、李光飛,單片機(jī)課程設(shè)計(jì)實(shí)例指導(dǎo)M,北京:北京航空航天大學(xué)出版社,2004.9。電氣自動(dòng)化教研室 2013年9月10日摘 要當(dāng)今社會(huì),人們對(duì)時(shí)間的要求越來(lái)越高,而傳統(tǒng)的機(jī)械式手表和電子鐘,對(duì)距離和視力有一定的要求,不能準(zhǔn)確直觀地讀出時(shí)間,本設(shè)計(jì)的數(shù)字電子鐘是為了滿足所有群體的時(shí)間的要求,適應(yīng)于各種年齡段

9、的人和各種惡劣情況,能直觀明了的讀出時(shí)間,其設(shè)計(jì)新穎,成本低廉,走時(shí)準(zhǔn)確、顯示直觀,具有很好的開(kāi)發(fā)和生產(chǎn)價(jià)值。本設(shè)計(jì)圍繞數(shù)字電子鐘系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)工作進(jìn)行研究和實(shí)踐,詳細(xì)介紹了電子鐘系統(tǒng)的整體結(jié)構(gòu)、硬件設(shè)計(jì)、軟件設(shè)計(jì),系統(tǒng)方案。介紹一種基于ATMEL公司的AT89S52單片機(jī)為核心,以及電源電路,復(fù)位電路,晶振電路,下載電路,輸入設(shè)備,輸出設(shè)備構(gòu)成的數(shù)字電子鐘系統(tǒng)。軟件上用匯編程序進(jìn)行設(shè)計(jì),達(dá)到顯示時(shí)、分、秒和校時(shí)、定時(shí)、復(fù)位等功能。本設(shè)計(jì)到達(dá)了設(shè)計(jì)要求,具有走時(shí)準(zhǔn)確、顯示直觀、精度、穩(wěn)定等優(yōu)點(diǎn)適用于家庭、辦公大樓、公共場(chǎng)所等。關(guān)鍵詞 電子鐘;單片機(jī);硬件設(shè)計(jì);軟件設(shè)計(jì) ABSTRACT In

10、 todays society, people more and more high to the requirement of time, and the traditional mechanical watches and clocks, the distance has certain requirements, and vision cant intuitively read correct time, the design of digital electronic clock is in order to meet the requirements of the time all

11、the groups, suitable for various age groups and all kinds of bad situation, can read time of straightforward, its novel design, low cost, as accurate, direct display, has great value in development and production.This design around the digital electronic clock system design and development of work s

12、tudy and practice, electronic clock system are introduced in detail the whole structure, hardware design, software design, system solutions. Introduces a kind of based on ATMEL company AT89S52 single chip microcomputer as the core, and power supply circuit, reset circuit, crystal oscillation circuit

13、, circuit, input devices, output devices composed of digital electronic clock system. Software in assembly procedures designed to show when, minutes, seconds, and the school when, timing, and reset, and other functions.This design to reach the design requirements, with travel time accurately, direct

14、 display and the advantages of precision, stability, suitable for families, office buildings, public places, etc.Key words electronic clock; SCM; hardware design; software design目 錄1 電子鐘功能及總體方案的介紹1 1.1 設(shè)計(jì)課題任務(wù)1 1.2 功能要求說(shuō)明1 1.3 設(shè)計(jì)課題總體方案介紹12 設(shè)計(jì)課題硬件系統(tǒng)的設(shè)計(jì)3 2.1 設(shè)計(jì)課題硬件系統(tǒng)各模塊功能簡(jiǎn)要介紹3 2.2 設(shè)計(jì)課題電路原理圖、PCB圖、元器件布局圖

15、4 2.3 設(shè)計(jì)課題元件清單43 設(shè)計(jì)課題軟件系統(tǒng)的設(shè)計(jì)5 3.1 設(shè)計(jì)課題使用單片機(jī)資源的情況5 3.2 設(shè)計(jì)課題軟件系統(tǒng)各模塊功能簡(jiǎn)要介紹6 3.3 設(shè)計(jì)課題軟件系統(tǒng)程序流程框圖7 3.4 設(shè)計(jì)課題軟件系統(tǒng)程序清單124 設(shè)計(jì)總結(jié)20 4.1 設(shè)計(jì)課題結(jié)論及使用設(shè)計(jì)說(shuō)明20 4.2 設(shè)計(jì)課題的仿真結(jié)果20 4.3 設(shè)計(jì)課題的誤差分析21 4.4 設(shè)計(jì)體會(huì)21 4.5 教學(xué)建議22結(jié)束語(yǔ)23參考文獻(xiàn)24致 謝25附錄A26附錄B27附錄C28附錄D29附錄E301 電子鐘功能及總體方案的介紹1.1 設(shè)計(jì)課題任務(wù)設(shè)計(jì)一個(gè)具有特定功能的電子鐘。1.2 功能要求說(shuō)明本設(shè)計(jì)中的電子鐘具有以下功能:(

16、1) 上電或按鍵復(fù)位自動(dòng)顯示系統(tǒng)提示符“P.”,進(jìn)入始終準(zhǔn)備狀態(tài)。(2) 第一次按電子鐘啟動(dòng)/調(diào)整鍵,電子鐘從0時(shí)0分0秒開(kāi)始運(yùn)行,進(jìn)入時(shí)鐘運(yùn)行狀態(tài)。(3) 第二次按電子鐘啟動(dòng)/調(diào)整鍵,電子鐘進(jìn)入時(shí)鐘調(diào)整狀態(tài),此時(shí)按下調(diào)時(shí)鍵,時(shí)加1,滿24自動(dòng)清零;按下調(diào)分鍵,分加1,滿60自動(dòng)清零;按下調(diào)秒鍵秒加1,滿60自動(dòng)清零。(4) 第三次按下電子鐘啟動(dòng)/調(diào)整鍵,電子鐘從當(dāng)前顯示開(kāi)始繼續(xù)運(yùn)行。調(diào)整功能鍵只允許在自己控制的位上操作,不允許出現(xiàn)進(jìn)位;所有鍵操作均需等到案件釋放后做出響應(yīng)功能反映,負(fù)責(zé)狀態(tài)不變。1.3 設(shè)計(jì)課題總體方案介紹1.3.1 設(shè)計(jì)課題硬件系統(tǒng)方案圖1 電子鐘原理框圖如圖1所示,電子鐘

17、硬件系統(tǒng)由單片機(jī)、電源電路,時(shí)鐘電路,復(fù)位電路,下載電路,輸入設(shè)備和輸出設(shè)備構(gòu)成。其中電源電路提供給單片機(jī)+5V的直流電源,8個(gè)獨(dú)立式鍵盤(pán)接在單片機(jī)的P1口,2個(gè)四位一體數(shù)碼管有外接在單片機(jī)上的74HC573驅(qū)動(dòng),其位控接在74HC573上,段控經(jīng)470的電阻掛在單片機(jī)的P0口。硬件的輸入和輸出設(shè)備,加上相應(yīng)的程序,實(shí)現(xiàn)顯示時(shí)間和調(diào)整時(shí)間的功能。1.3.2 設(shè)計(jì)課題軟件系統(tǒng)方案利用基于AT89S52單片機(jī)的相關(guān)程序和硬件電路,首先實(shí)現(xiàn),單片機(jī)上電或者復(fù)位時(shí),數(shù)碼管顯示電路顯示“P.”,利用AT89S52單片機(jī)內(nèi)部的定時(shí)/計(jì)數(shù)器進(jìn)行中斷定時(shí),配合程序延時(shí)實(shí)現(xiàn)時(shí)、分、秒的計(jì)時(shí)。利用單片機(jī)的外部中斷

18、源,加上相關(guān)的程序設(shè)計(jì),用按鍵相應(yīng)做中斷源,對(duì)電子鐘的時(shí)間進(jìn)行相應(yīng)的調(diào)時(shí)、調(diào)分、調(diào)秒。詳細(xì)程序設(shè)計(jì)思想、程序流程圖,和相關(guān)程序見(jiàn)后文。2 設(shè)計(jì)課題硬件系統(tǒng)的設(shè)計(jì) 2.1 設(shè)計(jì)課題硬件系統(tǒng)各模塊功能簡(jiǎn)要介紹2.1.1 單片機(jī)最小系統(tǒng) 單片機(jī)最小系統(tǒng)由電源電路、時(shí)鐘電路和復(fù)位電路構(gòu)成。在各種電子設(shè)備中,直流穩(wěn)壓電源是必不可少的組成部分,它是電子設(shè)備唯一能量來(lái)源,本設(shè)計(jì)的設(shè)計(jì)思路是根據(jù)我模擬電子技術(shù)知識(shí),由其USB插口提供一個(gè)+5V的電源,并有1個(gè)發(fā)光二極管來(lái)顯示其開(kāi)啟關(guān)閉狀態(tài)。本設(shè)計(jì)的時(shí)鐘電路由振蕩電路和分頻電路組成。其中振蕩電路由反相器以及并聯(lián)外接的12M晶振和33PF的電容構(gòu)成,用于產(chǎn)生振蕩脈

19、沖。而分頻電路則用于把振蕩脈沖分頻,已得到所需要的時(shí)鐘信號(hào)。本設(shè)計(jì)中的單片機(jī)AT89S52的高增益反相放大器,其輸入端為引腳XTAL1,輸出引腳為XTAL2。通過(guò)這兩個(gè)引腳在單片機(jī)外并接12M晶振和33PF電容C1和C2構(gòu)成振蕩回路,為片內(nèi)放大器提供正反饋和振蕩所需的相移條件,從而構(gòu)成一個(gè)穩(wěn)定的自激振蕩。復(fù)位電路通常采用上電自動(dòng)復(fù)位和按鍵復(fù)位兩種方式,所謂加電復(fù)位是指通過(guò)專用的電路產(chǎn)生復(fù)位信號(hào),它是系統(tǒng)得原始復(fù)位方式,發(fā)生在開(kāi)機(jī)加電時(shí)是系統(tǒng)自動(dòng)完成的。按鍵復(fù)位也是通過(guò)專用的復(fù)位電路實(shí)現(xiàn)的,本設(shè)計(jì)采用的是上電與按鍵復(fù)位電路,按鍵復(fù)位采用S1鍵控制,AT89S52有復(fù)位信號(hào)引腳RST,用于從外界引

20、入復(fù)位信號(hào)。2.1.2 LED顯示電路顯示器普遍地用于直觀地顯示數(shù)字系統(tǒng)的運(yùn)行狀態(tài)和工作數(shù)據(jù),按照材料及產(chǎn)品工藝,單片機(jī)應(yīng)用系統(tǒng)中常用的顯示器有:發(fā)光二極管LED顯示器、液晶LCD顯示器、CRT顯示器等。LED顯示器是現(xiàn)在最常用的顯示器之一。發(fā)光二極管(LED)由特殊的半導(dǎo)體材料砷化鎵、磷砷化鎵等制成,可以單獨(dú)使用,也可以組裝成分段式或點(diǎn)陣式LED顯示器件(半導(dǎo)體顯示器)。分段式顯示器(LED數(shù)碼管)由7條線段圍成8字型,每一段包含一個(gè)發(fā)光二極管。外加正向電壓時(shí)二極管導(dǎo)通,發(fā)出清晰的光。只要按規(guī)律控制各發(fā)光段亮、滅,就可以顯示各種字形或符號(hào)。LED數(shù)碼管有共陽(yáng)、共陰之分。本設(shè)計(jì)采用是共陽(yáng)式LE

21、D數(shù)碼管顯示。顯示電路顯示模塊需要實(shí)時(shí)顯示當(dāng)前的時(shí)間,即時(shí)、分、秒,因此需要6個(gè)數(shù)碼管,另需兩個(gè)數(shù)碼管來(lái)顯示橫。采用動(dòng)態(tài)顯示方式顯示時(shí)間,時(shí)的十位和個(gè)位分別顯示在第一個(gè)和第二個(gè)數(shù)碼管,分的十位和個(gè)位分別顯示在第四個(gè)和第五個(gè)數(shù)碼管,秒的十位和個(gè)位分別顯示在第七個(gè)和第八個(gè)數(shù)碼管,其余數(shù)碼管顯示橫線。LED顯示器的顯示控制方式按驅(qū)動(dòng)方式可分成靜態(tài)顯示方式和動(dòng)態(tài)顯示方式兩種。本設(shè)計(jì)采用動(dòng)態(tài)掃描的方法進(jìn)行顯示。 2.1.3 鍵盤(pán)控制電路本設(shè)計(jì)開(kāi)發(fā)板中共有10個(gè)獨(dú)立式鍵盤(pán),其中S1為手動(dòng)復(fù)位按鍵,S2-S9共8個(gè)獨(dú)立式按鍵并接在一起,一端接地,一端掛在單片機(jī)的P1口上,結(jié)合相應(yīng)的程序,實(shí)現(xiàn)的單片機(jī)的相關(guān)控

22、制。該設(shè)計(jì)需要校對(duì)時(shí)間,所以用三個(gè)按鍵來(lái)實(shí)現(xiàn)。S2做啟動(dòng)/調(diào)整鍵,第一次按,做時(shí)鐘啟動(dòng)鍵,電子鐘從0時(shí)0分0秒開(kāi)始運(yùn)行。第二次按,做時(shí)鐘調(diào)整鍵,以此類推,每奇數(shù)次按下做啟動(dòng)鍵,偶數(shù)次按下做調(diào)整鍵。S2、S3、S4分別做電子鐘的調(diào)時(shí)、調(diào)分、調(diào)秒功能鍵,但是使用這三個(gè)功能鍵的時(shí)候,按下的S1必須工作在調(diào)整鍵的狀態(tài)下。當(dāng)用手按下一個(gè)鍵時(shí),往往按鍵在閉合位置和斷開(kāi)位置之間跳幾下才穩(wěn)定到閉合狀態(tài)的情況,在釋放一個(gè)鍵時(shí),也回會(huì)出現(xiàn)類似的情況。這就是抖動(dòng),抖動(dòng)問(wèn)題不解決就會(huì)引起對(duì)閉合鍵的識(shí)別出錯(cuò)。所以本設(shè)計(jì)中采用了相應(yīng)的延時(shí)程序進(jìn)行去斗,再讀入鍵盤(pán)碼。2.1.4 下載電路在單片機(jī)電路設(shè)計(jì)中,下載電路也是必不

23、可少的,本設(shè)計(jì)采用的下載口主要用于將Keil軟件里面的程序下載到單片機(jī)中進(jìn)行相應(yīng)的調(diào)試。2.2 設(shè)計(jì)課題電路原理圖、PCB圖、元器件布局圖2.2.1 設(shè)計(jì)課題電路原理圖見(jiàn)附錄A2.2.2 設(shè)計(jì)課題電路PCB圖見(jiàn)附錄B2.2.3 設(shè)計(jì)課題電路元件布局圖見(jiàn)附錄C2.2.4 設(shè)計(jì)課題電路實(shí)物圖見(jiàn)附錄D2.3 設(shè)計(jì)課題元件清單見(jiàn)附錄E3 設(shè)計(jì)課題軟件系統(tǒng)的設(shè)計(jì)3.1 設(shè)計(jì)課題使用單片機(jī)資源的情況3.1.1 堆棧堆棧棧底開(kāi)辟在60H3.1.2 數(shù)據(jù)存儲(chǔ)器變量及常量單元定義78H字節(jié)單元:十進(jìn)制數(shù)秒個(gè)位,非壓縮BCD碼;79H字節(jié)單元:十進(jìn)制數(shù)秒十位,非壓縮BCD碼;7BH字節(jié)單元:十進(jìn)制數(shù)分個(gè)位,非壓縮

24、BCD碼;7CH字節(jié)單元:十進(jìn)制數(shù)分十位,非壓縮BCD碼;7EH字節(jié)單元:十進(jìn)制數(shù)時(shí)個(gè)位,非壓縮BCD碼;7FH字節(jié)單元:十進(jìn)制數(shù)時(shí)十位,非壓縮BCD碼;20H.0位單元:布爾量,S2鍵鍵值,S2鍵按下為1,S2鍵未按下為0;20H.1位單元:布爾量,S3鍵鍵值,S3鍵按下為1,S3鍵未按下為0;20H.2位單元:布爾量,S4鍵鍵值,S4鍵按下為1,S4鍵未按下為0;20H.3位單元:布爾量,S5鍵鍵值,S5鍵按下為1,S5鍵未按下為0;3.1.3 定時(shí)器/計(jì)數(shù)器資源T/C0:工作方式1;定時(shí)50ms,循環(huán)20次,實(shí)現(xiàn)1s定時(shí);中斷法。3.1.4 鍵功能程序KEY2:S2鍵鍵功能程序;KEY3

25、:S3鍵鍵功能程序;KEY4:S4鍵鍵功能程序;KEY5: S5鍵鍵功能程序;3.1.5 子程序DELAY: 800us延時(shí)子程序;DIR: 數(shù)碼管顯示子程序;DIR1: P.顯示子程序;KEY: 鍵掃描子程序;KEYCHULI:P1口數(shù)據(jù)處理子程序;3.1.6 常數(shù)表格DB: 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0BFH,0CH,0FFH 09,-,P.,滅3.2 設(shè)計(jì)課題軟件系統(tǒng)各模塊功能簡(jiǎn)要介紹3.2.1 按鍵部分本設(shè)計(jì)中按鍵部分,采用的是獨(dú)立式鍵盤(pán),因此采取獨(dú)立式鍵盤(pán)接口的編程模式, 此鍵盤(pán)接口程序的功能實(shí)際上就是驅(qū)動(dòng)鍵盤(pán)工作, 根

26、據(jù)相關(guān)的程序,完成鍵盤(pán)的識(shí)別,根據(jù)所識(shí)別按鍵的鍵值, 完成子程序的正確調(diào)用, 從而完成單片機(jī)應(yīng)用系統(tǒng)對(duì)用戶按鍵動(dòng)作的預(yù)定義的響應(yīng)。采取獨(dú)立式鍵盤(pán)的原因是每一個(gè)按鍵只占用一個(gè)I /O 口, 同時(shí)每個(gè)按鍵的工作不影響其他按鍵, 可直接依據(jù)每個(gè)I/O口線的狀態(tài)進(jìn)行子程序的調(diào)用, 因此編制的程序較簡(jiǎn)練。因?yàn)閱纹瑱C(jī)設(shè)計(jì)者規(guī)定,上電時(shí),單片機(jī)I/O口線為高電平,所以硬件設(shè)計(jì)上將鍵盤(pán)并接,且一端接地,所以在程序設(shè)計(jì)中,識(shí)別是否有鍵按下的時(shí)候,0表示有鍵按下,1表示沒(méi)有鍵按下。本程序中利用查詢方式對(duì)按鍵進(jìn)行判斷, 若有鍵按下, 則進(jìn)行軟件延時(shí)消抖, 避免了抖動(dòng)引起的干擾, 同時(shí)只有當(dāng)按鍵松開(kāi)后, 才判斷其有效

27、并進(jìn)行識(shí)別, 最后根據(jù)識(shí)別的按鍵轉(zhuǎn)子程序處理。3.2.2 顯示部分本設(shè)計(jì)顯示部分采取單片機(jī)應(yīng)用系統(tǒng)中最常用的動(dòng)態(tài)掃描顯示法,所謂動(dòng)態(tài)顯示,就是同一時(shí)刻點(diǎn)亮不同的數(shù)碼管,因此LED顯示程序都是作為一個(gè)子程序供主程序調(diào)用, 各位顯示器都掃過(guò)一遍后, 就返回主程序,進(jìn)行一些其他操作, 再調(diào)用顯示掃描程序。程序中主要通過(guò)反復(fù)調(diào)用來(lái)實(shí)現(xiàn)LED 數(shù)碼顯示器的動(dòng)態(tài)掃描。由于本設(shè)計(jì)硬件方案中顯示部分采用2個(gè)共陽(yáng)極四位一體數(shù)碼管,所以要點(diǎn)亮相對(duì)應(yīng)的數(shù)碼管,只需要的需要的時(shí)候通過(guò)軟件、硬件相結(jié)合的方式,將正確的位控碼和段控碼送到顯示部分,加上相應(yīng)的延時(shí)程序,即可實(shí)現(xiàn)數(shù)碼管的動(dòng)態(tài)顯示。3.2.3 計(jì)時(shí)方案利用AT8

28、9S52單片機(jī)內(nèi)部的定時(shí)/計(jì)數(shù)器進(jìn)行中斷定時(shí),配合軟件延時(shí)實(shí)現(xiàn)時(shí)、分、秒的計(jì)時(shí)。先設(shè)置定時(shí)器的工作方式,加上相應(yīng)的循環(huán)程序即可實(shí)現(xiàn)定時(shí)功能,如:利用定時(shí)器1工作方式1,每次定時(shí)50ms,循環(huán)20次,加上相應(yīng)的中斷程序,就可以實(shí)現(xiàn)定時(shí)1s的功能,以此類推。3.3 設(shè)計(jì)課題軟件系統(tǒng)程序流程框圖3.3.1 主程序流程框圖圖2 主程序流程框圖3.3.2 鍵掃子程序流程框圖圖3 鍵掃子程序流程框圖3.3.3 中斷服務(wù)程序流程框圖圖4 中斷服務(wù)程序流程框圖3.3.4 調(diào)整鍵功能程序流程框圖 圖5 調(diào)整鍵功能程序流程框圖3.3.5 顯示子程序流程框圖 圖6 顯示子程序流程圖3.4 設(shè)計(jì)課題軟件系統(tǒng)程序清單電

29、子鐘完整程序清單如下:;*;項(xiàng)目名稱:數(shù)字電子鐘;設(shè) 計(jì) 者:何智慧;設(shè)計(jì)日期: 2013年12月20日;項(xiàng)目功能:上電或按鍵復(fù)位自動(dòng)顯示系統(tǒng)提示符“P.”,進(jìn)入始終準(zhǔn)備狀態(tài)。; 第一次按電子鐘啟動(dòng)/調(diào)整鍵,電子鐘從0時(shí)0分0秒開(kāi)始運(yùn)行,進(jìn);入時(shí)鐘運(yùn)行狀態(tài)。; 第二次按電子鐘啟動(dòng)/調(diào)整鍵,電子鐘進(jìn)入時(shí)鐘調(diào)整狀態(tài),此時(shí)按下;調(diào)時(shí)鍵,時(shí)加1,滿24自動(dòng)清零;按下調(diào)分鍵,分加1,滿60自動(dòng);清零;按下調(diào)秒鍵秒加1,滿60自動(dòng)清零。; 第三次按下電子鐘啟動(dòng)/調(diào)整鍵,,電子鐘從當(dāng)前顯示開(kāi)始繼續(xù)運(yùn)行。;調(diào)整功能鍵只允許在自己控制的位上操作,不允許出現(xiàn)進(jìn)位;所有;鍵操作均需等到案件釋放后做出響應(yīng)功能反映,負(fù)

30、責(zé)狀態(tài)不變。;*;起始程序 ORG 0000HSTART: LJMP MAIN ORG 000BH LJMP TTC0;斷0服務(wù)程序入口地址;*;監(jiān)控程序 ORG 0100H MAIN: CLR RS1 CLR RS0 ;使用寄存器組0 MOV SP, #60H;堆棧初始化 MOV 78H, #00H;初始化各位清零 MOV 79H, #00H MOV 7BH, #00H MOV 7CH, #00H MOV 7EH, #00H MOV 7FH, #00H LOOP: LCALL DIR ;調(diào)顯示 LCALL KEY;調(diào)鍵掃 MOV 7AH, #10 MOV 7DH, #10 ;顯示-,通過(guò)查表

31、 JB 20H.0, KEY2A; ;判鍵值,S2鍵按下,轉(zhuǎn)鍵S2功能程序 LJMP LOOP ;其中無(wú)鍵按下,轉(zhuǎn)回循環(huán);*;鍵S2功能程序KEY2A: SETB EA SETB ET0 ;開(kāi)中斷 MOV TMOD,#01H ;定時(shí)器初始化 MOV TH0, #3CH MOV TL0, #0B0H ;定時(shí)50ms MOV 50H, #20 ;設(shè)定循環(huán)次數(shù)KEY2C: SETB TR0 ;開(kāi)啟定時(shí)器HERE: LCALL DIR1 ;調(diào)顯示 LCALL KEY ;調(diào)鍵掃 JB 20H.0, KEY2B ;此時(shí)唯有鍵S2再次按下有所變化 LJMP HEREKEY2B: CLR TR0 ;鍵S2再次

32、按下,關(guān)閉定時(shí)器 LCALL DIR1 ;調(diào)顯示 LCALL KEY ;調(diào)鍵掃 JB 20H.0, KEY2C ;鍵S2按下,轉(zhuǎn)回執(zhí)行鍵2C功能 JB 20H.1, KEY3 ;鍵S3按下,時(shí)加1 JB 20H.2, KEY4 ;鍵S4按下,分加1 JB 20H.3, KEY5 ;鍵S5按下,秒加1 LJMP KEY2B;*;鍵S3功能程序:時(shí)加1KEY3: MOV R5, 7FH; ;時(shí)十位送R5 MOV R4, 7EH; ;時(shí)個(gè)位送R4KEY3C: CJNE R5, #02, KEY3B;時(shí)十位是否為2,不為2轉(zhuǎn)3B CJNE R4, #03, KEY3D;十位為2時(shí),個(gè)位為3否,為3清零

33、 MOV 7EH, #00H MOV 7FH, #00H; LJMP KEY2B ;轉(zhuǎn)回繼續(xù)顯示掃描KEY3B: INC 7EH ;時(shí)個(gè)位加1 MOV R4, 7EH CJNE R4, #10, KEY2B;個(gè)位是否加到10,不為十轉(zhuǎn)2B MOV 7EH, #00H ;個(gè)位為10進(jìn)一清零 INC 7FH LJMP KEY2BKEY3D: INC 7EH LJMP KEY2B;*;鍵S4功能程序,分加1KEY4: MOV R3, 7CH ;分十位送R3 MOV R2, 7BH ;分個(gè)位送R2 INC R2 ;個(gè)位加1 CJNE R2, #10, KEY4A;個(gè)位加到10否,不為10回顯示掃描 M

34、OV R2, #00H ;為10清零 INC R3 ;十位加1 CJNE R3, #06, KEY4A;十位為6否,不為6轉(zhuǎn)會(huì)顯示掃描 MOV R3, #00H ;為6清零 MOV7BH, R2 ;賦值回緩沖區(qū) MOV7CH, R3 LJMPKEY2B ;轉(zhuǎn)回掃描KEY4A: MOV7BH, R2; MOV7CH, R3; LJMPKEY2B;*;鍵S5功能程序,秒加1KEY5: MOVR1, 79H ;秒十位送R1 MOVR0, 78H ;秒個(gè)位送R0 INCR0 ;個(gè)位加1 CJNE R0, #10, KEY5A;個(gè)位加到10否,不為10轉(zhuǎn)顯示掃描 MOV R0, #00H ;為10清零

35、INC R1 ;十位加1 CJNE R1, #06, KEY5A;十位為6否,不為6轉(zhuǎn)會(huì)顯示掃描 MOV R1, #00H ;為6清零 MOV 78H, R0 ;賦值回緩沖區(qū) MOV 79H, R1 LJMP KEY2B ;轉(zhuǎn)回掃描KEY5A: MOV 78H, R0 MOV 79H, R1 LJMP KEY2B;*;*;中斷服務(wù)程序TTC0: PUSH PSW ;入棧保護(hù) PUSH ACC MOV TH1, #3CH MOV TL1, #0B0H ;重裝初值 MOV A, 50H DEC A MOV 50H, A JNZ EXT MOV 50H, #20 ;重新賦值;*;秒個(gè)位 INC 78

36、H ;秒個(gè)位加1 MOV A, 78H CJNE A, #10, EXT;不為10跳出中斷服務(wù)程序顯示 MOV 78H, #00H ;秒個(gè)位清零,十位加1;*;秒十位 INC 79H ;秒十位加1 MOV A, 79H CJNE A, #06, EXT;不為6跳出中斷服務(wù)程序顯示 MOV 79H, #00H ;秒十位清零,分個(gè)位加1;*;分個(gè)位 INC 7BH ;分個(gè)位加1 MOV A, 7BH CJNE A, #10, EXT;不為10跳出中斷服務(wù)程序顯示 MOV 7BH, #00H ;分個(gè)位清零,十位加1;*;分十位 INC 7CH ;分十位加1 MOV A, 7CH CJNE A, #0

37、6, EXT;不為6跳出中斷服務(wù)程序顯示 MOV 7CH, #00H ;分十位清零,時(shí)個(gè)位加1;*;時(shí)個(gè)位 INC 7EH; ;時(shí)個(gè)位加1 MOV A, 7FH CJNE A, #02, SG1;時(shí)十位為2否,不為轉(zhuǎn)SG1 LJMP SG2SG1: MOV A, 7EH CJNE A, #10, EXT;不為10跳出中斷服務(wù)程序顯示 LJMP SS ;轉(zhuǎn)時(shí)十位操作SG2: MOV A, 7EH CJNE A, #04, EXT;十位為2時(shí),時(shí)個(gè)位不為4跳出中 ;斷服務(wù)程序顯示 MOV 7FH, #00H ;為4清零 MOV 7EH, #00H LJMP EXT;*;時(shí)十位SS: MOV 7EH

38、, #00H INC 7FH ;時(shí)十位加1;*EXT: POP ACC POP PSW RETI;*;*;鍵掃描子程序KEY: LCALL KEYCHULI ;調(diào)鍵處理 JZ EXTI ;無(wú)鍵按下則返回 LCALL DIR1 LCALL DIR1 ;去抖動(dòng) LCALL KEYCHULI ;調(diào)鍵處理 JZ EXTI ;無(wú)鍵按下則返回 MOV B, 20H ;保存取反后鍵值KEYSF: LCALL KEYCHULI ;調(diào)鍵處理 JZ KEYY ;釋放則保存鍵值 LCALL DIR1 ;調(diào)顯示判釋放 LJMP KEYSF ;沒(méi)釋放則繼續(xù)等待KEYY: MOV 20H, B ;保存鍵值EXTI: RE

39、T;*;*;鍵處理子程序,出口:A,20HKEYCHULI:PUSH PSW ;保護(hù)現(xiàn)場(chǎng) SETB RS1 SETB RS0 ;使用寄存器組3 MOV P1, #0FFH ;按鍵口P1寫(xiě)1 MOV A, P1 ;讀P1口數(shù)據(jù),判為哪個(gè)鍵按下 CPL A ;P1口數(shù)據(jù)取反,為鍵值 MOV 20H, A ;保存取反后的鍵值 CLR RS1 ;恢復(fù)當(dāng)前寄存器組為組0 CLR RS0 POP PSW ;恢復(fù)現(xiàn)場(chǎng) RET ;子程序返回;*;*;顯示子程序DIR: MOV P2, #01H MOV P0, #0CH RETDIR1: PUSH DPH ;現(xiàn)場(chǎng)保護(hù) PUSH DPL PUSH ACC PUSH PSW SETB RS0 ;使用寄存器1組 CLR RS1LD2: MOV R0, #78H ;建立顯示緩沖區(qū)首址 MOV R3, #01H ;從右數(shù)第一位LED開(kāi)始掃描 MOV A, R3 ;位控碼初值送A LD0: MOV P2, A ;輸出位控碼 MOV DPTR, #DEEG ;表格首地址 MOV A, R0 ;從顯示緩沖區(qū)取出顯示數(shù)據(jù) MOVC A, A+DPTR ;查

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論