![單片機(jī)多功能電子鐘畢業(yè)設(shè)計(jì)論文機(jī)械畢業(yè)設(shè)計(jì)論文_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-4/22/fc3c4955-3aa4-4270-82a9-1f1b26d83b46/fc3c4955-3aa4-4270-82a9-1f1b26d83b461.gif)
![單片機(jī)多功能電子鐘畢業(yè)設(shè)計(jì)論文機(jī)械畢業(yè)設(shè)計(jì)論文_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-4/22/fc3c4955-3aa4-4270-82a9-1f1b26d83b46/fc3c4955-3aa4-4270-82a9-1f1b26d83b462.gif)
![單片機(jī)多功能電子鐘畢業(yè)設(shè)計(jì)論文機(jī)械畢業(yè)設(shè)計(jì)論文_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-4/22/fc3c4955-3aa4-4270-82a9-1f1b26d83b46/fc3c4955-3aa4-4270-82a9-1f1b26d83b463.gif)
![單片機(jī)多功能電子鐘畢業(yè)設(shè)計(jì)論文機(jī)械畢業(yè)設(shè)計(jì)論文_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-4/22/fc3c4955-3aa4-4270-82a9-1f1b26d83b46/fc3c4955-3aa4-4270-82a9-1f1b26d83b464.gif)
![單片機(jī)多功能電子鐘畢業(yè)設(shè)計(jì)論文機(jī)械畢業(yè)設(shè)計(jì)論文_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-4/22/fc3c4955-3aa4-4270-82a9-1f1b26d83b46/fc3c4955-3aa4-4270-82a9-1f1b26d83b465.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、xx大學(xué)本科生畢業(yè)設(shè)計(jì)說明書(畢業(yè)論文)題 目:?jiǎn)纹瑱C(jī)多功能電子鐘的設(shè)計(jì)硬件設(shè)計(jì)學(xué)生姓名:昊天學(xué) 號(hào):20011616專 業(yè):電子信息工程班 級(jí):010203指導(dǎo)教師:劉華摘 要電子鐘主要是利用現(xiàn)代電子技術(shù)將時(shí)鐘電子化、數(shù)字化。與傳統(tǒng)的機(jī)械鐘相比,具有時(shí)鐘精確、顯示直觀、無機(jī)械傳動(dòng)裝置等優(yōu)點(diǎn),因而得到廣泛應(yīng)用。另外,在生活和工農(nóng)業(yè)生產(chǎn)中,人們對(duì)電子鐘的功能又提出了諸多要求:報(bào)時(shí)、鬧鐘、日歷、溫度顯示,這就需要電子時(shí)鐘的多功能性。根據(jù)人們的不同要求,本設(shè)計(jì)主要為實(shí)現(xiàn)一款可正常顯示時(shí)鐘/日歷、測(cè)量環(huán)境溫度、帶有定時(shí)鬧鈴的多功能電子時(shí)鐘。筆者通過查閱大量的資料。對(duì)當(dāng)前電子鐘開發(fā)技術(shù)進(jìn)行了認(rèn)真的比較和
2、分析,最終確定采用單片機(jī)技術(shù)實(shí)現(xiàn)多功能電子時(shí)鐘。本設(shè)計(jì)基于at89c51芯片作為核心,7位led數(shù)碼管顯示,使用ds1302時(shí)鐘日歷芯片完成時(shí)鐘/日歷的基本功能,同時(shí)利用ds18b20溫度傳感器測(cè)量環(huán)境溫度。這種設(shè)計(jì)方法的優(yōu)點(diǎn)是電路簡(jiǎn)單,性能穩(wěn)定,實(shí)時(shí)性好,時(shí)間和溫度精度高,性價(jià)比高,開發(fā)較為容易。關(guān)鍵詞:電子時(shí)鐘;多功能;ds1302時(shí)鐘日歷芯片;at89c51;溫度傳感器the design with investigation of the multi-function electron clock the design of the hardware abstractthe elect
3、ronic clock mainly uses the electronic technology make the clock computerization, the digitization.compared with the traditional mechanical bell, it has the clock precision, intuitive display, the advantages of no mechanical transmission device, which is widely used.in addition, living and industria
4、l and agricultural production, people on the clocks function has also put forward many demands: alarm clock, calendar, temperature display, so electronic clock need multi-function.according to the different requirements of the people, the design for the main implementing a clock/calendar can be disp
5、layed normal, collecting personal ambient temperature, with the timing alarm of the multi-function electronic clockthrough access to a lot of information.comparing and analysising the development technology of the electron clock, the design determines to use the mcu technology to realize the multi-f
6、unctional electron clock. this design application at89c51 as a core chips, 7 led digital displaying, using ds1302 real-time clock chip to complete the basic function of the clock/calendar. at the same time the design use of ds18b20 temperature sensors to collect the environmental temperature. the me
7、thod has the advantage of being simple circuit, reliable performance, good real-time, high precision of the time and temperature, cost-effective to develop more easily.key words: electronic clock; multi-function; ds1302; at89c51; temperature pickup 目 錄摘 要iabstractii第一章 引 言11.1 多功能電子時(shí)鐘研究的背景和意義11.2 電子
8、時(shí)鐘的功能2第二章 電子時(shí)鐘設(shè)計(jì)方案分析32.1 ne555時(shí)基電路設(shè)計(jì)方案32.2 單片機(jī)設(shè)計(jì)方案4第三章 基于單片機(jī)的電子時(shí)鐘硬件設(shè)計(jì)53.1 主要ic芯片選擇53.1.1 微處理器選擇常用時(shí)鐘日歷芯片比較 ds1302簡(jiǎn)介 ds1302引腳說明 ds1302的控制字和讀寫時(shí)序說明 ds1302的片內(nèi)寄存器93.1.2 環(huán)境溫度傳感器選擇 常用溫度傳感器比較 ds18b20簡(jiǎn)介 ds18b20內(nèi)部結(jié)構(gòu)113.2 電子時(shí)鐘硬件電路設(shè)計(jì)133.2.1 時(shí)鐘電路設(shè)
9、計(jì)143.2.2 環(huán)境溫度采集電路設(shè)計(jì)143.2.3 顯示電路153.2.4 按鍵電路設(shè)計(jì)163.2.5 鬧鈴電路設(shè)計(jì)173.2.6 復(fù)位電路設(shè)計(jì)18第四章 電子時(shí)鐘軟件設(shè)計(jì)204.1 主程序設(shè)計(jì)204.2 子程序設(shè)計(jì)204.2.1 實(shí)時(shí)時(shí)鐘日歷子程序設(shè)計(jì)204.2.2 環(huán)境溫度采集子程序設(shè)計(jì)214.2.3 顯示子程序設(shè)計(jì)244.2.4 鍵盤掃描子程序254.2.5 鬧鈴子程序設(shè)計(jì)25結(jié) 論29參考文獻(xiàn)30附錄a 多功能電子時(shí)鐘元器件一覽表31附錄b 多功能電子時(shí)鐘硬件原理圖32致 謝33第一章 引 言一寸光陰一寸金,寸金難買寸光陰。從古至今,時(shí)間是人們生活中不可缺少的重要伴侶。如果沒有時(shí)間的
10、概念,社會(huì)將停滯不前。從古代的圭表、水漏,到后來的機(jī)械鐘表以及當(dāng)今的電子鐘,都充分顯現(xiàn)出了時(shí)間的重要。因此利用當(dāng)今先進(jìn)的科技致力于電子鐘的研究將能更好的服務(wù)于人們的生活。1.1 多功能電子時(shí)鐘研究的背景和意義電子技術(shù)是十九世紀(jì)末、二十世紀(jì)初開始發(fā)展起來的新興技術(shù),二十世紀(jì)發(fā)展最迅速,應(yīng)用最廣泛,成為近代科學(xué)技術(shù)發(fā)展的一個(gè)重要標(biāo)志。在其推動(dòng)下,現(xiàn)代電子產(chǎn)品正在以前所未有的革新速度,向著功能多樣化、體積最小化、功耗最低化的方向迅速發(fā)展,電子技術(shù)的發(fā)展有力的推動(dòng)社會(huì)生產(chǎn)力的發(fā)展。 郭沫若先生曾說:時(shí)間就是生命,時(shí)間就是速度,時(shí)間就是力量。時(shí)間對(duì)我們來說總是那么寶貴,在我們的日常工作、學(xué)習(xí)、生活中,時(shí)
11、間概念愈加顯得重要。在高度發(fā)達(dá)信息化的21世紀(jì),人們總是那么忙碌。生活工作中班車要準(zhǔn)點(diǎn),上班要準(zhǔn)時(shí),開會(huì)要有時(shí)間限制;工業(yè)生產(chǎn)中,每一道工序都要有嚴(yán)格的時(shí)間限制,這樣才能做到井井有條;嚴(yán)謹(jǐn)?shù)目萍佳芯恐?,時(shí)間更是重中之重。能夠準(zhǔn)確的了解并且實(shí)時(shí)性的知道時(shí)間,是我們學(xué)習(xí)、工作、生活中不可或缺的。機(jī)械式鐘表雖然也可以告知人們時(shí)間,也可以定時(shí),顯示日歷。但是由于受到機(jī)械結(jié)構(gòu)、動(dòng)力和體積的限制,在功能、性能以及造價(jià)上都沒辦法與電子時(shí)鐘相比。 電子鐘是采用電子電路實(shí)現(xiàn)對(duì)時(shí)、分、秒進(jìn)行數(shù)字顯示的計(jì)時(shí)裝置,廣泛應(yīng)用于個(gè)人家庭,室外廣場(chǎng),汽車站和火車站等公共場(chǎng)所,成為人們?nèi)粘I钪胁豢缮俚谋匦杵?。由于?shù)字集成電
12、路的發(fā)展和石英晶體振蕩器的廣泛應(yīng)用,使得數(shù)字鐘的精度,遠(yuǎn)遠(yuǎn)超過老式鐘表,鐘表的數(shù)字化給人們生產(chǎn)生活帶來了極大的方便,而且大大地?cái)U(kuò)展了鐘表原先的報(bào)時(shí)功能。諸如定時(shí)自動(dòng)報(bào)警、0按時(shí)自動(dòng)打鈴、定時(shí)廣播、自動(dòng)起閉路燈、定時(shí)開關(guān)烘箱、通斷動(dòng)力設(shè)備、甚至各種定時(shí)電氣的自動(dòng)啟用等,所有這些,都是以鐘表數(shù)字化為基礎(chǔ)的。因此,更為先進(jìn)的電子鐘的研究有著良好的發(fā)展前景和市場(chǎng)潛力。隨著社會(huì)的進(jìn)步,人們?cè)絹碓角嗖A功能多樣化的產(chǎn)品。溫度實(shí)時(shí)顯示系統(tǒng)技術(shù)已經(jīng)發(fā)展成熟,比如空調(diào)遙控器上當(dāng)前室溫的顯示、熱水器溫度的顯示等等。如果能夠在電子鐘上利用電子技術(shù)實(shí)時(shí)性的準(zhǔn)確的顯示環(huán)境溫度,那將為我們的生活、工作、和工業(yè)生產(chǎn)中帶來極大
13、的便利,同時(shí)也可以讓我們隨時(shí)的了解周圍環(huán)境的變化以及必要措施的施行。1.2 電子時(shí)鐘的功能電子時(shí)鐘主要是利用電子技術(shù)將時(shí)鐘電子化、數(shù)字化,擁有時(shí)間精確、體積小、界面友好、可擴(kuò)展性能強(qiáng)等特點(diǎn),被廣泛應(yīng)用于生活和工作當(dāng)中。當(dāng)今市場(chǎng)上的電子時(shí)鐘品類繁多,外形小巧別致。也有體型較大的,諸如公共場(chǎng)所的大型電子報(bào)時(shí)器等。電子時(shí)鐘首先是數(shù)字化了的時(shí)間顯示或報(bào)時(shí)器,在此基礎(chǔ)上,人們可以根據(jù)不同場(chǎng)合的要求,在時(shí)鐘上加置其他功能,比如定時(shí)鬧鈴,萬年歷,環(huán)境溫度、濕度檢測(cè),環(huán)境空氣質(zhì)量檢測(cè),usb擴(kuò)展口功能等。本設(shè)計(jì)電子時(shí)鐘主要功能為:1. 具有時(shí)間顯示和手動(dòng)校對(duì)功能,24小時(shí)制;2. 具有年、月、日顯示和手動(dòng)校對(duì)
14、功能;3. 具有鬧鈴功能;4. 具有環(huán)境溫度采集和顯示功能;5. 掉電后無需重新設(shè)置時(shí)間和日期;6. 采用交直流供電電源。交流供電為主,直流電源為后備輔助電源,能自動(dòng)切換。第二章 電子時(shí)鐘設(shè)計(jì)方案分析電子鬧鐘既可以通過純硬件實(shí)現(xiàn),也可以通過軟硬件結(jié)合實(shí)現(xiàn),根據(jù)電子時(shí)鐘里的核心部件秒信號(hào)的產(chǎn)生原理,通常有以下兩種形式:2.1 ne555時(shí)基電路設(shè)計(jì)方案555定時(shí)器是美國(guó)signetics公司1972年研制的用于取代機(jī)械式定時(shí)器的中規(guī)模集成電路,因輸入端設(shè)計(jì)有三個(gè)5k的電阻而得名。一般用雙極性工藝制作的稱為 555,用 cmos 工藝制作的稱為 7555。目前,流行的產(chǎn)品主要有4種:bjt兩個(gè):5
15、55,556(含有兩個(gè)555);cmos兩個(gè):7555,7556(含有兩個(gè)7555)。555 定時(shí)器的電源電壓范圍寬,可在 4.5v16v 工作,7555 可在 318v 工作,輸出驅(qū)動(dòng)電流約為 200ma,因而其輸出可與 ttl、cmos 或者模擬電路電平兼容。555定時(shí)器可以說是模擬電路與數(shù)字電路結(jié)合的典范。555 定時(shí)器成本低,性能可靠,只需要外接幾個(gè)電阻、電容,就可以實(shí)現(xiàn)多諧振蕩器、單穩(wěn)態(tài)觸發(fā)器及施密特觸發(fā)器等脈沖產(chǎn)生與變換電路。它也常作為定時(shí)器廣泛應(yīng)用于儀器儀表、家用電器、電子測(cè)量及自動(dòng)控制等領(lǐng)域5。采用ne555時(shí)基電路或其他振蕩電路產(chǎn)生秒脈沖信號(hào),作為秒加法電路的時(shí)鐘信號(hào)或微處理
16、器的外部中斷輸入信號(hào),可構(gòu)成電子鐘。由555構(gòu)成的秒脈沖發(fā)生器電路見圖2.1。輸出的脈沖信號(hào)v0的頻率f為: 式(2.1)可通過調(diào)節(jié)式2.1中的3個(gè)參數(shù),使輸出v0的頻率為精確的1hz。圖2.1 基于的秒脈沖發(fā)生器采用555定時(shí)器設(shè)計(jì)電子時(shí)鐘,成本低,容易實(shí)現(xiàn)。但是受芯片引腳數(shù)量和功能限制,不容易實(shí)現(xiàn)電子時(shí)鐘的多功能性。2.2 單片機(jī)設(shè)計(jì)方案單片機(jī)(常用英文字母的縮寫mcu表示)是微型機(jī)的一個(gè)主要分支,它在結(jié)構(gòu)上的最大特點(diǎn)使把cpu、存儲(chǔ)器、定時(shí)器和多種輸入/輸出接口電路集成在一塊超大規(guī)模集成電路芯片上。就其組成和功能而言,一塊單片機(jī)芯片就是一臺(tái)計(jì)算機(jī)。單片機(jī)具有如下特點(diǎn):有優(yōu)異的性能價(jià)格比;
17、1 集成度高、體積小、有很高的可靠性;2 控制功能強(qiáng);3 低功耗、低電壓,便于生產(chǎn)便攜式產(chǎn)品;4 外部總線增加了i2c、spi等串行總線方式,進(jìn)一步縮小了體積,簡(jiǎn)化了結(jié)構(gòu);5 單片機(jī)的系統(tǒng)擴(kuò)展、系統(tǒng)配置較典型、規(guī)范,容易構(gòu)成各種規(guī)模的應(yīng)用系統(tǒng)。目前單片機(jī)滲透到我們生活的各個(gè)領(lǐng)域,幾乎很難找到哪個(gè)領(lǐng)域沒有單片機(jī)的蹤跡。導(dǎo)彈的導(dǎo)航裝置,飛機(jī)上各種儀表的控制,計(jì)算機(jī)的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸,工業(yè)自動(dòng)化過程的實(shí)時(shí)控制和數(shù)據(jù)處理,廣泛使用的各種智能ic卡,民用豪華轎車的安全保障系統(tǒng),錄像機(jī)、攝像機(jī)、全自動(dòng)洗衣機(jī)的控制,以及程控玩具、電子寵物等等,這些都離不開單片機(jī)。更不用說自動(dòng)控制領(lǐng)域的機(jī)器人、智能儀表、醫(yī)
18、療器械了。因此,單片機(jī)的學(xué)習(xí)、開發(fā)與應(yīng)用將造就一批計(jì)算機(jī)應(yīng)用與智能化控制的科學(xué)家、工程師。單片機(jī)廣泛應(yīng)于儀器儀表、家用電器、醫(yī)用設(shè)備、航空航天、專用設(shè)備的智能化管理及過程控制等領(lǐng)域傳統(tǒng)。利用單片機(jī)的智能性,可方便地實(shí)現(xiàn)具有智能的電子鐘設(shè)計(jì)。單片機(jī)均具有時(shí)鐘振蕩系統(tǒng),利用系統(tǒng)時(shí)鐘借助微處理器的定時(shí)器/計(jì)數(shù)器可實(shí)現(xiàn)電子鐘功能。然而系統(tǒng)時(shí)鐘誤差較大,電子鐘的積累誤差也可能較大,所以可以通過誤差修正軟件加以修正,或者在設(shè)計(jì)中加入高精度時(shí)鐘日歷芯片,以精確時(shí)間。另外很多功能不同的單片機(jī)是兼容的,這就更便于實(shí)現(xiàn)產(chǎn)品的多功能性。第三章 基于單片機(jī)的電子時(shí)鐘硬件設(shè)計(jì)在比較了第二章的兩種實(shí)現(xiàn)方案之后,考慮單片機(jī)
19、具有體積小、質(zhì)量輕、價(jià)格便宜、功耗低、控制能力強(qiáng)以及運(yùn)算速度快速等優(yōu)點(diǎn),故采用單片機(jī)作為本設(shè)計(jì)的硬件基礎(chǔ)。3.1 主要ic芯片選擇3.1.1 微處理器選擇目前在單片機(jī)系統(tǒng)中,應(yīng)用比較廣泛的微處理器芯片主要為8xc5x系列單片機(jī)。該系列單片機(jī)均采用標(biāo)準(zhǔn)mcs-51內(nèi)核,硬件資源相互兼容,品類齊全,功能完善,性能穩(wěn)定,體積小,價(jià)格低廉,貨源充足,調(diào)試和編程方便,所以應(yīng)用極為廣泛。例如比較常用的at89c2051單片機(jī),帶有2kb flash可編程、可擦除只讀存儲(chǔ)器(e2prom)的低壓、高性能8位cmos微型計(jì)算機(jī)。擁有15條可編程i/o引腳,2個(gè)16位定時(shí)器/計(jì)數(shù)器,6個(gè)中斷源,可編程串行uar
20、t通道,并能直接驅(qū)動(dòng)led輸出。僅僅是為了完成時(shí)鐘設(shè)計(jì)或者是環(huán)境溫度采集設(shè)計(jì),應(yīng)用at89c2051單片機(jī)完全可以實(shí)現(xiàn)。但是將兩種功能結(jié)合在一片單片機(jī)上,就需要更多的i/o引腳,故本設(shè)計(jì)采用具有32根i/o引腳的at89c51單片機(jī)。at89c51單片機(jī)是一款低功耗,低電壓,高性能cmos 8位單片機(jī),片內(nèi)含4kb(可經(jīng)受1000次擦寫周期)的flash可編程可反復(fù)擦寫的只讀程序存儲(chǔ)器(eprom),器件采用cmos工藝和atmei公司的高密度、非易失性存儲(chǔ)器(nuram)技術(shù)制造,其輸出引腳和指令系統(tǒng)都與mcs-51兼容。片內(nèi)的flash存儲(chǔ)器允許在系統(tǒng)內(nèi)可改編程序或用常規(guī)的非易失性存儲(chǔ)器編
21、程器來編程。因此,at89c51是一種功能強(qiáng),靈活性高且價(jià)格合理的單片機(jī),可方便的應(yīng)用在各個(gè)控制領(lǐng)域6。at89c51具有以下主要性能:1. 4kb可改編程序flash存儲(chǔ)器;2. 全靜態(tài)工作:024hz;3. 1288字節(jié)內(nèi)部ram;4. 32個(gè)外部雙向輸入/輸出(i/o)口;5. 6個(gè)中斷優(yōu)先級(jí); 2個(gè)16位可編程定時(shí)計(jì)數(shù)器;6. 可編程串行通道;7. 片內(nèi)時(shí)鐘振蕩器。此外,at89c51是用靜態(tài)邏輯來設(shè)計(jì)的,其工作頻率可下降到0hz,并提供兩種可用軟件來選擇的省電方式空閑方式(idle mode)和掉電方式(power down mode)。在空閑方式中,cpu停止工作,而ram、定時(shí)器
22、/計(jì)數(shù)器、串行口和中斷系統(tǒng)都繼續(xù)工作。在掉電方式中,片內(nèi)振蕩器停止工作,由于時(shí)鐘被“凍結(jié)”,使一切功能都暫停,只保存片內(nèi)ram中的內(nèi)容,直到下一次硬件復(fù)位為止8。圖3.1 at89c51芯片pdip封裝引腳圖at89c51為適應(yīng)不同的產(chǎn)品需求,采用pdip、tqfp、plcc三種封裝形式,本系統(tǒng)采用雙列直插pdip封裝形式,如圖3.1。時(shí)鐘日歷芯片選擇常用時(shí)鐘日歷芯片比較在電子時(shí)鐘設(shè)計(jì)中,常用的實(shí)時(shí)時(shí)鐘芯片有ds12887、ds1216、ds1643、ds1302。每種芯片的主要時(shí)鐘功能基本相同,只是在引腳數(shù)量、備用電池的安裝方式、計(jì)時(shí)精度和擴(kuò)展功能等方面略有不同。ds12887
23、與ds1216芯片都有內(nèi)嵌式鋰電池作為備用電池; x1203引腳少,沒有嵌入式鋰電池,跟ds1302芯片功能相似,只是相比較之下,x1203與at89s51搭配使用時(shí)占用i/o口較多。ds1643為帶有全功能實(shí)時(shí)時(shí)鐘的8k8非易失性sram,集成了非易失性sram、實(shí)時(shí)時(shí)鐘、晶振、電源掉電控制電路和鋰電池電源,bcd碼表示的年、月、日、星期、時(shí)、分、秒,帶閏年補(bǔ)償。同樣,ds1643擁有28只管腳,硬件連接起來占用微處理器i/o口較多,不方便系統(tǒng)功能拓展和維護(hù)。故而從性價(jià)比和貨源上考慮,本設(shè)計(jì)采用實(shí)時(shí)時(shí)鐘日歷芯片ds1302。 ds1302簡(jiǎn)介ds1302是美國(guó)dallas公司推
24、出的一種高性能、低功耗的實(shí)時(shí)時(shí)鐘日歷芯片,附加31字節(jié)靜態(tài)ram,采用spi三線接口與cpu進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個(gè)字節(jié)的時(shí)鐘信號(hào)和ram數(shù)據(jù)。實(shí)時(shí)時(shí)鐘可提供秒、分、時(shí)、日、星期、月和年,一個(gè)月小于31天時(shí)可以自動(dòng)調(diào)整,且具有閏年補(bǔ)償功能。工作電壓寬達(dá)2.55.5v。采用雙電源供電(主電源和備用電源),可設(shè)置備用電源充電方式,提供了對(duì)后備電源進(jìn)行涓細(xì)電流充電的能力。有主電源和備份電源雙引腳,而且備份電源可由大容量電容(1f)來替代。需要強(qiáng)調(diào)的是,ds1302需要使用32.768khz的晶振。 ds1302引腳說明圖3.2 ds1302芯片引腳圖其的引腳功能參照表
25、3.1。表3.1 ds1302引腳功能說明引腳號(hào)名稱功能1vcc1備份電源輸入2x132.768khz晶振輸入3x232.768khz晶振輸出4gnd地5rst控制移位寄存器/復(fù)位6i/o數(shù)據(jù)輸入/輸出7sclk串行時(shí)鐘8vcc2主電源輸入 ds1302的控制字和讀寫時(shí)序說明在編程過程中要注意ds1302的讀寫時(shí)序。ds1302是spi總線驅(qū)動(dòng)方式。它不僅要向寄存器寫入控制字,還需要讀取相應(yīng)寄存器的數(shù)據(jù)。要想與ds1302通信,首先要先了解ds1302的控制字。ds1302的控制字如表3.2。表3.2 ds1302控制字(即地址及命令字節(jié))bit7bit6bit5bit4bit
26、3bit 2bit 1bit 01rama4a3a2a1a0rd控制字的作用是設(shè)定ds1302的工作方式、傳送字節(jié)數(shù)等。每次數(shù)據(jù)的傳輸都是由控制字開始。控制字各位的含義和作用如下:1. bit7:控制字的最高有效位,必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫入到ds1302中。2. bit 6:如果為0,則表示存取日歷時(shí)鐘數(shù)據(jù),為1表示存取ram數(shù)據(jù);3. bit 5至bit 1(a4a0):用a4a0表示,定義片內(nèi)寄存器和ram的地址。定義如下:當(dāng)bit 6位=0時(shí),定義時(shí)鐘和其他寄存器的地址。a4a0=06,順序?yàn)槊?、分、時(shí)、日、月、星期、年的寄存器。當(dāng)a4a0=7,為芯片寫保護(hù)寄存器地址。
27、當(dāng)a4a0=8,為慢速充電參數(shù)選擇寄存器。當(dāng)a4a0=31,為時(shí)鐘多字節(jié)方式選擇寄存器。當(dāng)bit 6=1時(shí),定義ram的地址,a4a0=030,對(duì)應(yīng)各子地址的ram,地址31對(duì)應(yīng)的是ram多字節(jié)方式選擇寄存器。4. bit 0(最低有效位):如為0,表示要進(jìn)行寫操作,為1表示進(jìn)行讀操作??刂谱挚偸菑淖畹臀婚_始輸出。在控制字指令輸入后的下一個(gè)sclk時(shí)鐘的上升沿時(shí),數(shù)據(jù)被寫入ds1302,數(shù)據(jù)輸入從最低位(0位)開始。同樣,在緊跟8位的控制字指令后的下一個(gè)sclk脈沖的下降沿,讀出ds1302的數(shù)據(jù),讀出的數(shù)據(jù)也是從最低位到最高位。圖3.3 ds1302數(shù)據(jù)讀寫時(shí)序ds1302的數(shù)據(jù)讀寫方式有兩
28、種,一種是單字節(jié)操作方式,一種是多字節(jié)操作方式。每次僅寫入或讀出一個(gè)字節(jié)數(shù)據(jù)稱為單字節(jié)操作,每次對(duì)時(shí)鐘/日歷的8字節(jié)或31字節(jié)ram進(jìn)行全體寫入或讀出的操作,稱其為多字節(jié)操作方式。當(dāng)以多字節(jié)方式寫時(shí)鐘寄存器時(shí),必須按數(shù)據(jù)傳送的次序依次寫入8個(gè)寄存器。但是,當(dāng)以多字節(jié)方式寫ram時(shí),不必寫所有31字節(jié)。不管是否寫了全部31字節(jié),所寫的每一個(gè)字節(jié)都將傳送至ram。為了啟動(dòng)數(shù)據(jù)的傳輸,ce引腳信號(hào)應(yīng)由低變高,當(dāng)把ce驅(qū)動(dòng)至邏輯1的狀態(tài)時(shí),sclk必須為邏輯0,數(shù)據(jù)在sclk的上升沿串行輸入。無論是讀周期還是寫周期,也無論送方式是單字節(jié)傳送還是多字節(jié)傳送,都要通過控制字指定40字節(jié)中的哪個(gè)將被訪問。在
29、開始8個(gè)時(shí)鐘周期把命令字(具有地址和控制信息的8位數(shù)據(jù))裝入移位寄存器之后,另外的時(shí)鐘在讀操作時(shí)輸出數(shù)據(jù),在寫操作時(shí)輸入數(shù)據(jù),所有的數(shù)據(jù)在時(shí)鐘的下降沿變化。所有寫入或讀出操作都是先向芯片發(fā)送一個(gè)命令字節(jié)。對(duì)于單字節(jié)操作,包括命令字節(jié)在內(nèi),每次為2個(gè)字節(jié),需要16個(gè)時(shí)鐘;對(duì)于時(shí)鐘/日歷多字節(jié)模式操作,每次為7個(gè)字節(jié),需要72個(gè)時(shí)鐘;而對(duì)于ram多字節(jié)模式操作,每次則為32字節(jié),需要多達(dá)256個(gè)時(shí)鐘。這里僅給出單字節(jié)讀寫時(shí)序,如圖3.3。多字節(jié)操作方式與其類似,只是后面跟的字節(jié)數(shù)不止一個(gè)。 ds1302的片內(nèi)寄存器表3.3 ds1302有關(guān)日歷、時(shí)間的寄存器讀寄存器寫寄存器bit7b
30、it6bit5bit4bit3bit2bit1bit0范圍81h80hch10秒秒00-5983h82h10分分00-5985h84h010時(shí)時(shí)1-120-23am/pm87h86h0010日日1-3189h88h0010月月1-128bh8ah00000周日1-78dh8ch10年年00-998fh8ehwp0000000通過控制字對(duì)ds1302片內(nèi)寄存器進(jìn)行尋址之后,即可就所選中寄存器的各位進(jìn)行操作。片內(nèi)各寄存器及各位的功能定義如表3.3。ds1302有關(guān)日歷、時(shí)間的寄存器共有10個(gè),時(shí)鐘/日歷包含在其中的7個(gè)寫/讀寄存器內(nèi),這7個(gè)寄存器分別是秒、分、小時(shí)、日、月、星期和年。小時(shí)寄存器(8
31、5h、84h)的位7用于定義ds1302是運(yùn)行于12小時(shí)模式還是24小時(shí)模式。當(dāng)為12小時(shí)制式時(shí),位5為“0”表示am;為“1”表示pm。在24小時(shí)制式下,位5是第二個(gè)10小時(shí)位(2023時(shí))。 秒寄存器(81h、80h)的位7定義為時(shí)鐘暫停標(biāo)志(ch)。當(dāng)該位置為1時(shí),時(shí)鐘振蕩器停止,ds1302處于低功耗狀態(tài);當(dāng)該位置為0時(shí),時(shí)鐘開始運(yùn)行。一般在設(shè)置時(shí)鐘時(shí),可以停止其工作,設(shè)定完之后,再啟動(dòng)其工作??刂萍拇嫫鳎?fh、8eh)的位7是寫保護(hù)位(wp),其它7位均置為0。在任何片內(nèi)時(shí)鐘/日歷寄存器和ram,在寫操作之前,wp位必須為0,否則將不可寫入。當(dāng)wp位為1時(shí),寫保護(hù)位防止對(duì)任一寄存器
32、的寫操作。因此,通過置寫保護(hù)位,可以提高數(shù)據(jù)的安全性。另外,還有慢速充電控制寄存器和ram寄存器。如表3.4。表3.4充電控制寄存器和ram寄存器各位定義bit7bit6bit5bit4bit3bit2bit1bit0充電控制寄存器tcstcstcstcsdsdsrsrsram寄存器慢速充電寄存器控制著ds1302的慢速充電特性。寄存器的bit4bit7(tcs)決定是否具備充電性能:僅在編碼為1010的條件下才具備充電性能,其他編碼組合不允許充電。bit2和bit3選擇在vcc2和vcc1之間是一個(gè)還是兩個(gè)二極管串入其中。如果編碼ds是01,選擇一個(gè)二極管;如果編碼是10,選擇兩個(gè)二極管;其
33、他編碼將不允許充電。該寄存器的bit0和bit1用于選擇與二極管相串聯(lián)的電阻值。其中編碼rs=01為2 k,rs=10為4 k,rs=11為8 k,而rs=00將不允許進(jìn)行充電。因此,根據(jù)慢速充電寄存器的不同編碼可得到不同的充電電流。其具體計(jì)算如公式3.1: i充電=(v0-vd-ve)/r (3.1)式中:v0所接入的5.0v工作電壓;vd二極管壓降,一個(gè)按0.7v計(jì)算;r慢速充電控制寄存器0和1位編碼決定的電阻值;vevcc1腳所接入的電池電壓。ram寄存器尋址空間一次排列的31字節(jié)靜態(tài)ram可為用戶使用,備用電源位ram提供了掉電保護(hù)功能。寄存器和ram的操作通過命令字節(jié)的bit6加以區(qū)
34、別。當(dāng)bit6為“0”時(shí)對(duì)ram區(qū)進(jìn)行尋址;否則將對(duì)時(shí)鐘/日歷寄存器尋址。其操作方法與前述相同91011。3.1.2 環(huán)境溫度傳感器選擇 常用溫度傳感器比較在日常生活中和工農(nóng)業(yè)生產(chǎn)中常要用到溫度檢測(cè)及控制,傳統(tǒng)的測(cè)溫元件有熱電偶和熱電阻,一般用來測(cè)量中高溫,輸出的是電壓,將其轉(zhuǎn)換成對(duì)應(yīng)的二進(jìn)制溫度碼值,需要較多的硬件支持,硬件電路復(fù)雜,軟件調(diào)試較為復(fù)雜,制作成本高。另外,采集環(huán)境的溫度也可采用ic化的溫度傳感器。常用的此類溫度傳感器有ad590和ds18b20。ad590測(cè)量到不同溫度之后,將把應(yīng)溫度轉(zhuǎn)化為線性電流輸出,為1a/k,正比于熱力學(xué)溫度。該傳感器寬量程,為-55+15
35、0;精度高,激光校準(zhǔn)精度到0.5;電源范圍寬:+4+30v。ad590優(yōu)點(diǎn)很多,但是由于它只能將采集來的溫度轉(zhuǎn)化為電流輸出,所以在實(shí)際應(yīng)用中,需要先將ad590輸出的電流轉(zhuǎn)化為電壓,再利用a/d轉(zhuǎn)換元件進(jìn)行模/數(shù)轉(zhuǎn)換,將模擬量轉(zhuǎn)化為數(shù)字量,最后送入單片機(jī)中12。與ad590不同的是,ds18b20數(shù)字溫度傳感器能直接將被測(cè)溫度轉(zhuǎn)化成串行數(shù)字信號(hào),以供單片機(jī)處理,既節(jié)省了硬件,又有效避免了模擬方式的干擾問題。它還具有微型化、低功耗、高性能、等優(yōu)點(diǎn)。通過編程,ds18b20可以實(shí)現(xiàn)912位溫度讀數(shù),信息經(jīng)過單線接口送入ds18b20或從ds18b20送出,因此從單片機(jī)到ds18b20僅需要連接一條
36、線。讀、寫和完成溫度變換所需的電源可由數(shù)據(jù)線本身提供,而無需外部電源。測(cè)量范圍為-55+125,增量值為0.5。電源電壓范圍為+3.0+5.5v。通過編程,用戶還以自行設(shè)定告警上下限溫度,告警尋找命令可以識(shí)別和尋址那些溫度超出預(yù)設(shè)告警界限的器件。 ds18b20簡(jiǎn)介 ds18b20是美國(guó)dallas公司生產(chǎn)的基于單線(1-wire)技術(shù)的數(shù)字溫度傳感器芯片。其管腳分布如圖3.4。vcc3dq2gnd1ds18b20圖3.4 ds18b20引腳分布圖每片ds18b20在出廠時(shí)都設(shè)有唯一的產(chǎn)品序列號(hào),此序列號(hào)存放在它的內(nèi)部rom中,微處理器通過簡(jiǎn)單協(xié)議,就能識(shí)別這些序列號(hào),因此多個(gè)d
37、s18b20可以掛接于同一條單總線上,這允許在許多不同的地方放置溫度傳感器,特別適合于構(gòu)成多點(diǎn)溫度測(cè)控系統(tǒng)。所以ds18b20多應(yīng)用與hvac環(huán)境控制,建筑物、設(shè)備或機(jī)械內(nèi)的溫度檢測(cè),以及過程監(jiān)視和控制中的溫度檢測(cè)。管腳功能描述參見表3.5。表3.5 ds18b20詳細(xì)引腳功能描述序號(hào)名稱引腳功能描述1gnd地信號(hào)2dq數(shù)據(jù)輸入/輸出引腳;開漏單總線接口引腳;當(dāng)被用在寄生電源下,也可以向器件提供電源。3vdd可選擇的vdd引腳;當(dāng)工作于寄生電源時(shí),此引腳必須接地。 ds18b20內(nèi)部結(jié)構(gòu) ds18b20的內(nèi)部結(jié)構(gòu)如圖3.5所示。主要由4部分組成:64位rom、溫度傳感器、非揮發(fā)的
38、溫度報(bào)警觸發(fā)器th和tl、配置寄存器。圖3.5 ds18b20內(nèi)部結(jié)構(gòu)圖配置寄存器為高速暫存存儲(chǔ)器中的第5個(gè)字節(jié)。ds18b20在工作時(shí)按此寄存器中的分辨率將溫度轉(zhuǎn)換成相應(yīng)精度的數(shù)值,其各位定義如表3.6所示。其中,tm為測(cè)試模式標(biāo)志位,出廠時(shí)被寫入“0”,不能改變;r0、r1是溫度計(jì)分辨率設(shè)置位。表3.6 ds18b20配置寄存器結(jié)構(gòu)表bit7bit6bit5bit4bit3bit2bit1bit0tmr1r011111msb lsb其對(duì)應(yīng)四種分辨率如表3.7所示,出廠時(shí)r0、r1被置為“1”,默認(rèn)設(shè)置是12位分辨率,用戶可根據(jù)需要給寫配置寄存器以獲得合適的分辨率。表3.7 配置寄存器與分辨
39、率關(guān)系表r0r1溫度計(jì)分辨率/bit最大轉(zhuǎn)換時(shí)間/ms00993.750110187.5010113751112750溫度信息的低位、高位字節(jié)內(nèi)容還包括了符號(hào)位s(是正溫度還是負(fù)溫度)和二進(jìn)制小數(shù)部分,其具體形式如圖3.6。圖3.6 ds18b20溫度值格式表圖3.6所示是12位分辨率的情況,如果配置為低分辨率,則其中無意義位為“0”。在ds18b20完成溫度變換之后,溫度值與存儲(chǔ)在th和tl內(nèi)的告警觸發(fā)值相比較。由于這些是8位寄存器,所以912位在比較時(shí)忽略。th或tl的高位直接對(duì)應(yīng)于16位溫度寄存器的符號(hào)位。如果溫度測(cè)量的結(jié)果高于th或低于tl,那么器件內(nèi)告警標(biāo)志將置位,每次溫度測(cè)量都會(huì)更
40、新此標(biāo)志位。只要告警標(biāo)志置位,ds18b20就將響應(yīng)告警搜索命令,這也就允許單線上多個(gè)ds18b20同時(shí)進(jìn)行溫度測(cè)量,即使某處溫度越限,也可以識(shí)別出正在告警的器件。特別需要注意的是,與ds18b20配套使用的是頻率為11.0592mhz單片機(jī)晶振,這決定了指令的運(yùn)行時(shí)間,在軟件設(shè)計(jì)中將根據(jù)此指令運(yùn)行時(shí)間編寫各種延時(shí)程序13。3.2 電子時(shí)鐘硬件電路設(shè)計(jì)電子鬧鐘至少要包括秒信號(hào)發(fā)生器、時(shí)間顯示電路、按鍵電路、供電電源、鬧鈴指示電路等幾部分。另外,本設(shè)計(jì)要求該電子鐘能夠采集環(huán)境溫度,所以還需要溫度采集芯片。硬件電路框圖參照?qǐng)D3.7。該系統(tǒng)使用at89c51單片機(jī)作為核心,通過讀取時(shí)鐘日歷芯片ds1
41、302和溫度傳感器ds18b20的數(shù)據(jù),完成電子鐘的主要功能時(shí)鐘/日歷和環(huán)境溫度采集。使用比較通用的8段共陰數(shù)碼管,做7位顯示,分別顯示時(shí)/年,分/月,秒/日,及環(huán)境溫度值。圖3.7 多功能電子時(shí)鐘硬件系統(tǒng)框圖鍵盤是為了完成時(shí)鐘/日歷的校對(duì)和日歷/溫度的顯示功能。由于此電子時(shí)鐘要求具有鬧鈴功能,所以設(shè)計(jì)有鬧鈴電路,進(jìn)行聲音響鈴。整個(gè)電路使用了兩種電源,+5v電源將為整個(gè)電路供電。而+3v電源僅作為ds1302的備用電源。當(dāng)+5v電源被切斷后,ds1302啟用+3v電源,可以保持ds1302繼續(xù)工作。當(dāng)+5v電源恢復(fù)供電,led依舊顯示當(dāng)前時(shí)間,而不會(huì)因?yàn)閿嚯娛瓜到y(tǒng)復(fù)位到初始化時(shí)間,避免了重新校
42、時(shí)的麻煩。3.2.1 時(shí)鐘電路設(shè)計(jì)系統(tǒng)時(shí)鐘應(yīng)用了實(shí)時(shí)時(shí)鐘日歷芯片ds1302,其連接如圖3.8。該硬件電路設(shè)計(jì)簡(jiǎn)單,抗干擾能力強(qiáng)。如圖,at89c51單片機(jī)p1.7直接接ds1302的rst端,上電后,at89c51的p1.7腳自動(dòng)輸出高電平。p1.5作為串行時(shí)鐘接口,p1.6作為時(shí)鐘數(shù)據(jù)的i/o。ds1302采用雙電源供電,平時(shí)由+5v電源供電,當(dāng)+5v掉電之后,由圖中bt1(+3v備用電池)供電。特別需要注意x1和x2兩端連接的晶振y1,該晶振頻率為32.768khz。圖3.8 系統(tǒng)時(shí)鐘電路3.2.2 環(huán)境溫度采集電路設(shè)計(jì)本設(shè)計(jì)中使用ds18b20溫度傳感器進(jìn)行環(huán)境溫度采集和轉(zhuǎn)化。如圖3.
43、9所示,at89c51單片機(jī)的p3.3腳接ds18b20的i/o腳,作為數(shù)據(jù)的讀入和寫出口。電阻r11作為ds18b20的i/o口的上拉電阻,在讀時(shí)隙結(jié)束時(shí),i/o引腳將通過此上拉電阻拉回至高電平13。圖3.9 系統(tǒng)環(huán)境溫度采集電路3.2.3 顯示電路就時(shí)鐘而言,通??刹捎胠cd顯示或led顯示。對(duì)于一般的段式lcd,需要專門的驅(qū)動(dòng)電路,而且lcd顯示的可視性較差;對(duì)于具有驅(qū)動(dòng)電路和微處理器接口的液晶顯示模塊(字符或點(diǎn)陣),一般采用并行接口,對(duì)微處理器的接口要求較高,占用資源多。另外,at89c51本身沒有專門的液晶驅(qū)動(dòng)接口。led結(jié)構(gòu)簡(jiǎn)單,體積小,功耗低,響應(yīng)速度快,易于匹配,壽命長(zhǎng),可靠性
44、高,而且顯示亮度高,價(jià)格便宜,市場(chǎng)上也有專門的時(shí)鐘顯示組合led。故本設(shè)計(jì)中應(yīng)用7位8段共陰led實(shí)現(xiàn)顯示部分,顯示面板分布如圖3.6。led顯示分動(dòng)態(tài)顯示和靜態(tài)顯示:動(dòng)態(tài)顯示方式的硬件電路簡(jiǎn)單。但設(shè)計(jì)上如果處理不當(dāng),易造成亮度低,閃爍問題。因此合理的設(shè)計(jì)既應(yīng)保證驅(qū)動(dòng)電路易實(shí)現(xiàn),又要保證圖像穩(wěn)定,無閃爍。動(dòng)態(tài)顯示采用多路復(fù)用技術(shù)的動(dòng)態(tài)掃描顯示方式,復(fù)用的程度不是無限增加的, 因?yàn)槔脛?dòng)態(tài)掃描顯示使我們看到一幅穩(wěn)定畫面的實(shí)質(zhì)是利用了人眼的暫留效應(yīng)和發(fā)光二極管發(fā)光時(shí)間的長(zhǎng)短,發(fā)光的亮度等因素。靜態(tài)顯示,是由微型計(jì)算機(jī)一次輸出顯示模型后,就能保持該顯示結(jié)果,直到下次發(fā)送新的顯示模型為止。靜態(tài)顯示驅(qū)動(dòng)
45、程序簡(jiǎn)單,且cpu占用率低,但每個(gè)led數(shù)碼管需要一個(gè)鎖存器來鎖存每一個(gè)顯示位的筆段代碼,硬件開銷大,僅適合顯示位數(shù)較少的場(chǎng)合。為了在顯示部分節(jié)省單片機(jī)i/o口,故采用靜態(tài)顯示方式。電路圖參見圖3.10。74ls164是8位移位寄存器,應(yīng)用該芯片驅(qū)動(dòng)led做顯示部分,其優(yōu)點(diǎn)在于連線簡(jiǎn)單,節(jié)省單片機(jī)i/o口,軟件編程容易。關(guān)于74ls164的具體編程方法,請(qǐng)參見第四章4.2.5顯示子程序設(shè)計(jì)部分1415。圖3.10 顯示面板led分布圖 3.2.4 按鍵電路設(shè)計(jì)根據(jù)功能需要,本時(shí)鐘需要設(shè)置以下功能鍵:校對(duì)選擇鍵,加1操作鍵,減1操作鍵,顯示日期鍵,顯示溫度鍵,鬧鈴開關(guān)鍵。按照鍵盤與cpu的連接方
46、式可分為獨(dú)立式鍵盤和矩陣式鍵盤。獨(dú)立式鍵盤是各個(gè)按鍵相互獨(dú)立,每個(gè)按鍵占用一個(gè)i/o口線,每根i/o口線上的按鍵不會(huì)影響其他i/o口上按鍵工作狀態(tài)。獨(dú)立式鍵盤電路配置靈活,軟件結(jié)構(gòu)簡(jiǎn)單,但每個(gè)按鍵必須占用一根i/o口,在按鍵數(shù)量較多時(shí),i/o口線浪費(fèi)較大,且電路結(jié)構(gòu)復(fù)雜。矩陣式鍵盤適合按鍵較多時(shí)使用。由于本設(shè)計(jì)的電子鐘最多需要7個(gè)按鍵,若采用矩陣式鍵盤時(shí)會(huì)有按鍵浪費(fèi),故采用的是獨(dú)立式鍵盤。鍵盤電路如圖3.11。對(duì)于內(nèi)置了上拉電阻的i/o引腳來說,外接上拉電阻沒有意義1516。如圖3.11。圖3.11 鍵盤電路其中k1、k2、k7為帶自鎖按鍵,每次按下后,其對(duì)應(yīng)的p2.7、p2.6、p2.1管腳
47、接地,從高電平被拉至低電平。只有再次按下,按鍵彈出,與之連接的單片機(jī)管腳才會(huì)重新被拉回高電平。k3、k4、k5、k6鍵為自動(dòng)復(fù)位按鍵。每次按下后,會(huì)自動(dòng)彈出。單片機(jī)管腳只有在按鍵按下時(shí)為低電平,按鍵彈出后重新恢復(fù)高電平。按鍵功能參見表3.8。表3.8 按鍵功能表按鍵鍵名功能屬性k1calendar顯示日歷自鎖k2t顯示溫度自鎖k3fun功能選擇自動(dòng)復(fù)位k4up數(shù)值加一操作自動(dòng)復(fù)位k5down數(shù)值減一操作自動(dòng)復(fù)位k6enter/snooze確認(rèn)鍵/貪睡自動(dòng)復(fù)位k7alarm鬧鈴開關(guān)自鎖按鍵操作說明如下:k1鍵:該鍵為帶自鎖按鍵,在正常顯示時(shí)間狀態(tài)下,每次將按鍵按下, led數(shù)碼管將顯示日期;再次
48、按下,按鍵彈出,重新顯示時(shí)間。k2鍵:該鍵為帶自鎖按鍵,在正常顯示時(shí)間狀態(tài)下,每次將按鍵按下,led數(shù)碼管將顯示環(huán)境溫度;再次按下,按鍵彈出,重新顯示時(shí)間。k3鍵:該鍵為自動(dòng)復(fù)位鍵,在正常顯示時(shí)間狀態(tài)下,第一次按下后,開始校對(duì)小時(shí),以后每次按下都會(huì)分別進(jìn)入對(duì)分、秒、鬧鈴時(shí)、鬧鈴分、年、月、日的校對(duì)狀態(tài)。k4鍵:該鍵為自動(dòng)復(fù)位鍵,在校對(duì)狀態(tài)下,每次按動(dòng)該鍵,都會(huì)使相應(yīng)校對(duì)位進(jìn)行加1操作。例如:校對(duì)小時(shí)狀態(tài),每按一下,小時(shí)位加1,當(dāng)加至小時(shí)最高值23時(shí),再按k4鍵,小時(shí)位回0。調(diào)分、秒、年、月、日與皆之相同,只是各位最高值不同。k5鍵:該鍵為自動(dòng)復(fù)位鍵,與k4鍵類似,不同之處是該鍵每次按下將使相應(yīng)
49、校對(duì)位進(jìn)行減1操作。k6鍵:該鍵為自動(dòng)復(fù)位鍵,在校對(duì)狀態(tài)下,按下該鍵,從校對(duì)狀態(tài)返回時(shí)間顯示狀態(tài);在響鈴狀態(tài)下,按下該鍵,鬧鈴進(jìn)入貪睡狀態(tài)。k7鍵:該鍵為帶自鎖按鍵,按下后鬧鈴開啟,彈出后鬧鈴關(guān)閉。3.2.5 鬧鈴電路設(shè)計(jì)鬧鈴音樂可以直接采用蜂鳴器鬧鈴,如當(dāng)前時(shí)刻與鬧鈴時(shí)間相同,單片機(jī)向蜂鳴器送出高電平,蜂鳴器發(fā)聲。采用蜂鳴器鬧鈴結(jié)構(gòu)簡(jiǎn)單,控制方便,但是發(fā)出的鬧鈴聲音單一。也可以在編程的時(shí)候編寫一段音樂程序,待鬧鈴時(shí)間到時(shí),調(diào)用該音樂程序給揚(yáng)聲器,便響起音樂。不過該方法只能做一些簡(jiǎn)單音樂,并且音樂程序會(huì)占用很多單片機(jī)存儲(chǔ)資源。還有一種方法是采用錄音放音芯片1420做鬧鈴,先對(duì)錄放音設(shè)備錄入一段
50、音樂,當(dāng)?shù)皆O(shè)定時(shí)間時(shí),單片機(jī)控制錄放音設(shè)備放音。采用錄放音電路,鈴聲可以是預(yù)先設(shè)定的一段自己喜歡的音樂,符合電器設(shè)備人性化的要求。且1420芯片可以分段錄音,還具有語音報(bào)時(shí)功能。另外,也可以購置一塊音樂集成電路,加置在單片機(jī)和蜂鳴器之間,當(dāng)單片機(jī)連接鬧鈴電路的管腳送出高電平時(shí),音樂集成電路會(huì)給蜂鳴器特定脈沖,使蜂鳴器發(fā)聲。此類集成電路體積較小,使用方便,不足的是音樂簡(jiǎn)單、單一。鬧鈴的音樂不是本設(shè)計(jì)中的重點(diǎn),故采用最簡(jiǎn)單的方法,占用單片機(jī)一根i/o口p2.0, 中間用pnp型三極管s9012連接p2.0和蜂鳴器。當(dāng)p2.0引腳為低電平時(shí),s9012的發(fā)射極和集電極導(dǎo)通,使蜂鳴器發(fā)聲。當(dāng)響鈴標(biāo)志位
51、為“1”時(shí),p2.0送一定頻率脈沖,使蜂鳴器u11發(fā)出聲音16。如圖3.12。圖3.12 鬧鈴電路3.2.6 復(fù)位電路設(shè)計(jì)復(fù)位是單片機(jī)的初始化操作,以便使cpu和系統(tǒng)中其他部件都處于一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作。除了進(jìn)入系統(tǒng)的正常初始化之外,當(dāng)單片機(jī)系統(tǒng)在運(yùn)行出錯(cuò)或操作錯(cuò)誤使系統(tǒng)處于死鎖狀態(tài)時(shí),也可按復(fù)位鍵重新啟動(dòng)。復(fù)位后,pc內(nèi)容初始化為0000h,使單片機(jī)從0000h單元開始執(zhí)行程序。單片機(jī)復(fù)位后,除了pc之外,還對(duì)片內(nèi)的特殊功能寄存器有影響,它們的復(fù)位狀態(tài)如表3.9所示。單片機(jī)復(fù)位后不影響內(nèi)部ram的狀態(tài)17。89c51單片機(jī)復(fù)位信號(hào)的輸入端是rst引腳,高電平有效。其有效時(shí)
52、間持續(xù)24個(gè)時(shí)鐘周期(2個(gè)機(jī)器周期)以上。rst端的外部復(fù)位電路有兩種操作方式:上電自動(dòng)復(fù)位和按鍵手動(dòng)復(fù)位。上電自動(dòng)復(fù)位是利用電容儲(chǔ)電來實(shí)現(xiàn)的,如圖3.13(a)所示。上電瞬間,rc電路充電,rst端出現(xiàn)正脈沖,隨著充電電流的減少,rst的電位逐漸下降。按鍵手動(dòng)復(fù)位有電平方式和脈沖方式兩種。按鍵電平復(fù)位是相當(dāng)于rst端通過電阻接高電平,如圖3.13(b)所示;按鍵脈沖復(fù)位,利用rc微分電路產(chǎn)生正脈沖,如圖3.13(c)所示12。出于應(yīng)用方便,本設(shè)計(jì)采用按鍵電平復(fù)位電路。實(shí)際電路請(qǐng)參見附錄c,復(fù)位按鍵為k8。表3.9 單片機(jī)寄存器的復(fù)位狀態(tài)表寄存器復(fù)位狀態(tài)寄存器復(fù)位狀態(tài)pc0000htcon00
53、hacc00hth000hpsw00htl000hsp07hth100hdptr0000htl100hp1、p3ffhscon00hip000000bsbuf不定ie000000bpcon0b(nmos)tmod00h00000b(chmos)a、上電復(fù)位 b、按鍵電平復(fù)位 c、按鍵脈沖復(fù)位圖3.13 上電復(fù)位和按鍵復(fù)位電路第四章 電子時(shí)鐘軟件設(shè)計(jì)c51單片機(jī)可以應(yīng)用匯編語言和c語言進(jìn)行編程。,匯編語言與機(jī)器指令一一對(duì)應(yīng)所以用匯編語言編寫的程序在單片機(jī)里運(yùn)行起來效率較高。c語言程序可讀性高,更便于理解。本設(shè)計(jì)使用c語言編程。4.1 主程序設(shè)計(jì)第一次上電,系統(tǒng)先進(jìn)行初始化, led顯示初始時(shí)間“
54、14:28:00”,并開始走時(shí)。初始日期為2008年5月12日,此刻若按k1鍵,led顯示“080512”。單片機(jī)依次開始調(diào)用鍵盤掃描子程序、ds1302子程序、ds18b20子程序、鬧鈴子程序,經(jīng)過延時(shí),返回程序開頭循環(huán)運(yùn)行。主程序流程圖如圖4.1。圖4.1 多功能電子鐘主程序流程圖4.2 子程序設(shè)計(jì)4.2.1 實(shí)時(shí)時(shí)鐘日歷子程序設(shè)計(jì)該程序主要實(shí)現(xiàn)對(duì)ds1302寫保護(hù)、充電,對(duì)年、月、日、時(shí)、分、秒等寄存器的讀寫操作。在讀寫操作子程序中都執(zhí)行了關(guān)中斷指令,因?yàn)樵诖型ㄐ艜r(shí)對(duì)時(shí)序要求比較高,而且在此是用i/o口軟件模擬串行時(shí)鐘脈沖,所以在通信過程中最好保證傳輸?shù)倪B續(xù)性,不要允許中斷。其流程圖如
55、圖4.2。圖4.2 實(shí)時(shí)時(shí)鐘日歷子程序流程圖ds1302每次上電時(shí)自動(dòng)處于暫停狀態(tài),必須把秒寄存器的位7置位0,時(shí)鐘才開始計(jì)時(shí)。如果ds1302一直沒有掉電,則不存在此問題。在進(jìn)行寫操作時(shí),需要先解除寫保護(hù)寄存器的“禁止”狀態(tài)。當(dāng)用多字節(jié)模式進(jìn)行操作時(shí),必須寫夠8字節(jié)18。4.2.2 環(huán)境溫度采集子程序設(shè)計(jì)ds18b20是一種單線器件,它在一根數(shù)據(jù)線上實(shí)現(xiàn)數(shù)據(jù)的雙向傳輸,這就需要一定的協(xié)議來對(duì)讀寫數(shù)據(jù)提出嚴(yán)格的時(shí)序要求,而at89c51單片機(jī)并不支持單線傳輸。因此,必須采用軟件的方法來模擬單線的協(xié)議時(shí)序。主機(jī)操作單線器件ds18b20必須遵循下面的順序。1. 初始化單線總線上的所有操作均從初始化開始。初始化過程如下:主機(jī)通過拉低單線480s以上,產(chǎn)生復(fù)位脈
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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年五年級(jí)期中班主任工作總結(jié)(二篇)
- 液態(tài)化學(xué)品配送協(xié)議書
- 北京市XX場(chǎng)景裝修合同
- 保健食品傭金居間合同模板
- 博物館裝修增項(xiàng)協(xié)議
- 創(chuàng)意設(shè)計(jì)居間工程合同
- 創(chuàng)意園大廈裝修合同樣本
- 梁柱核心區(qū)施工方案
- 八年級(jí)上寒假數(shù)學(xué)試卷
- 蚌埠今日中考數(shù)學(xué)試卷
- 王崧舟:學(xué)習(xí)任務(wù)群與課堂教學(xué)變革 2022版新課程標(biāo)準(zhǔn)解讀解析資料 57
- 招投標(biāo)現(xiàn)場(chǎng)項(xiàng)目經(jīng)理答辯(完整版)資料
- 運(yùn)動(dòng)競(jìng)賽學(xué)課件
- 重大事故隱患整改臺(tái)賬
- 2022年上海市初中畢業(yè)數(shù)學(xué)課程終結(jié)性評(píng)價(jià)指南
- DB15T 2058-2021 分梳綿羊毛標(biāo)準(zhǔn)
- 高考作文備考-議論文對(duì)比論證 課件14張
- 新華師大版七年級(jí)下冊(cè)初中數(shù)學(xué) 7.4 實(shí)踐與探索課時(shí)練(課后作業(yè)設(shè)計(jì))
- 山東省萊陽市望嵐口礦區(qū)頁巖礦
- 《普通生物學(xué)教案》word版
- 安全生產(chǎn)應(yīng)知應(yīng)會(huì)培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論