基于51單片機(jī)電子溫度計臺歷畢業(yè)設(shè)計_第1頁
基于51單片機(jī)電子溫度計臺歷畢業(yè)設(shè)計_第2頁
基于51單片機(jī)電子溫度計臺歷畢業(yè)設(shè)計_第3頁
基于51單片機(jī)電子溫度計臺歷畢業(yè)設(shè)計_第4頁
基于51單片機(jī)電子溫度計臺歷畢業(yè)設(shè)計_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、電子溫度計臺歷論文國 家 示 范 性 高 等 職 業(yè) 院 校電子溫度計臺歷姓名: 吳保林 年級: 2010 專業(yè): 電子信息工程技術(shù)電話:e-mail: wlr5678 志當(dāng)高 學(xué)當(dāng)勤 能必強(qiáng) 技必精xxxx學(xué)院畢業(yè)設(shè)計(論文)任 務(wù) 書 電子信息工程 系(部) 電子信息工程技術(shù) 專業(yè) 2010電子信息工程技術(shù)班 學(xué)生 xxx 學(xué)號 xxxxxxxxxx 一、畢業(yè)設(shè)計(論文)題目: 電子溫度計臺歷 二、畢業(yè)設(shè)計(論文)工作規(guī)定進(jìn)行的日期:2012年11月1日起至2013年5月20 日 止 三、畢業(yè)設(shè)計(論文)進(jìn)行地點(diǎn): 四、任務(wù)書的內(nèi)容:設(shè)計目的:電子臺歷是一種用數(shù)字

2、電路技術(shù)實現(xiàn)時、分、秒計時的裝置,與機(jī)械式時鐘相比具有更高的準(zhǔn)確性和直觀性,且無機(jī)械裝置,具有更更長的使用壽命,節(jié)省了電能。因此得到了廣泛的使用。數(shù)字鐘是一種典型的數(shù)字電路,包括了組合邏輯電路和時序電路。通過設(shè)計加深對數(shù)字電子技術(shù)的認(rèn)識。 我們此次設(shè)計電子臺歷是為了了解時鐘芯片ds1302和12864液晶的原理,加深對我們所學(xué)知識的了解和認(rèn)識、以及知識遷移的能力。而且通過數(shù)字鐘的制作進(jìn)一步的了解各種在制作中用到的中小規(guī)模集成電路的作用及實用方法。且由于數(shù)字鐘包括組合邏輯電路和時序電路,通過它可以進(jìn)一步學(xué)習(xí)與掌握各種組合邏輯電路與時序電路的原理與使用方法,以及各種電路之間是怎樣聯(lián)系起來的。設(shè)計任

3、務(wù): 1 設(shè)計指標(biāo)1.時間以24小時為一個周期;2.顯示時、分、秒;3.具有校時功能,可以分別對時及分進(jìn)行單獨(dú)校時,使其校正到標(biāo)準(zhǔn)時間;4.計時過程具有報時功能,當(dāng)時間到達(dá)整點(diǎn)進(jìn)行蜂鳴報時;5.為了保證計時的穩(wěn)定及準(zhǔn)確須由晶體振蕩器提供表針時間基準(zhǔn)信號。設(shè)計要求(1)顯示室內(nèi)溫度,精度 0.5 度; (2) 顯示實時時鐘,可以對年、月、日、周、日、時、分、秒進(jìn)行計時,且具有閏年補(bǔ)償功能,可調(diào)整時間、日期; (3) 設(shè)置鬧鐘三個以上;(4)具有溫度報警功能;說明: 1.顯示屏采用126*64規(guī)格 2.時間和日期的顯示格式可自定義工作日程安排:2012.11.15-2012.12.20查找相關(guān)書籍

4、、參考文獻(xiàn),了解設(shè)計原理。2012.12.21-2012.12.30 進(jìn)行模擬仿真2013.01.01-2013.01.15編寫程序,實現(xiàn)功能.2013.01.26-2013.05.10 寫論文,上交設(shè)計作品設(shè)計(論文)要求: 要求提供以下設(shè)計資料,匯報設(shè)計與制作的全過程,附上有關(guān)資料和圖紙,有設(shè)計心得體會并裝訂成冊:1.摘要(所做的設(shè)計如有特別之處,一定要挑明);2. 原理框圖3. 元器件明細(xì)表及參數(shù)選擇4. 各功能塊電路圖5. pcb文件生成與打印輸出6. 操作原理簡要說明7.調(diào)試的結(jié)果是否滿足設(shè)計要求學(xué)生開始執(zhí)行任務(wù)書日期 200 年 月 日 指導(dǎo)教師簽名: 年 月 日學(xué)生送交畢業(yè)設(shè)計(

5、論文)日期: 200 年 月 日 教研室主任簽名: 年 月 日學(xué)生簽名: 年 月 日目錄1 緒論71.1 電子臺歷的背景71.2電子臺歷的意義81.3電子臺歷的應(yīng)用82 整體設(shè)計方案選擇82.1 555定時器方案82.2 單片機(jī)方案83 數(shù)字鐘的硬件設(shè)計83.1 最小系統(tǒng)設(shè)計83.1.2 數(shù)據(jù)存儲器(ram)83.1.3 程序存儲器(rom):83.1.4 定時/計數(shù)器(rom):83.1.5 并行輸入輸出(i/o)口:83.1.6 全雙工串行口:83.1.7 中斷系統(tǒng):83.1.8 時鐘電路:83.2 顯示器83.2.1 液晶顯示模塊概述83.2.2 外形尺寸83.2.3 模塊引腳說明83.

6、3 時鐘芯片130283.3.1 ds1302時鐘芯片簡介83.3.3 ds1302的工作原理83.3.4 ds1302的寄存器和控制命令83.3.5 ds1302內(nèi)部寄存器列表83.4 ds18b20測溫系統(tǒng)83.4.1 ds18b20簡介83.4.2 ds18b20的內(nèi)部結(jié)構(gòu)及工作原理83.5 鍵盤控制電路83.6供電系統(tǒng)83.7語音報時系統(tǒng)83.8紅外遙控設(shè)計84數(shù)字鐘的軟件設(shè)計84.1 系統(tǒng)軟件設(shè)計流程圖84.1.1主函數(shù)程序 流程圖和效果圖84.1.2主函數(shù)程序 編寫:84.2 12864led顯示函數(shù)84.2.1顯示函數(shù)程序 流程圖84.2.2顯示函數(shù)程序 編寫:84.3 ds13

7、02函數(shù)84.3.1 ds1302程序 流程圖84.4 ds18b20溫度采集84.4.1 ds18b20溫度采集 流程圖84.4.3 ds18b20函數(shù)編寫84.5.2.1 時間設(shè)置菜單顯示84.5.2.2 時間設(shè)置菜單顯示 函數(shù)編寫:84.5.3.1時間設(shè)置菜單顯示84.5.3.2 鬧鐘設(shè)置菜單顯示 函數(shù)編寫:84.5.3.1 紅外遙控84.5.3.2 紅外遙控 函數(shù)編寫:8致 謝8附 錄8電子溫度計臺歷吳保林(柳州職業(yè)技術(shù)學(xué)院電子信息工程系)摘要 隨著科技的快速發(fā)展,時間的流逝,至從觀太陽、擺鐘到現(xiàn)在電子鐘,人類不斷研究,不斷創(chuàng)新紀(jì)錄。美國dallas公司推出的具有涓細(xì)電流充電能的低功耗

8、實時時鐘電路ds1302。它可以對年、月、日、周日、時、分、秒進(jìn)行計時,還具有閏年補(bǔ)償?shù)榷喾N功能,而且ds1302的使用壽命長,誤差小。對于數(shù)字電子萬年歷采用直觀的數(shù)字顯示,可以同時顯示年、月、日、周日、時、分、秒和溫度等信息,還具有時間校準(zhǔn)等功能。該電路采用at89s52單片機(jī)作為核心,功耗小,能在3v的低壓工作,電壓可選用35v電壓供電。 綜上所述此萬年歷具有讀取方便、顯示直觀、功能多樣、電路簡潔、成本低廉等諸多優(yōu)點(diǎn),符合電子儀器儀表的發(fā)展趨勢,具有廣闊的市場前景。關(guān)鍵詞:時鐘電鐘 ds1302 ds18b20 動態(tài)掃描 1 緒論1.1 電子臺歷的背景 作為中國一種傳統(tǒng)的東西,掛歷在人們心

9、中一直有著特殊的含義。因為掛歷除了有查閱日期、方便記事等功能外,還是一種頗有文化品位的裝飾物。而對于一些公司、企業(yè),在掛歷上印刷一些自己的產(chǎn)品、服務(wù)內(nèi)容、聯(lián)系電話等,無疑也是一種宣傳,也正是因為如此,掛歷長期以來一直受到人們的青睞。什么銅版紙、塑膜掛歷、典雅的宣紙、絹絲、油畫布掛歷和富麗堂皇的金箔畫、鐳射畫掛歷等層出不窮。而今,隨著時代發(fā)展,掛歷大有美人遲暮之感。據(jù)調(diào)查發(fā)現(xiàn)90%的家庭表示今年將不會去買掛歷;其中50%的市民家庭的掛歷是單位發(fā)或他人送;但這50%的市民表示,如果單位不發(fā)、他人不送,自己不會主動去買。那么是什么讓本設(shè)計的傳統(tǒng)如此疲軟呢?眾所周知,傳統(tǒng)掛歷最大的功能是查看日期,裝飾

10、其次,作為禮品則是最后。近些年隨著生活水平的提高,人們獲知日期的途徑已越來越多。據(jù)中國社會調(diào)查事務(wù)所(ssic)在北京、上海等地對265位居民進(jìn)行的計算機(jī)輔助電話調(diào)查顯示(此項調(diào)查為多選題):有68%的被訪者看日歷,有62%的被訪者看臺歷(其中有21%的被訪者使用的是電子臺歷);有58%的被訪者看呼機(jī);有27%的被訪者看手機(jī);有20%的被訪者看手表;有14%的被訪者看街上的顯示牌;有33%的被訪者看電視;有60%的被訪者看報紙;有16%的被訪者聽廣播;有42%的被訪者上網(wǎng);有12%的被訪者向別人打聽。由此表明,掛歷實用功能的弱化直接導(dǎo)致了掛歷市場的”疲軟”。 那么,曾經(jīng)被認(rèn)同的裝飾功能呢?回答

11、也是否定的。很多人已經(jīng)明確表示,明年不掛掛歷。因為消費(fèi)者認(rèn)為花很大力氣裝修的房子,有誰愿意在墻上打個眼兒掛掛歷呢?影響美觀不說,還很俗氣。至于禮品功能,大多數(shù)消費(fèi)者都認(rèn)為現(xiàn)在用掛歷當(dāng)禮品有點(diǎn)不夠檔次1.2電子臺歷的意義隨著電子科技的不斷發(fā)展,傳統(tǒng)的掛歷已被一些高檔的電子臺歷所取代,與傳統(tǒng)的掛歷相比,電子臺歷融合了掛歷和時鐘的優(yōu)點(diǎn),能晝夜清晰顯示,集年、月、日、時、分、秒、日期、農(nóng)歷、氣溫于一體,外觀新穎,造型別具一格。除此之外由于掛歷制作成本相對較高,掛歷的銷售價格也大多在1530元之間,而一個電子臺歷的價格也在這之間,但是掛歷只能用一年,而電子臺歷則不一樣,由于它可以自動識別閏年、公歷、農(nóng)歷

12、、大小月份、農(nóng)歷,星期能自動對應(yīng)公歷無須調(diào)整。對若干年前后的日期都可以查詢,但考慮到其壽命原因,至少也可用58年。在價格相差不大的情況下,電子臺歷的性價比顯然要高的多,就其閱讀功能而言,電子臺歷閱讀起來更加方便,同時他還有鬧鈴和顯示溫度的功能,這比傳統(tǒng)的掛歷要強(qiáng)大的多。其實現(xiàn)的方法也很簡單,用一個單片機(jī)和lcd液晶顯示器就可以實現(xiàn),由此可見,電子臺歷的市場經(jīng)濟(jì)開發(fā)價值要比掛歷要高的多,電子臺歷取代傳統(tǒng)的掛歷已成為不可抵擋的趨勢。1.3電子臺歷的應(yīng)用 數(shù)字鐘已成為人們?nèi)粘I钪校罕夭豢缮俚谋匦杵罚瑥V泛用于個人家庭以及車站、碼頭、劇場、辦公室等公共場所,給人們的生活、學(xué)習(xí)、工作、娛樂帶來極大的方便

13、。由于數(shù)字集成電路技術(shù)的發(fā)展和采用了先進(jìn)的石英技術(shù),使數(shù)字鐘具有走時準(zhǔn)確、性能穩(wěn)定、攜帶方便等優(yōu)點(diǎn),它還用于計時、自動報時及自動控制等各個領(lǐng)域。 2 整體設(shè)計方案選擇2.1 555定時器方案 555定時器是一種模擬和數(shù)字功能相結(jié)合的中規(guī)模集成器件。一般用雙極型工藝制作的稱為 555,用 cmos 工藝制作的稱為 7555,除單定時器外,還有對應(yīng)的雙定時器 556/7556。555 定時器的電源電壓范圍寬,可在 4.5v16v 工作,7555 可在 318v 工作,輸出驅(qū)動電流約為 200ma,因而其輸出可與 ttl、cmos 或者模擬電路電平兼容。采用555定時器來輸入脈沖,先通過74ls90

14、進(jìn)行十進(jìn)制計數(shù)(時鐘的秒數(shù)個位),達(dá)到進(jìn)位時將進(jìn)位送入74ls92進(jìn)行六進(jìn)制計數(shù)(時鐘的秒數(shù)十位),進(jìn)位送入74ls90進(jìn)行十進(jìn)制計數(shù)(時鐘的分位);由74ls47譯碼后送給數(shù)碼管進(jìn)行顯示。數(shù)字時鐘結(jié)構(gòu)框圖如圖圖2-1數(shù)字時鐘的原理框圖用555定時器構(gòu)成多諧振蕩器,輸出穩(wěn)定的調(diào)頻脈沖,作為時間基準(zhǔn)。振蕩器是計時器的核心,其作用是產(chǎn)生一個標(biāo)準(zhǔn)頻率的脈沖信號。振蕩頻率的精度和穩(wěn)定度決定了數(shù)字鐘的質(zhì)量。圖采用集成電路555定時器與rc組成t=1ms的多諧振蕩器。輸出的脈沖頻率為f=1khz。555振蕩器電路圖圖2-2 555振蕩器電路74ls90是異步二五十進(jìn)制加法計數(shù)器,它既可以作二進(jìn)制加法計數(shù)器

15、,又可以作五進(jìn)制和十進(jìn)制加法計數(shù)器。74ls90的功能如表2.3所示。通過不同的連接方式,74ls90 可以實現(xiàn)四種不同的邏輯功能;而且可借助 r0(1)、r0(2)對計數(shù)器清零,借助 s9(1)、s9(2)將計數(shù)器置 9。其功能詳述如下:(1) 計數(shù)脈沖從 cp1 輸入,qa 作為輸出端,為二進(jìn)制計數(shù)器。(2) 計數(shù)脈沖從 cp2 輸入,qdqcqb 作為輸出端,為異步五進(jìn)制加法計數(shù)器。(3) 若將 cp2 和 qa 相連,計數(shù)脈沖由 cp1 輸入,qd、qc、qb、qa 作為輸出端,則構(gòu)成異步 8421 碼十進(jìn)制加法計數(shù)器。(4) 若將 cp1 與 qd 相連,計數(shù)脈沖由 cp2 輸入,q

16、a、qd、qc、qb 作為輸出端,則構(gòu)成異步 5421 碼十進(jìn)制加法計數(shù)器。(5) 清零、置 9 功能。74ls92(6進(jìn)制計數(shù)器)表1 74ls92的真值表countoutputq0q1q2q30llll1hlll2lhll3hhll4llhl5hlhl6lllh7hllh8lhlh9hhlh10llhh11hlhh譯碼器74ls4774ls47是bcd-7段數(shù)碼管譯碼器/驅(qū)動器,74ls47的功能用于將bcd碼轉(zhuǎn)化成數(shù)碼塊中的數(shù)字,通過它解碼,可以直接把數(shù)字轉(zhuǎn)換為數(shù)碼管的顯示數(shù)字,從而簡化了程序,節(jié)約了單片機(jī)的io開銷。譯碼為編碼的逆過程。它將編碼時賦予代碼的含義“翻譯”過來。實現(xiàn)譯碼的邏

17、輯電路成為譯碼器。譯碼器輸出與輸入代碼有唯一的對應(yīng)關(guān)系。74ls47是輸出低電平有效的七段字形譯碼器。與數(shù)碼管配合使用。價格貴2.2 單片機(jī)方案單片機(jī)(常用英文字母的縮寫mcu表示)是微型機(jī)的一個主要分支,它在結(jié)構(gòu)上的最大特點(diǎn)使把cpu、存儲器、定時器和多種輸入/輸出接口電路集成在一塊超大規(guī)模集成電路芯片上。就其組成和功能而言,一塊單片機(jī)芯片就是一臺計算機(jī)。單片機(jī)具有如下特點(diǎn):有優(yōu)異的性能價格比;1 集成度高、體積小、有很高的可靠性;2 控制功能強(qiáng);3 低功耗、低電壓,便于生產(chǎn)便攜式產(chǎn)品;4 外部總線增加了i2c、spi等串行總線方式,進(jìn)一步縮小了體積,簡化了結(jié)構(gòu);5 單片機(jī)的系統(tǒng)擴(kuò)展、系統(tǒng)配

18、置較典型、規(guī)范,容易構(gòu)成各種規(guī)模的應(yīng)用系統(tǒng)。目前單片機(jī)滲透到我們生活的各個領(lǐng)域,幾乎很難找到哪個領(lǐng)域沒有單片機(jī)的蹤跡。導(dǎo)彈的導(dǎo)航裝置,飛機(jī)上各種儀表的控制,計算機(jī)的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸,工業(yè)自動化過程的實時控制和數(shù)據(jù)處理,廣泛使用的各種智能ic卡,民用豪華轎車的安全保障系統(tǒng),錄像機(jī)、攝像機(jī)、全自動洗衣機(jī)的控制,以及程控玩具、電子寵物等等,這些都離不開單片機(jī)。更不用說自動控制領(lǐng)域的機(jī)器人、智能儀表、醫(yī)療器械了。因此,單片機(jī)的學(xué)習(xí)、開發(fā)與應(yīng)用將造就一批計算機(jī)應(yīng)用與智能化控制的科學(xué)家、工程師。單片機(jī)廣泛應(yīng)于儀器儀表、家用電器、醫(yī)用設(shè)備、航空航天、專用設(shè)備的智能化管理及過程控制等領(lǐng)域傳統(tǒng)。利用單片機(jī)的智

19、能性,可方便地實現(xiàn)具有智能的電子鐘設(shè)計。單片機(jī)均具有時鐘振蕩系統(tǒng),利用系統(tǒng)時鐘借助微處理器的定時器/計數(shù)器可實現(xiàn)電子鐘功能。然而系統(tǒng)時鐘誤差較大,電子鐘的積累誤差也可能較大,所以可以通過誤差修正軟件加以修正,或者在設(shè)計中加入高精度時鐘日歷芯片,以精確時間。另外很多功能不同的單片機(jī)是兼容的,這就更便于實現(xiàn)產(chǎn)品的多功能性。單片機(jī)方案設(shè)計框圖:圖2-4單片機(jī)方案設(shè)計框圖2.2.1 芯片選擇1.ds1302ds1302 是美國dallas公司推出的一種高性能、低功耗、帶ram的實時時鐘電路,它可以對年、月、日、周日、時、分、秒進(jìn)行計時,具有閏年補(bǔ)償功能,工作電壓為2.5v5.5v。采用三線接口與cpu

20、進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個字節(jié)的時鐘信號或ram數(shù)據(jù)。ds1302內(nèi)部有一個318的用于臨時性存放數(shù)據(jù)的ram寄存器。ds1302是ds1202的升級產(chǎn)品,與ds1202兼容,但增加了主電源/后備電源雙電源引腳,同時提供了對后備電源進(jìn)行涓細(xì)電流充電的能力。使用時鐘芯片ds1302。它是一種高性能、低功耗、帶ram的實時時鐘電路,它可以對年、月、日、周日、時、分、秒進(jìn)行計時,具有閏年補(bǔ)償功能。2.使用液晶(12864)進(jìn)行顯示。md12864c-1漢字圖形點(diǎn)陣液晶顯示模塊,可顯示漢字及圖形,內(nèi)置8192個中文漢字(16x16點(diǎn)陣)、128個字符(8x16點(diǎn)陣)及64x256點(diǎn)陣顯

21、示ram(gdram)。主要技術(shù)參數(shù)和顯示特性:電源:vdd 3.3v+5v(內(nèi)置升壓電路,無需負(fù)壓);顯示內(nèi)容:128列 64行顯示顏色:灰膜顯示角度:6:00鐘直視lcd類型:stn與mcu接口:8位或4位并行/3位串行配置led背光多種軟件功能:光標(biāo)顯示、畫面移位、自定義字符、睡眠模式等3.使用18b20測溫ds18b20是美國dallas半導(dǎo)體公司繼ds1820之后最新推出的一種數(shù)字化單總線器件。屬于新一代適配微處理器的改進(jìn)型智能溫度傳感器。與傳統(tǒng)的熱敏電阻相比,它能夠直接讀出被測溫度,并且可根據(jù)實際要求通過簡單的編程實現(xiàn)912位的數(shù)字值讀數(shù)方式。ds18b20的性能特點(diǎn)如下:(1)

22、采用dallas公司獨(dú)特的單線接口方式:ds18b20與微處理器連接時僅需要一條口線即可實現(xiàn)微處理器與ds18b20的雙向通訊; (2)在使用中不需要任何外圍元件;(3)可用數(shù)據(jù)線供電,供電電壓范圍:+3.0v+5.5v;(4)測溫范圍:-55+125。固有測溫分辨率為0.5。當(dāng)在-10+85范圍內(nèi),可確保測量誤差不超過0.5,在-55+125范圍內(nèi),測量誤差也不超過2;(5)通過編程可實現(xiàn)912位的數(shù)字讀數(shù)方式;(6)用戶可自設(shè)定非易失性的報警上下限值;(7)支持多點(diǎn)的組網(wǎng)功能,多個ds18b20可以并聯(lián)在唯一的三線上,實現(xiàn)多點(diǎn)測溫(8)負(fù)壓特性,即具有電源反接保護(hù)電路。當(dāng)電源電壓的極性反接

23、時,能保護(hù)ds18b20不會因發(fā)熱而燒毀,但此時芯片無法正常工作;(9)ds18b20的轉(zhuǎn)換速率比較高,進(jìn)行9位的溫度值轉(zhuǎn)換只需93.75ms;(10)適配各種單片機(jī)或系統(tǒng);(11)內(nèi)含64位激光修正的只讀存儲rom,扣除8位產(chǎn)品系列號和8位循環(huán)冗余校驗碼(crc)之后,產(chǎn)品序號占48位。出廠前產(chǎn)品序號存入其rom中。在構(gòu)成大型溫控系統(tǒng)時,允許在單線總線上掛接多片ds18b206。4.單片機(jī)目前在單片機(jī)系統(tǒng)中,應(yīng)用比較廣泛的微處理器芯片主要為8xc5x系列單片機(jī)。該系列單片機(jī)均采用標(biāo)準(zhǔn)mcs-51內(nèi)核,硬件資源相互兼容,品類齊全,功能完善,性能穩(wěn)定,體積小,價格低廉,貨源充足,調(diào)試和編程方便,

24、所以應(yīng)用極為廣泛。at89s52單片機(jī)是一款低功耗,低電壓,高性能cmos 8位單片機(jī),片內(nèi)含8kb(可經(jīng)受1000次擦寫周期)的flash可編程可反復(fù)擦寫的只讀程序存儲器(eprom),器件采用cmos工藝和atmei公司的高密度、非易失性存儲器(nuram)技術(shù)制造,其輸出引腳和指令系統(tǒng)都與mcs-51兼容。片內(nèi)的flash存儲器允許在系統(tǒng)內(nèi)可改編程序或用常規(guī)的非易失性存儲器編程器來編程。因此,at89s52是一種功能強(qiáng),靈活性高且價格合理的單片機(jī),可方便的應(yīng)用在各個控制領(lǐng)域。at89s52具有以下主要性能:1. 8kb可改編程序flash存儲器;2. 全靜態(tài)工作:024hz;3. 256

25、8字節(jié)內(nèi)部ram;4. 32個外部雙向輸入/輸出(i/o)口;5. 8個中斷優(yōu)先級; 3個16位可編程定時計數(shù)器;6. 可編程串行通道;7. 片內(nèi)時鐘振蕩器。此外,at89s52是用靜態(tài)邏輯來設(shè)計的,其工作頻率可下降到0hz,并提供兩種可用軟件來選擇的省電方式空閑方式(idle mode)和掉電方式(power down mode)。在空閑方式中,cpu停止工作,而ram、定時器/計數(shù)器、串行口和中斷系統(tǒng)都繼續(xù)工作。在掉電方式中,片內(nèi)振蕩器停止工作,由于時鐘被“凍結(jié)”,使一切功能都暫停,只保存片內(nèi)ram中的內(nèi)容,直到下一次硬件復(fù)位為止。語音報時方案語音芯片是特定的固定標(biāo)準(zhǔn)模塊,可以通過單片機(jī)最

26、少一個io口控制多達(dá)32段聲音任意調(diào)用和組合的語音標(biāo)準(zhǔn)芯片。通常最常用的控制方式是采用了模擬串行的控制方式(3個io)。如需要播放第幾個地址的內(nèi)容就發(fā)送幾個脈沖,可以快速的控制多達(dá)32段地址的任意組合。3 數(shù)字鐘的硬件設(shè)計3.1 最小系統(tǒng)設(shè)計 單片機(jī)的最小系統(tǒng)是由電源、復(fù)位、晶振、/ea=1組成。圖3-1最小系統(tǒng)設(shè)計3.1.1 中央處理器:中央處理器(cpu)是整個單片機(jī)的核心部件,是8位數(shù)據(jù)寬度的處理器,能處理8位二進(jìn)制數(shù)據(jù)或代碼,cpu負(fù)責(zé)控制、指揮和調(diào)度整個單元系統(tǒng)協(xié)調(diào)的工作,完成運(yùn)算和控制輸入輸出功能等操作。3.1.2 數(shù)據(jù)存儲器(ram)8052內(nèi)部有128個8位用戶數(shù)據(jù)存儲單元和1

27、28個專用寄存器單元,它們是統(tǒng)一編址的,專用寄存器只能用于存放控制指令數(shù)據(jù),用戶只能訪問,而不能用于存放用戶數(shù)據(jù),所以,用戶能使用的ram只有128個,可存放讀寫的數(shù)據(jù),運(yùn)算的中間結(jié)果或用戶定義的字型表。 圖3-2 單片機(jī)8052的內(nèi)部結(jié)構(gòu)3.1.3 程序存儲器(rom):8052共有4096個8位掩膜rom,用于存放用戶程序,原始數(shù)據(jù)或表格。3.1.4 定時/計數(shù)器(rom):8052有兩個16位的可編程定時/計數(shù)器,以實現(xiàn)定時或計數(shù)產(chǎn)生中斷用于控制程序轉(zhuǎn)向。3.1.5 并行輸入輸出(i/o)口:8052共有4組8位i/o口(p0、 p1、p2或p3),用于對外部數(shù)據(jù)的傳輸。3.1.6 全雙

28、工串行口:8052內(nèi)置一個全雙工串行通信口,用于與其它設(shè)備間的串行數(shù)據(jù)傳送,該串行口既可以用作異步通信收發(fā)器,也可以當(dāng)同步移位器使用。3.1.7 中斷系統(tǒng):8052具備較完善的中斷功能,有兩個外中斷、兩個定時/計數(shù)器中斷和一個串行中斷,可滿足不同的控制要求,并具有2級的優(yōu)先級別選擇。3.1.8 時鐘電路:8052內(nèi)置最高頻率達(dá)12mhz的時鐘電路,用于產(chǎn)生整個單片機(jī)運(yùn)行的脈沖時序,但8052單片機(jī)需外置振蕩電容。單片機(jī)的結(jié)構(gòu)有兩種類型,一種是程序存儲器和數(shù)據(jù)存儲器分開的形式,即哈佛(harvard)結(jié)構(gòu),另一種是采用通用計算機(jī)廣泛使用的程序存儲器與數(shù)據(jù)存儲器合二為一。8052的復(fù)位方式可以是自

29、動復(fù)位,也可以是手動復(fù)位,見下圖4。此外,reset/vpd還是一復(fù)用腳,vcc掉電其間,此腳可接上備用電源,以保證單片機(jī)內(nèi)部ram的數(shù)據(jù)不丟失圖3-3 上電自動和手動復(fù)位電路圖圖 3-4 內(nèi)部和外部時鐘方式圖pin30:ale/當(dāng)訪問外部程序器時,ale(地址鎖存)的輸出用于鎖存地址的低位字節(jié)。而訪問內(nèi)部程序存儲器時,ale端將有一個1/6時鐘頻率的正脈沖信號,這個信號可以用于識別單片機(jī)是否工作,也可以當(dāng)作一個時鐘向外輸出。更有一個特點(diǎn),當(dāng)訪問外部程序存儲器,ale會跳過一個脈沖。 如果單片機(jī)是eprom,在編程其間,將用于輸入編程脈沖。pin29:當(dāng)訪問外部程序存儲器時,此腳輸出負(fù)脈沖選通

30、信號,pc的16位地址數(shù)據(jù)將出現(xiàn)在p0和p2口上,外部程序存儲器則把指令數(shù)據(jù)放到p0口上,由cpu讀入并執(zhí)行。3.2 顯示器3.2.1 液晶顯示模塊概述md12864c-1漢字圖形點(diǎn)陣液晶顯示模塊,可顯示漢字及圖形,內(nèi)置8192個中文漢字(16x16點(diǎn)陣)、128個字符(8x16點(diǎn)陣)及64x256點(diǎn)陣顯示ram(gdram)。主要技術(shù)參數(shù)和顯示特性:電源:vdd 3.3v+5v(內(nèi)置升壓電路,無需負(fù)壓);顯示內(nèi)容:128列 64行顯示顏色:灰膜顯示角度:6:00鐘直視lcd類型:stn與mcu接口:8位或4位并行/3位串行配置led背光多種軟件功能:光標(biāo)顯示、畫面移位、自定義字符、睡眠模式等

31、3.2.2 外形尺寸外觀尺寸:937012.5mm 視域尺寸:7339mm3.2.3 模塊引腳說明表 2模塊引腳說明3.3 時鐘芯片13023.3.1 ds1302時鐘芯片簡介ds1302 是美國dallas公司推出的一種高性能、低功耗、帶ram的實時時鐘電路,它可以對年、月、日、周日、時、分、秒進(jìn)行計時,具有閏年補(bǔ)償功能,工作電壓為2.5v5.5v。采用三線接口與cpu進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個字節(jié)的時鐘信號或ram數(shù)據(jù)。ds1302內(nèi)部有一個318的用于臨時性存放數(shù)據(jù)的ram寄存器。ds1302是ds1202的升級產(chǎn)品,與ds1202兼容,但增加了主電源/后備電源雙電源引腳

32、,同時提供了對后備電源進(jìn)行涓細(xì)電流充電的能力。3.3.2結(jié)構(gòu) ds1302的引腳排列,其中vcc1為后備電源,vcc2為主電源。在主電源關(guān)閉的情況下,也能保持時鐘的連續(xù)運(yùn)行。ds1302由vcc1或vcc2兩者中的較大者供電。當(dāng)vcc2大于vcc1+0.2v時,vcc2給ds1302供電。當(dāng)vcc2小于vcc1時,ds1302由vcc1供電。x1和x2是振蕩源,外接32.768khz晶振。rst是復(fù)位/片選線,通過把rst輸入驅(qū)動置高電平來啟動所有的數(shù)據(jù)傳送。rst輸入有兩種功能:首先,rst接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,rst提供終止單字節(jié)或多字節(jié)數(shù)據(jù)傳送的方法。當(dāng)r

33、st為高電平時,所有的數(shù)據(jù)傳送被初始化,允許對ds1302進(jìn)行操作。如果在傳送過程中rst置為低電平,則會終止此次數(shù)據(jù)傳送,i/o引腳變?yōu)楦咦钁B(tài)。上電運(yùn)行時,在vcc2.0v之前,rst必須保持低電平。只有在sclk為低電平時,才能將rst置為高電平。i/o為串行數(shù)據(jù)輸入輸出端(雙向),后面有詳細(xì)說明。sclk為時鐘輸入端。 3.3.3 ds1302的工作原理ds1302工作時為了對任何數(shù)據(jù)傳送進(jìn)行初始化,需要將復(fù)位腳(rst)置為高電平且將8位地址和命令信息裝入移位寄存器。數(shù)據(jù)在時鐘(sclk)的上升沿串行輸入,前8位指定訪問地址,命令字裝入移位寄存器后,在之后的時鐘周期,讀操作時輸出數(shù)據(jù),

34、寫操作時輸出數(shù)據(jù)。時鐘脈沖的個數(shù)在單字節(jié)方式下為8+8(8位地址+8位數(shù)據(jù)),在多字節(jié)方式下為8加最多可達(dá)248的數(shù)據(jù)。3.3.4 ds1302的寄存器和控制命令 對ds1302的操作就是對其內(nèi)部寄存器的操作,ds1302內(nèi)部共有12個寄存器,其中有7個寄存器與日歷、時鐘相關(guān),存放的數(shù)據(jù)位為bcd碼形式。此外,ds1302還有年份寄存器、控制寄存器、充電寄存器、時鐘突發(fā)寄存器及與ram相關(guān)的寄存器等。時鐘突發(fā)寄存器可一次性順序讀寫除充電寄存器以外的寄存器。日歷、時間寄存器及控制字如表3所示:表3 日歷、時鐘寄存器與控制字對照表寄存器名稱6543210ram/cka4a3a2a1a0rd/w秒寄

35、存器000000分寄存器000001小時寄存器000010日寄存器000011月寄存器000100星期寄存器000101年寄存器000110寫保護(hù)寄存器000111慢充電寄存器001000時鐘突發(fā)寄存器011111(注:最后一位rd/w為“0”時表示進(jìn)行寫操作,為“1”時表示讀操作。)3.3.5 ds1302內(nèi)部寄存器列表如表4所示:寄存器名稱命令字取值范圍各位內(nèi)容寫讀76543210秒寄存器80h81h00-59ch10secsec分寄存器82h83h00-59010minmin小時寄存器84h85h01-12或00-2312/240ahrhr日期寄存器86h87h01-28,29,30,3

36、10010datedate月份寄存器88h89h01-1200010mmonth周寄存器8ah8bh01-0700000day年份寄存器8ch8dh00-9910yearyeards1302內(nèi)部的ram分為兩類,一類是單個ram單元,共31個,每個單元為一個8位的字節(jié),其命令控制字為cohfdh,其中奇數(shù)為讀操作,偶數(shù)為寫操作;再一類為突發(fā)方式下的ram,此方式下可一次性讀寫所有的ram的31個字節(jié),命令控制字為feh(寫)、ffh(讀)。我們現(xiàn)在已經(jīng)知道了控制寄存器和ram的邏輯地址,接著就需要知道如何通過外部接口來訪問這些資源。單片機(jī)是通過簡單的同步串行通訊與ds1302通訊的,每次通訊都

37、必須由單片機(jī)發(fā)起,無論是讀還是寫操作,單片機(jī)都必須先向ds1302寫入一個命令幀,這個幀的格式如表1所示,最高位bit7固定為1,bit6決定操作是針對ram還是時鐘寄存器,接著的5個bit是ram或時鐘寄存器在ds1302的內(nèi)部地址,最后一個bit表示這次操作是讀操作抑或是寫操作。物理上,ds1302的通訊接口由3個口線組成,即rst,sclk,i/o。其中rst從低電平變成高電平啟動一次數(shù)據(jù)傳輸過程,sclk是時鐘線,i/o是數(shù)據(jù)線。但是請注意,無論是哪種同步通訊類型的串行接口,都是對時鐘信號敏感的,而且一般數(shù)據(jù)寫入有效是在上升沿,讀出有效是在下降沿(ds1302正是如此的,但是在芯片手冊

38、里沒有明確說明),如果不是特別確定,則把程序設(shè)計成這樣:平時sclk保持低電平,在時鐘變動前設(shè)置數(shù)據(jù),在時鐘變動后讀取數(shù)據(jù),即數(shù)據(jù)操作總是在sclk保持為低電平的時候,相鄰的操作之間間隔有一個上升沿和一個下降沿。3.4 ds18b20測溫系統(tǒng)3.4.1 ds18b20簡介ds18b20是美國dallas半導(dǎo)體公司繼ds1820之后最新推出的一種數(shù)字化單總線器件。屬于新一代適配微處理器的改進(jìn)型智能溫度傳感器。與傳統(tǒng)的熱敏電阻相比,它能夠直接讀出被測溫度,并且可根據(jù)實際要求通過簡單的編程實現(xiàn)912位的數(shù)字值讀數(shù)方式??梢苑謩e在93.75ms和750ms內(nèi)完成9位和12位的數(shù)字量,并且從ds18b2

39、0讀出的信息或?qū)懭雂s18b20的信息僅需要一根口線(單線接口)讀寫,溫度變換功率來源于數(shù)據(jù)總線,總線本身也可以向所掛接的ds18b20供電,而無需額外電源。因而使用ds18b20可使系統(tǒng)結(jié)構(gòu)更趨簡單,可靠性更高。同時其“一線總線”獨(dú)特而且經(jīng)濟(jì)的特點(diǎn),使用戶可輕松地組建傳感器網(wǎng)絡(luò),為測量系統(tǒng)的構(gòu)建引入了全新的概念。ds18b20“一線總線”數(shù)字化溫度傳感器支持“一線總線”接口,測量溫度范圍為-55+125?,F(xiàn)場溫度直接以“一線總線”的數(shù)字方式傳輸,用符號擴(kuò)展的16位數(shù)字方式串行輸出,大大提高了系統(tǒng)的抗干擾性。因此,數(shù)字化單總線器件ds18b20適合于惡劣環(huán)境的現(xiàn)場溫度測量,如:環(huán)境控制、設(shè)備或

40、過程控制、測溫類消費(fèi)電子產(chǎn)品等。它在測溫精度、轉(zhuǎn)換時間、傳輸距離、分辨率等方面較ds18b20都有了很大的改進(jìn),給用戶帶來了更方便和更令人滿意的效果。可廣泛用于工業(yè)、民用、軍事等領(lǐng)域的溫度測量及控制儀器、測控系統(tǒng)和大型設(shè)備中。ds18b20的性能特點(diǎn)如下:(1) 采用dallas公司獨(dú)特的單線接口方式:ds18b20與微處理器連接時僅需要一條口線即可實現(xiàn)微處理器與ds18b20的雙向通訊; (2)在使用中不需要任何外圍元件;(3)可用數(shù)據(jù)線供電,供電電壓范圍:+3.0v+5.5v;(4)測溫范圍:-55+125。固有測溫分辨率為0.5。當(dāng)在-10+85范圍內(nèi),可確保測量誤差不超過0.5,在-5

41、5+125范圍內(nèi),測量誤差也不超過2;(5)通過編程可實現(xiàn)912位的數(shù)字讀數(shù)方式;(6)用戶可自設(shè)定非易失性的報警上下限值;(7)支持多點(diǎn)的組網(wǎng)功能,多個ds18b20可以并聯(lián)在唯一的三線上,實現(xiàn)多點(diǎn)測溫(8)負(fù)壓特性,即具有電源反接保護(hù)電路。當(dāng)電源電壓的極性反接時,能保護(hù)ds18b20不會因發(fā)熱而燒毀,但此時芯片無法正常工作;(9)ds18b20的轉(zhuǎn)換速率比較高,進(jìn)行9位的溫度值轉(zhuǎn)換只需93.75ms;(10)適配各種單片機(jī)或系統(tǒng);(11)內(nèi)含64位激光修正的只讀存儲rom,扣除8位產(chǎn)品系列號和8位循環(huán)冗余校驗碼(crc)之后,產(chǎn)品序號占48位。出廠前產(chǎn)品序號存入其rom中。在構(gòu)成大型溫控系

42、統(tǒng)時,允許在單線總線上掛接多片ds18b206。3.4.2 ds18b20的內(nèi)部結(jié)構(gòu)及工作原理ds18b20采用3腳pr35封裝或8腳soic封裝。 圖 3-6 ds18b20封裝圖i/o為數(shù)據(jù)輸入/輸出端(即單線總線),它屬于漏極開路輸出,外接上拉電阻后,常態(tài)下呈高電平。udd是可供選用的外部電源端,不用時接地,gnd為地,nc空腳。ds18b20的內(nèi)部結(jié)構(gòu)主要包括7部分:寄生電源、溫度傳感器、64位激光(loser)rom與單線接口、高速暫存器(即便筏式ram,用于存放中間數(shù)據(jù))、th觸發(fā)寄存器和tl觸發(fā)寄存器,分別用來存儲用戶設(shè)定的溫度上下限值、存儲和控制邏輯、位循環(huán)冗余校驗碼(crc)

43、發(fā)生器。ds18b20是本設(shè)計中的核心部件,是用來檢測溫度的傳感器,它自身可以把檢測到的模擬信號轉(zhuǎn)換成數(shù)字信號,然后通過一根信號線將轉(zhuǎn)換好的數(shù)據(jù)直接傳輸給單片機(jī),供應(yīng)5v的電源就行了,只要對其進(jìn)行一系列必要的編程,就可以實現(xiàn)將溫度全部讀出。 圖 3-7 ds18b20的連接電路3.5 鍵盤控制電路根據(jù)功能需要,本時鐘需要設(shè)置以下功能鍵:設(shè)置鍵,加1操作鍵,確定操作鍵,退出鍵。由于本設(shè)計中最多需要3個按鍵,若采用矩陣式鍵盤時會有按鍵浪費(fèi),故采用的是獨(dú)立式鍵盤其中k1設(shè)為確定、進(jìn)入、在主界面時為時間設(shè)置進(jìn)入鍵,k2設(shè)為up鍵、光標(biāo)移動、在主界面時為語音演示鍵,k3為退出、主界面時進(jìn)入鬧鈴設(shè)置鍵。按

44、鍵功能參見表3.5。表5 按鍵功能表按鍵鍵名功能屬性aset功能選擇設(shè)置自動復(fù)位bup數(shù)值加一操作自動復(fù)位cout退出自動復(fù)位按鍵操作說明如下:a鍵:在正常顯示時間狀態(tài)下,第一次按下后,開始校對秒,以后每次按下都會分別進(jìn)入對分、時、鬧鈴分、鬧鈴時、日、月、年的校對狀態(tài)。b鍵:在校對狀態(tài)下,每次按動該鍵,都會使相應(yīng)校對位進(jìn)行加1操作。例如:校對小時狀態(tài),每按一下,小時位加1,當(dāng)加至小時最高值23時,再按k4鍵,小時位回0。調(diào)分、秒、年、月、日與皆之相同,只是各位最高值不同。c鍵:按下該鍵,保存設(shè)置返回時間顯示狀態(tài)并且。3.6供電系統(tǒng)由于單片機(jī)、ds1302、ds18b20以及12864液晶顯示都

45、需要5v供電。所以決定選用usb電池盒6v作為供電系統(tǒng)。并且搭配一塊1.5v紐扣電池為ds1302進(jìn)行單獨(dú)供電,以保證時間的穩(wěn)定,以免電池沒電或者切換電池事導(dǎo)致時間不正確!3.7語音報時系統(tǒng)本設(shè)計的語音報時系統(tǒng),采用的是ny3p035ap8語音芯片,此芯片在淘寶網(wǎng)上購得。規(guī)格:sop8/dip8腳封裝電壓:1.8-5.5v靜態(tài)電流:2ua聲音驅(qū)動方式:pwm直接驅(qū)動8歐0.5w喇叭(所有的都可以,只是聲音大小差別)語音內(nèi)容:使用說明:語音芯片可以通過單片機(jī)等其他控制設(shè)備,任意組合上面的數(shù)字,從而到達(dá)語音播報時間、星期、年、月、日、溫度、濕度等。例如:今天是2012年3月17日現(xiàn)在北京時間是21

46、點(diǎn)28分30秒。語音芯片是特定的固定標(biāo)準(zhǔn)模塊,可以通過單片機(jī)最少一個io口控制多達(dá)32段聲音任意調(diào)用和組合的語音標(biāo)準(zhǔn)芯片。通常最常用的控制方式是采用了模擬串行的控制方式(3個io)。如需要播放第幾個地址的內(nèi)容就發(fā)送幾個脈沖,可以快速的控制多達(dá)32段地址的任意組合。表6 語音內(nèi)容語音芯片管腳圖:圖 3-9語音芯片管腳圖單片機(jī)控制語音芯片電路圖:圖 3-10單片機(jī)控制語音芯片電路圖控制原理說明:此控制方式是采用了模擬串行的控制方式。如需要播放第幾個地址的內(nèi)容就發(fā)送幾個脈沖(大于0.2ms即可,建議采用1ms左右,下同)的原理,可以快速的控制多達(dá)32段地址的任意組合。模擬串行工作時各io的作用:bu

47、sy:芯片工作時(播放聲音),輸出低電平,停止工作或者待機(jī)是,保持高電平;data:接受控制脈沖的腳位。收到幾個脈沖,就播放第幾個地址的內(nèi)容;rst:任何時候,收到高電平,都可以使芯片的播放指針歸零(就是是data的腳位恢復(fù)到初始狀態(tài)),同時即刻使芯片停止,進(jìn)入待機(jī)狀態(tài);工作示例:例如現(xiàn)在需要播放第十段聲音。單片機(jī)控制原理是:先發(fā)送一個復(fù)位脈沖到rst腳,接著發(fā)送10個脈沖到data腳。芯片即刻工作,播放第十段的聲音;如果需要播放第五段的聲音,則是:先發(fā)送一個復(fù)位脈沖到rst腳,接著發(fā)送5個脈沖到data腳。芯片即刻工作,播放第5段的聲音;例如需要連續(xù)播放第十段和第五段聲音:先發(fā)送一個復(fù)位脈沖

48、到rst腳,接著發(fā)送10個脈沖到data腳。芯片即刻工作,播放第十段的聲音,同時單片機(jī)判斷語音芯片的busy是否是高電平,如果不是則一直等待,如果是高電平,則發(fā)送一個復(fù)位脈沖到rst腳,接著發(fā)送5個脈沖到data腳。芯片即刻工作,播放第5段的聲音.依此類推。簡單測試:很多使用者初次使用時候,沒有完全了解工作原理或者連接不當(dāng),導(dǎo)致在系統(tǒng)上面調(diào)試很長時間,以至于懷疑芯片的穩(wěn)定性,現(xiàn)在提供最簡單的測試方式,以便了解其工作原理。同時也大大提供初次調(diào)試的成功率。3.8紅外遙控設(shè)計發(fā)射采用的是在網(wǎng)上2塊錢淘的21鍵超薄遙控器。1.尺寸:86*40*6.0mm2.產(chǎn)品內(nèi)含1個cr2025紐扣電3.遙控距離:

49、 1018米 (直線無障礙距離)4.發(fā)射管紅外波長:940nm5.晶振: 振蕩頻率455khz, 紅外載波頻率: 38khz6.面貼材料:0.125mmpet,按鍵有效壽命2萬次以上.4數(shù)字鐘的軟件設(shè)計系統(tǒng)的軟件設(shè)計也是工具系統(tǒng)功能的設(shè)計。單片機(jī)軟件的設(shè)計主要包括執(zhí)行軟件(完成各種實質(zhì)性功能)的設(shè)計和監(jiān)控軟件的設(shè)計。單片機(jī)的軟件設(shè)計通常要考慮以下幾個方面的問題:(1)根據(jù)軟件功能要求,將系統(tǒng)軟件劃分為若干個相對獨(dú)立的部分,設(shè)計出合理的總體結(jié)構(gòu),使軟件開發(fā)清晰、簡潔和流程合理;(2)培養(yǎng)良好的編程風(fēng)格,如考慮結(jié)構(gòu)化程序設(shè)計、實行模塊化、子程序化。既便于調(diào)試、鏈接,又便于移植和修改;(3)建立正確

50、的數(shù)學(xué)模型,通過仿真提高系統(tǒng)的性能,并選取合適的參數(shù);(4)繪制程序流程圖;(5)合理分配系統(tǒng)資源;(6)為程序加入注釋,提高可讀性,實施軟件工程;(7)注意軟件的抗干擾設(shè)計,提高系統(tǒng)的可靠性。4.1 系統(tǒng)軟件設(shè)計流程圖每一個程序都需要一個獨(dú)一無二的主程序其中包含了很多的子程序。主程序不停的調(diào)用子程序來完成我們所設(shè)定的任務(wù)和運(yùn)行模式。4.1.1主函數(shù)程序 流程圖和效果圖圖 4-1 主函數(shù)流程圖 顯示主界面圖4-2顯示主界面4.1.2主函數(shù)程序 編寫:#include #include ds1302.h#include lcd12864.h#include set_clock.h#include

51、 display_main_menu.h#include set_system.h#include set_temp.h#include set_alarm_clock.hvoid main()init_12864();while(1)key();display_main_menu();alarm_clock();alarm_temp();4.2 12864led顯示函數(shù)12864led作為整體模塊使用需要先用單片機(jī)進(jìn)行底層驅(qū)動程序的設(shè)置,在其中加上我們要顯示的內(nèi)容。而底層驅(qū)動比較復(fù)雜需要使用很多的特定函數(shù)根據(jù)時序圖進(jìn)行編寫。在此過程中為了加大程序的可讀性,故改變成頭文件lcd12864.h來

52、定義變量。4.2.1顯示函數(shù)程序 流程圖圖4-3 顯示函數(shù)程序流程圖4.2.2顯示函數(shù)程序 編寫:見附錄一;4.3 ds1302函數(shù)ds1302是一塊集成時鐘芯片不僅可以設(shè)置時間還可以設(shè)置年月日。該程序主要實現(xiàn)對ds1302寫保護(hù)、充電,對年、月、日、時、分、秒等寄存器的讀寫操作。在讀寫操作子程序中都執(zhí)行了關(guān)中斷指令,因為在串行通信時對時序要求比較高,而且在此是用i/o口軟件模擬串行時鐘脈沖,所以在通信過程中最好保證傳輸?shù)倪B續(xù)性,不要允許中斷。4.3.1 ds1302程序 流程圖圖4-4 萬年歷程序流程圖4.3.2 ds1302函數(shù)編寫見附錄二;4.4 ds18b20溫度采集ds18b20在本設(shè)計中只是作用于拓展使用。來測試室內(nèi)環(huán)境溫度。可以讓我們不僅僅是看時間還可看室內(nèi)當(dāng)前溫度!4.4.1 ds18b20溫度采集 流程圖圖 4-5 溫度采集程序流程圖4.4.3 ds18b20函數(shù)編寫見附錄三4.5.2.1

溫馨提示

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

評論

0/150

提交評論