基于單片機(jī)多功能電子鐘設(shè)計(jì)_第1頁
基于單片機(jī)多功能電子鐘設(shè)計(jì)_第2頁
基于單片機(jī)多功能電子鐘設(shè)計(jì)_第3頁
基于單片機(jī)多功能電子鐘設(shè)計(jì)_第4頁
基于單片機(jī)多功能電子鐘設(shè)計(jì)_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、南華大學(xué)電氣工程學(xué)院?jiǎn)纹瑱C(jī)原理及應(yīng)用課程設(shè)計(jì)單片機(jī)原理及應(yīng)用課程設(shè)計(jì)任務(wù)書1課程設(shè)計(jì)的內(nèi)容和要求(包括原始數(shù)據(jù)、技術(shù)要求、工作要求等):一、設(shè)計(jì)一多功能數(shù)字鐘以一晝夜24小時(shí)為一個(gè)計(jì)數(shù)周期。二、主要技術(shù)指標(biāo)與要求:(1)基本功能a 準(zhǔn)確計(jì)時(shí),以數(shù)字形式顯示時(shí)、分、秒的時(shí)間;b小時(shí)的計(jì)時(shí)為12進(jìn)位,分和秒的計(jì)時(shí)為60進(jìn)位;c 校時(shí)功能。(2)擴(kuò)展功能a定時(shí)控制;b整點(diǎn)報(bào)時(shí)。c 星期提示d其他功能(顯示溫度、濕度等) 2對(duì)課程設(shè)計(jì)成果的要求包括圖表、原理圖、仿真圖等:設(shè)計(jì)電路,編寫程序,安裝調(diào)試或仿真,分析實(shí)驗(yàn)結(jié)果,并寫出設(shè)計(jì)說明書,語言流暢簡(jiǎn)潔,文字不得少于3500字。要求圖紙布局合理,符合工程

2、要求,使用proteus軟件繪出原理圖,器件的選擇要有計(jì)算依據(jù)。3主要參考文獻(xiàn):1李朝青. 單片機(jī)原理及接口技術(shù). 北京: 北京航空航天大學(xué)出版社, 2005,53龔運(yùn)新. 單片機(jī)C語言開發(fā)技術(shù). 北京:清華大學(xué)出版社, 2006,94孫涵芳. MCS-51系列單片機(jī)原理及應(yīng)用M. 北京: 北京航空航天大學(xué)出版社 1996,45賈好來. MCS51單片機(jī)原理及應(yīng)用 機(jī)械工業(yè)出版社 2007年6陳海宴. 51單片機(jī)原理及應(yīng)用基于Keilc與Proteus北京: 北京航空航天大學(xué)出版社 2010,74課程設(shè)計(jì)工作進(jìn)度計(jì)劃:序號(hào)起 迄 日 期工 作 內(nèi) 容12014-9-6布置任務(wù),教師講解設(shè)計(jì)方法

3、及要求22014-9-6至11查找閱讀資料,初定方案,小組會(huì)議討論并確定方案32014-9-11至16硬件電路設(shè)計(jì)及程序編寫42014-9-16至19仿真、實(shí)驗(yàn)并寫說明書,小組討論52014-9-19答辯指導(dǎo)教師汪普林日期: 2014 年 9 月 19 日前言隨著科技的快速發(fā)展,從擺鐘到現(xiàn)在電子鐘,人類不斷研究,不斷創(chuàng)新紀(jì)錄。目前,單片機(jī)技術(shù)的應(yīng)用產(chǎn)品已經(jīng)走進(jìn)了千家萬戶,電子時(shí)鐘的出現(xiàn)給人們的生活帶來了諸多方便,隨著微電子技術(shù)的高速發(fā)展,單片機(jī)在國(guó)民經(jīng)濟(jì)的個(gè)人領(lǐng)域得到了廣泛的運(yùn)用,單片機(jī)以體積小、功能全、性價(jià)比高等諸多優(yōu)點(diǎn),在工業(yè)控制、家用電器、通信設(shè)備、信息處理、尖端武器等各種測(cè)控領(lǐng)域的應(yīng)用

4、中獨(dú)占鰲頭,單片機(jī)開發(fā)技術(shù)已成為電氣、通信、自動(dòng)化、機(jī)電一體化等專業(yè)技術(shù)人員必須掌握的技術(shù)。單片機(jī)單芯片的微小體積和低的成本,可廣泛地嵌入到如玩具、家用電器、機(jī)器人、儀器儀表、汽車電子系統(tǒng)、工業(yè)控制單元、辦公自動(dòng)化設(shè)備、金融電子系統(tǒng)、艦船、個(gè)人信息終端及通訊產(chǎn)品中,成為現(xiàn)代電子系統(tǒng)中最重要的智能化工具,于是基于單片機(jī)的醒目而時(shí)尚的電子多功能時(shí)鐘順應(yīng)而生?;趩纹瑱C(jī)的電子多功能時(shí)鐘結(jié)合了時(shí)鐘和日歷的功能,將其二者融為一體,在顯示時(shí)間的同時(shí)還能顯示日期和年、月,它主要是通過單片機(jī)來讀取時(shí)鐘芯片的時(shí)間、日期,然后送給顯示設(shè)備顯示出來。而電子萬年歷作為電子類小設(shè)計(jì)不僅是市場(chǎng)上的寵兒,也是是單片機(jī)實(shí)驗(yàn)中

5、一個(gè)很常用的題目。因?yàn)樗挠泻芎玫拈_放性和可發(fā)揮性,因此對(duì)作者的要求比較高,不僅考察了對(duì)單片機(jī)的掌握能力更加強(qiáng)調(diào)了對(duì)單片機(jī)擴(kuò)展的應(yīng)用,而且在操作的設(shè)計(jì)上要力求簡(jiǎn)潔,功能上盡量齊全,顯示界面也要出色,數(shù)字顯示的時(shí)鐘已經(jīng)越來越流行,特別是適合在家庭居室、辦公室、大廳、會(huì)議室、車站和廣場(chǎng)等使用,壁掛式LED數(shù)碼管顯示的日歷鐘逐漸受到人們的歡迎。LED數(shù)字顯示的日歷鐘顯示清晰直觀、走時(shí)準(zhǔn)確、可以進(jìn)行夜視,并且還可以擴(kuò)展出多種功能。目錄前言3目錄4摘要6ABSTRACT71. 系統(tǒng)的方案設(shè)計(jì)與論證81.1 單片機(jī)芯片設(shè)計(jì)與論證91.2按鍵控制模塊設(shè)計(jì)與論證91.3時(shí)鐘模塊設(shè)計(jì)與論證91.4溫度采集模塊設(shè)

6、計(jì)與論證101.4.1 溫度測(cè)量的步驟101.4.2 DS18B20的操作時(shí)序101.5 顯示模塊模塊設(shè)計(jì)與論證111.5.1 1602字符型LCD簡(jiǎn)介111.5.2 1602引腳功能說明111.5.3 1602LCD的指令說明及時(shí)序121.5.4 1602LCD的RAM地址映射及標(biāo)準(zhǔn)字庫表141.5.5 1602LCD的一般初始化(復(fù)位)過程151.5.6 1602LCD的電路連接151.6 蜂鳴器鬧鈴電路162 系統(tǒng)硬件的設(shè)計(jì)172.1 AT89S51單片機(jī)172.2 時(shí)鐘芯片DS1302接口設(shè)計(jì)與性能分析202.2.1 DS1302性能簡(jiǎn)介202.2.2 DS1302接口電路設(shè)計(jì)212.

7、3 溫度芯片DS18B20接口設(shè)計(jì)與性能分析232.3.1 DS18B20性能簡(jiǎn)介231.DS18B20的主要特性232.3.2 DS18B20接口電路設(shè)計(jì)242.3.3 DS18B20的工作時(shí)序242.4 LCD顯示模塊272.4.1 LCD1602的特性及使用說明272.4.2 LCD1602與MCU的接口電路282.5 按鍵模塊設(shè)計(jì)282.6 復(fù)位電路的設(shè)計(jì)283 系統(tǒng)的軟件設(shè)計(jì)303.1主程序流程圖的設(shè)計(jì)30主程序流程313.2時(shí)間設(shè)置子程序流程313.3 鬧鐘設(shè)置子程序流程32參考文獻(xiàn)33附錄:?jiǎn)纹瑱C(jī)多功能時(shí)鐘程序34心得與感悟54摘要本文介紹了基于AT89S52單片機(jī)的多功能電子萬

8、年歷的硬件結(jié)構(gòu)和軟硬件設(shè)計(jì)方法。本設(shè)計(jì)由數(shù)據(jù)顯示模塊、溫度采集模塊、時(shí)間處理模塊和調(diào)整設(shè)置模塊四個(gè)模塊組成。系統(tǒng)以AT89S52單片機(jī)為控制器,以串行時(shí)鐘日歷芯片DS1302記錄日歷和時(shí)間,它可以對(duì)年、月、日、時(shí)、分、秒進(jìn)行計(jì)時(shí),還具有閏年補(bǔ)償?shù)榷喾N功能。溫度采集選用DS18B20芯片,萬年歷采用直觀的數(shù)字顯示,數(shù)據(jù)顯示采用1602液晶顯示模塊,可以在LCD上同時(shí)顯示年、月、日、周日、時(shí)、分、秒,還具有時(shí)間校準(zhǔn)等功能。此萬年歷具有讀取方便、顯示直觀、功能多樣、電路簡(jiǎn)潔、成本低廉等諸多優(yōu)點(diǎn),具有廣闊的市場(chǎng)前景。關(guān)鍵字:時(shí)鐘顯示 調(diào)整 溫度計(jì) 液晶顯示ABSTRACTThis paper intr

9、oduces the based on AT89S52 multi-function electronic calendar of the hardware structure and software and hardware design method. This design by data display module, temperature acquisition module, time processing module and set module four modules. With AT89S52 single-chip microcomputer system for

10、the controller to serial clock calendar chip DS1302 record calendar and time, it can be to date and time, minutes and seconds for the time, also has a leap year compensation and other functions. Temperature gathering choose DS18B20 chip, calendar by using object digital display, data showed that the

11、 1602 liquid crystal display module, can be in the LCD shows at the same time year, month, day, Sunday, when, minutes and seconds, still have time calibration etc. Function. This calendar has read the convenient, direct display, functional diversity, simple circuit, low cost, and many other advantag

12、es, has a broad market prospect. Key words:The clock display adjustment thermometer LCD display1. 系統(tǒng)的方案設(shè)計(jì)與論證單片機(jī)電子萬年歷的制作有多種方法,可供選擇的器件和運(yùn)用的技術(shù)也有很多種。所以,系統(tǒng)的總體設(shè)計(jì)方案應(yīng)在滿足系統(tǒng)功能的前提下,充分考慮系統(tǒng)使用的環(huán)境,所選的結(jié)構(gòu)要簡(jiǎn)單使用、易于實(shí)現(xiàn),器件的選用著眼于合適的參數(shù)、穩(wěn)定的性能、較低的功耗以及低廉的成本。系統(tǒng)的功能往往決定了系統(tǒng)采用的結(jié)構(gòu),經(jīng)過成本,性能,功耗等多方面的考慮決定用三個(gè)8位74LS164串行接口外接LED顯示器,RESPACK-

13、8對(duì)單片機(jī)AT89S52進(jìn)行供電,時(shí)間芯片DS1302連接單片機(jī)AT89S52。從而實(shí)現(xiàn)電子萬年歷的功能。按照系統(tǒng)設(shè)計(jì)的要求,初步確定系統(tǒng)由電源模塊、時(shí)鐘模塊、顯示模塊、鍵盤接口模塊、溫度測(cè)量模塊和鬧鐘模塊共六個(gè)模塊組成,電路系統(tǒng)構(gòu)成框圖如圖1所示。圖1 硬件電路框圖1.1 單片機(jī)芯片設(shè)計(jì)與論證方案一: 采用AT89C51芯片作為硬件核心,采用Flash ROM,內(nèi)部具有4KB ROM 存儲(chǔ)空間,能用于3V的超低電壓工作,而且與MCS-51系列單片機(jī)完全兼容,但是運(yùn)用于電路設(shè)計(jì)中時(shí)由于不具備ISP在線編程技術(shù), 當(dāng)在對(duì)電路進(jìn)行調(diào)試時(shí),由于程序的錯(cuò)誤修改或?qū)Τ绦虻男略龉δ苄枰獰氤绦驎r(shí),對(duì)芯片的

14、多次拔插會(huì)對(duì)芯片造成一定的損壞。方案二:采用AT89S52芯片作為硬件核心,采用Flash ROM,能以3V的超低電壓工作,而且與MCS-51系列單片機(jī)完全兼容,該芯片內(nèi)部存儲(chǔ)器為8KB ROM 存儲(chǔ)空間。同樣具有AT89S52的功能,且具有在線編程可擦除技術(shù),當(dāng)在對(duì)電路進(jìn)行調(diào)試時(shí),由于程序的錯(cuò)誤修改或?qū)Τ绦虻男略龉δ苄枰獰氤绦驎r(shí),不需要對(duì)芯片多次拔插,所以不會(huì)對(duì)芯片造成損壞。由于AT89S52內(nèi)部具有8KBROM存儲(chǔ)芯片并且支持ISP在線編程,因此采用AT89S52作為主控芯片。1.2 按鍵控制模塊設(shè)計(jì)與論證方案一:采用矩陣鍵盤,由于按鍵多可實(shí)現(xiàn)數(shù)值的直接鍵入,但在系統(tǒng)中需要CPU不間斷的

15、對(duì)其端口掃描。方案二:采用獨(dú)立按鍵,查詢簡(jiǎn)單,程序處理簡(jiǎn)單,可節(jié)省CPU資源。因系統(tǒng)中所需按鍵不多,為了釋放更多的CPU占有時(shí)間,操作方便,故采用方案二。1.3 時(shí)鐘模塊設(shè)計(jì)與論證方案一:直接采用單片機(jī)定時(shí)計(jì)數(shù)器提供秒信號(hào),使用程序?qū)崿F(xiàn)年、月、日、星期、時(shí)、分、秒計(jì)數(shù)。采用此種方案雖然減少芯片的使用,節(jié)約成本,但是,實(shí)現(xiàn)的時(shí)間誤差較大。方案二:采用DS1302時(shí)鐘芯片實(shí)現(xiàn)時(shí)鐘,DS1302芯片是一種高性能的時(shí)鐘芯片,可自動(dòng)對(duì)秒、分、時(shí)、日、周、月、年以及閏年補(bǔ)償?shù)哪赀M(jìn)行計(jì)數(shù),而且精度高,位的RAM作為數(shù)據(jù)暫存區(qū),工作電壓2.5V5.5V范圍內(nèi),2.5V時(shí)耗電小于300nA.由于DS1302時(shí)鐘

16、芯片計(jì)數(shù)時(shí)間精度高,而且具有閏年補(bǔ)償功能等優(yōu)點(diǎn),故采用方案二。1.4 溫度采集模塊設(shè)計(jì)與論證方案一:采用溫度傳感器(如熱敏電阻或AD590),再經(jīng)AD轉(zhuǎn)換得到數(shù)字信號(hào),精度較準(zhǔn),但價(jià)格昂貴,電路較復(fù)雜。方案二:采用數(shù)字式溫度傳感器DS18B20,它能直接讀出被測(cè)溫度,并且可根據(jù)實(shí)際要求通過簡(jiǎn)單的編程實(shí)現(xiàn)9-12位的數(shù)字值讀數(shù)方式,但準(zhǔn)確度不高,誤差最大達(dá)2度。因?yàn)橛肈S18B20溫度芯片,采用單總線訪問,降低成本、降低制作難度且可節(jié)省單片機(jī)資源,故采用方案二。1.4.1 溫度測(cè)量的步驟(1).Read ROM(33 h),每次對(duì)DS1820進(jìn)行操作之前都要對(duì)它進(jìn)行初始化,主要目的在于

17、確定傳感器已經(jīng)連接到單總線上。(2).Search ROM(F0h),這條指令使處理器用排除的方法去辨別總線上的DS1820。(3).Match ROM(55h),只有準(zhǔn)確的符合64位ROM序列的DS1820才能響應(yīng)其后的指令,當(dāng)然,單點(diǎn)測(cè)溫時(shí)可以使用Skip ROM(CCh)指令來跳過這一步。(4).Convert T(44h),發(fā)完指令后應(yīng)查詢總線上的電平,當(dāng)電平位高時(shí)溫度轉(zhuǎn)換完成。(5).Read Scratchpad(BEh),將讀指令發(fā)出后,就可從總線上讀得表示溫度的2字節(jié)二進(jìn)制數(shù)。1.4.2 DS18B20的操作時(shí)序由于采用單總線數(shù)據(jù)傳輸方式,DS18B20的數(shù)據(jù)I/O均

18、由同一條線完成,因此,對(duì)讀寫的操作時(shí)序要求嚴(yán)格。它的各種時(shí)序如圖2-5所示為了保證DS18B20的嚴(yán)格I/O時(shí)序。需要做較精確的延時(shí)。在DS18B20操作中,用到的延時(shí)有15S,90S,270S,540S等。因這些延時(shí)均為15S的整倍,因此在程序中可以編寫一個(gè)以15S為基準(zhǔn)的延時(shí)函數(shù)。圖2-6溫度采集電路1.5 顯示模塊模塊設(shè)計(jì)與論證方案一:采用靜態(tài)顯示方法,靜態(tài)顯示模塊的硬件制作較復(fù)雜及功耗大,要用到多個(gè)移位寄存器,但不占用端口,只需兩根串口線輸出。方案二:采用動(dòng)態(tài)顯示方法,動(dòng)態(tài)顯示模塊的硬件制作簡(jiǎn)單,段掃描和位掃描各占用一個(gè)端口,總需占用單片機(jī)14個(gè)端口,采用間斷掃描法功耗小、硬件成本低及

19、整個(gè)硬件系統(tǒng)體積相對(duì)減小。方案三:采用LCD的方法,具有硬件制作簡(jiǎn)單可直接與單片機(jī)接口,顯示內(nèi)容多,功耗小,成本低等優(yōu)點(diǎn),LCM1602可顯示32個(gè)字符,采用LCD的缺點(diǎn)是亮度不夠。比較以上三種方案:方案一硬件復(fù)雜體積大、功耗大;方案二硬件簡(jiǎn)單、功耗??;方案三硬件簡(jiǎn)單,顯示內(nèi)容多,功耗小,成本低等。本系統(tǒng)設(shè)計(jì)要求達(dá)到功耗小、體積小、成本低,顯示信息多等要求,權(quán)衡三種方案,選擇方案三。1.5.1 1602字符型LCD簡(jiǎn)介字符型液晶顯示模塊是一種專門用于顯示字母、數(shù)字、符號(hào)等點(diǎn)陣式LCD,本設(shè)計(jì)采用16列*2行的字符型LCD1602帶背光的液晶顯示屏。1602LCD主要技術(shù)參數(shù):0. 顯示容量:1

20、6×2個(gè)字符1. 芯片工作電壓:4.55.5V3. 工作電流:2.0mA(5.0V)4. 模塊最佳工作電壓:5.0V5. 字符尺寸:2.95×4.35(W×H)mm1.5.2 1602引腳功能說明各引腳接口說明如表所示:表2-1編號(hào)符號(hào)引腳說明編號(hào)符號(hào)引腳說明1VSS電源地9D2數(shù)據(jù)2VDD電源正極10D3數(shù)據(jù)3VL液晶顯示偏壓11D4數(shù)據(jù)4RS數(shù)據(jù)/命令選擇12D5數(shù)據(jù)5R/W讀/寫選擇13D6數(shù)據(jù)6E使能信號(hào)14D7數(shù)據(jù)7D0數(shù)據(jù)15BLA背光源正極8D1數(shù)據(jù)16BLK背光源負(fù)極表2-1:引腳接口說明:第1腳:VSS為地電源。第2腳:VDD接5V正電源。第3腳

21、:VL為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地時(shí)對(duì)比度最高,對(duì)比度過高時(shí)會(huì)產(chǎn)生“鬼影”,使用時(shí)可以通過一個(gè)10K的電位器調(diào)整對(duì)比度。第4腳:RS為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。第5腳:R/W為讀寫信號(hào)線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。當(dāng)RS和R/W共同為低電平時(shí)可以寫入指令或者顯示地址,當(dāng)RS為低電平R/W為高電平時(shí)可以讀忙信號(hào),當(dāng)RS為高電平R/W為低電平時(shí)可以寫入數(shù)據(jù)。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。第714腳:D0D7為8位雙向數(shù)據(jù)線。第15腳:背光源正極。第16腳:背光源負(fù)極。1.5.3 1602

22、LCD的指令說明及時(shí)序1602液晶模塊內(nèi)部的控制器共有11條控制指令,如表2-2所示:表2-2序號(hào)指令RSR/WD7D6D5D4D3D2D1D01清顯示00000000012光標(biāo)返回000000001*3置輸入模式00000001I/DS4顯示開/關(guān)控制0000001DCB5光標(biāo)或字符移位000001S/CR/L*6置功能00001DLNF*7置字符發(fā)生存貯器地址0001字符發(fā)生存貯器地址8置數(shù)據(jù)存貯器地址001顯示數(shù)據(jù)存貯器地址9讀忙標(biāo)志或地址01BF計(jì)數(shù)器地址10寫數(shù)到CGRAM或DDRAM)10要寫的數(shù)據(jù)內(nèi)容11從CGRAM或DDRAM讀數(shù)11讀出的數(shù)據(jù)內(nèi)容表2-2字符控制命令說明:16

23、02液晶模塊的讀寫操作、屏幕和光標(biāo)的操作都是通過指令編程來實(shí)現(xiàn)的。(說明:1為高電平、0為低電平)指令1:清顯示,指令碼01H,光標(biāo)復(fù)位到地址00H位置。指令2:光標(biāo)復(fù)位,光標(biāo)返回到地址00H。指令3:光標(biāo)和顯示模式設(shè)置 I/D:光標(biāo)移動(dòng)方向,高電平右移,低電平左移 S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無效。指令4:顯示開關(guān)控制。 D:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示 C:控制光標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無光標(biāo) B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。指令5:光標(biāo)或顯示移位 S/C:高電平時(shí)移動(dòng)顯示的文字,低電平時(shí)移動(dòng)光標(biāo)。

24、指令6:功能設(shè)置命令 DL:高電平時(shí)為4位總線,低電平時(shí)為8位總線 N:低電平時(shí)為單行顯示,高電平時(shí)雙行顯示 F: 低電平時(shí)顯示5x7的點(diǎn)陣字符,高電平時(shí)顯示5x10的點(diǎn)陣字符。指令7:字符發(fā)生器RAM地址設(shè)置。指令8:DDRAM地址設(shè)置。指令9:讀忙信號(hào)和光標(biāo)地址 BF:為忙標(biāo)志位,高電平表示忙,此時(shí)模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。指令10:寫數(shù)據(jù)。指令11:讀數(shù)據(jù)。芯片時(shí)序表如下:讀狀態(tài)輸入RS=L,R/W=H,E=H輸出D0D7=狀態(tài)字寫指令輸入RS=L,R/W=L,D0D7=指令碼,E=高脈沖輸出無讀數(shù)據(jù)輸入RS=H,R/W=H,E=H輸出D0D7=數(shù)據(jù)寫數(shù)據(jù)輸入RS=

25、H,R/W=L,D0D7=數(shù)據(jù),E=高脈沖輸出無表2-3基本操作時(shí)序表讀寫操作時(shí)序如圖2-7和2-8所示:圖2-7讀操作時(shí)序圖2-8 寫操作時(shí)序1.5.4 1602LCD的RAM地址映射及標(biāo)準(zhǔn)字庫表液晶顯示模塊是一個(gè)慢顯示器件,所以在執(zhí)行每條指令之前一定要確認(rèn)模塊的忙標(biāo)志為低電平,表示不忙,否則此指令失效。要顯示字符時(shí)要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符,圖2-9是1602的內(nèi)部顯示地址。圖2-9液晶內(nèi)部顯示地址例如第二行第一個(gè)字符的地址是40H,那么是否直接寫入40H就可以將光標(biāo)定位在第二行第一個(gè)字符的位置呢?這樣不行,因?yàn)閷懭腼@示地址時(shí)要求最高位D7恒定為高電平1所以實(shí)際寫入

26、的數(shù)據(jù)應(yīng)該是01000000B(40H)+10000000B(80H)=11000000B(C0H)。1602液晶模塊內(nèi)部的字符發(fā)生存儲(chǔ)器(CGROM)已經(jīng)存儲(chǔ)了160個(gè)不同的點(diǎn)陣字符圖形,如圖10-58所示,這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫、常用的符號(hào)、和日文假名等,每一個(gè)字符都有一個(gè)固定的代碼,比如大寫的英文字母“A”的代碼是01000001B(41H),顯示時(shí)模塊把地址41H中的點(diǎn)陣字符圖形顯示出來,我們就能看到字母“A”。圖2-10 字符代碼與圖形對(duì)應(yīng)圖1.5.5 1602LCD的一般初始化(復(fù)位)過程1. 延時(shí)15mS1.5.6 寫指令38H(不檢測(cè)忙信號(hào))延時(shí)5mS寫指令3

27、8H(不檢測(cè)忙信號(hào))延時(shí)5mS寫指令38H(不檢測(cè)忙信號(hào))以后每次寫指令、讀/寫數(shù)據(jù)操作均需要檢測(cè)忙寫指令38H:顯示模式設(shè)置寫指令08H:顯示關(guān)閉寫指令01H:顯示清屏寫指令06H:顯示光標(biāo)移動(dòng)設(shè)置寫指令0CH:顯示開及光標(biāo)設(shè)置1.5.6 1602LCD的電路連接液晶5端為讀/寫選擇端,因?yàn)槲覀儾粡囊壕е凶x取數(shù)據(jù),只向其寫入命令和顯示數(shù)據(jù),因此此端始終選擇為寫狀態(tài),即低電平接地。液晶6端為使能信號(hào),是操作時(shí)必須的信號(hào)。其電路如圖2-11所示:圖2-11 1602的電路連接1. 6 蜂鳴器鬧鈴電路當(dāng)單片機(jī)給蜂鳴器一個(gè)低電平時(shí),三極管導(dǎo)通驅(qū)動(dòng)蜂鳴器發(fā)出聲音作為定時(shí)鬧鈴,其電路圖如圖2-12所示:

28、圖2-12 蜂鳴器連接電路2 系統(tǒng)硬件的設(shè)計(jì)根據(jù)上述所確定的系統(tǒng)方案構(gòu)想,下面進(jìn)行系統(tǒng)硬件電路的具體設(shè)計(jì),系統(tǒng)的具體設(shè)計(jì)在下面會(huì)詳細(xì)介紹。2.1 AT89S51單片機(jī)本系統(tǒng)采用的是美國(guó)ATMEL公司生產(chǎn)的AT89S52單片機(jī),首先我們來熟悉一下AT89S52單片機(jī)的外部引腳和內(nèi)部結(jié)構(gòu)。1.單片機(jī)的引腳功能AT89S52單片機(jī)有40個(gè)引腳。l Vcc:電源電壓+5Vl GND:接地l P0口:P0口是一組8位漏極開路型雙向I/O口,也即地址/數(shù)據(jù)總線復(fù)用口。作為輸出口用時(shí),每位能驅(qū)動(dòng)8個(gè)TTL邏輯門電路,對(duì)端口寫“1”可作為高阻抗輸入端用。在訪問外部數(shù)據(jù)存儲(chǔ)器或程序存儲(chǔ)器時(shí),這組口線分時(shí)轉(zhuǎn)換地址

29、(低8位)和數(shù)據(jù)總線服用,在訪問期間激活內(nèi)部上拉電阻。在Flash編程時(shí),P0口接收指令字節(jié),而在程序校驗(yàn)時(shí),輸出指令字節(jié),校驗(yàn)時(shí)要求外接上拉電阻。l P1口:P1口是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O,P1的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門電路。對(duì)端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口。作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流。 Flash 編程和程序校驗(yàn)期間,P1接收低8位地址。l P2口:P2口是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O,P2的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門電路。對(duì)端口寫“1”,

30、通過內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口。作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流。在訪問外部程序存儲(chǔ)器或16位地址的外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVXDPTR指令)時(shí),P2口送出高8位地址數(shù)據(jù)。在訪問8位地址的外部數(shù)據(jù)存儲(chǔ)器(MOVX Ri指令)時(shí),P2口線上的內(nèi)容(也即特殊功能寄存器(SFR)區(qū)中P2寄存器的內(nèi)容),在整個(gè)訪問期間不改變。Flash 編程和程序校驗(yàn)期間,P2亦接收低高位地址和其他控制信號(hào)。l P3口:P3口是一組帶內(nèi)部上拉電阻的8位雙向I/O,P3的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門電路。對(duì)P3口寫入“1”時(shí),它們

31、被內(nèi)部的上拉電阻拉高并可作為輸入端口。作輸入端時(shí),被外部拉低的P3口將用上拉電阻輸出電流。P3口除了作為一般的I/O口線外,更重要的用途是它的第二功能,見表1所示:P3口還接收一些用于Flash閃速存儲(chǔ)器編程和程序校驗(yàn)的控制信號(hào)。表1 P3口的第二功能圖端口引腳第二功能P3.0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.2INT0(外中斷0)P3.3INT1(外中斷1)P3.4T0(定時(shí)/計(jì)時(shí)器0外部輸入)P3.5T1(定時(shí)/計(jì)時(shí)器1外部輸入)P3.6WR(外部數(shù)據(jù)存儲(chǔ)器寫選通)P3.7RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)l RST:復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高

32、電平將使單片機(jī)復(fù)位。WDT溢出將使引腳輸出高電平,設(shè)置SFR AUXR的DISRT0(地址8EH)可打開或關(guān)閉該功能。DISRT0位缺省為RESET輸出高電平打開狀態(tài)。l ALE/PROG:當(dāng)訪問外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存器允許)輸出脈沖用于鎖存地址的低8位字節(jié)。即使不訪問外部存儲(chǔ)器,ALE仍以時(shí)鐘振蕩頻率的1/6輸出固定的正脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的。要注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過一個(gè)ALE脈沖。對(duì)Flash存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖(PROG)。如有必要,可通過多特殊功能寄存器(SFR)區(qū)中的8EH單元的D0位置,可禁止ALE

33、操作。該位置后,只有一條MOVX和MOVC指令A(yù)LE才會(huì)被激活。另外,該引腳會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE無效。l PSEN:程序存儲(chǔ)允許(PSEN)輸出是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)AT89S52由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次PSEN有效,即輸出兩個(gè)脈沖。當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器,沒有兩次有效的PSEN信號(hào)。l EA/VPP:外部訪問允許。欲使CPU僅訪問外部程序存儲(chǔ)器(地址為0000HFFFFH),EA端必須保持低電平(接地)。需要注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲(chǔ)器中

34、的指令。Flash存儲(chǔ)器編程時(shí),該引腳加上+12V的變成電壓Vpp.l XTAL1:振蕩器反相放大器及內(nèi)部時(shí)鐘發(fā)生器的輸入端。l XTAL2:振蕩器反相放大器的輸出端。AT89S52單片機(jī)內(nèi)部結(jié)構(gòu)2.AT89S52單片機(jī)與MCS-51完全兼容 l 看門狗(WDT):WDT是一種需要軟件控制的復(fù)位方式。WDT 由13位計(jì)數(shù)器和特殊功能寄存器中的看門狗定時(shí)器復(fù)位存儲(chǔ)器(WDTRST)構(gòu)成。WDT 在默認(rèn)情況下無法工作;為了激活WDT,用戶必須往WDTRST 寄存器(地址:0A6H)中依次寫入01EH 和0E1H。當(dāng)WDT激活后,晶振工作,WDT在每個(gè)機(jī)器周期都會(huì)增加。WDT計(jì)時(shí)周期依賴于外部時(shí)鐘頻

35、率。除了復(fù)位(硬件復(fù)位或WDT溢出復(fù)位),沒有辦法停止WDT工作。當(dāng)WDT溢出,它將驅(qū)動(dòng)RSR引腳輸出一個(gè)高電平。l 可編程串口(UART)在AT89S52中,UART 的操作與AT89S52 和AT89C52 一樣。AT89S52系列單片機(jī)的串行通信口可以工作于同步和異步通信方式。當(dāng)工作于異步方式時(shí),它具有全雙工的操作功能,也就是說,它可以同時(shí)進(jìn)行數(shù)據(jù)的發(fā)送和接收。串行口內(nèi)的接收器采用的是雙緩沖結(jié)構(gòu),能夠在接收到的第一個(gè)字節(jié)從接收寄存器讀走之前就開始接收第二個(gè)字節(jié)(當(dāng)然,如果第二個(gè)字節(jié)接收完畢,而第一個(gè)字節(jié)仍然沒有被讀走,那將會(huì)丟掉一個(gè)字節(jié))。串行口的發(fā)送和接收操作都是通過特殊功能寄存器中的

36、數(shù)據(jù)緩沖寄存器SBUF進(jìn)行的,但在SBUF的內(nèi)部,接收寄存器和發(fā)送寄存器在物理結(jié)構(gòu)上是完全獨(dú)立的。如果將數(shù)據(jù)寫入SBUF,數(shù)據(jù)會(huì)被送入發(fā)送寄存器準(zhǔn)備發(fā)送。如果執(zhí)行SBUF指令,則讀出的數(shù)據(jù)一定來自接收緩存器。因此,CPU對(duì)SBUF的讀寫,實(shí)際上是分別訪問2個(gè)不同的寄存器。這2個(gè)寄存器的功能決不能混淆。l 振蕩電路:AT89S52系列單片機(jī)的內(nèi)部振蕩器,由一個(gè)單極反相器組成。XTAL1反相器的輸入,XTAL2為反相器的輸出??梢岳盟鼉?nèi)部的振蕩器產(chǎn)生時(shí)鐘,只要XTAL1和XTAL2引腳上一個(gè)晶體及電容組成的并聯(lián)諧振電路,便構(gòu)成一個(gè)完整的振蕩信號(hào)發(fā)生器,此方式稱為內(nèi)部方式。另一種方式由外部時(shí)鐘源提

37、供一個(gè)時(shí)鐘信號(hào)到XTAL1端輸入,而XTAL2端浮空。在組成一個(gè)單片機(jī)應(yīng)用系統(tǒng)時(shí),多數(shù)采用這種方式,這種方式結(jié)構(gòu)緊湊,成本低廉,可靠性高。在電路中,對(duì)電容C1和C2的值要求不是很嚴(yán)格,如果使用高質(zhì)的晶振,則不管頻率為多少,C1、C2通常都選擇30pF。l 定時(shí)/計(jì)數(shù)器:AT89S52單片機(jī)內(nèi)含有2個(gè)16位的定時(shí)器/計(jì)數(shù)器。當(dāng)用于定時(shí)器方式時(shí),定時(shí)器的輸入來自內(nèi)部時(shí)鐘發(fā)生電路,每過一個(gè)機(jī)器周期,定時(shí)器加1,而一個(gè)機(jī)器周期包含有12個(gè)振蕩周期,所以,定時(shí)器的技術(shù)頻率為晶振頻率的1/12,而計(jì)數(shù)頻率最高為晶振頻率的1/24。為了實(shí)現(xiàn)定時(shí)和計(jì)數(shù)功能,定時(shí)器中含有3種基本的寄存器:控制寄存器、方式寄存器

38、和定時(shí)器/計(jì)數(shù)器。控制寄存器是一個(gè)8位的寄存器,用于控制定時(shí)器的工作狀態(tài),方式寄存器是一個(gè)8位的寄存器,用于確定定時(shí)器的工作方式,定時(shí)器/計(jì)數(shù)器是16位的計(jì)數(shù)器,分為高字節(jié)和低字節(jié)兩部分。l RAM:高于7FH內(nèi)部數(shù)據(jù)存儲(chǔ)器的地址是8位的,也就是說其地址空間只有256字節(jié),但內(nèi)部RAM的尋址方式實(shí)際上可提供384字節(jié)。的直接地址訪問同一個(gè)存儲(chǔ)空間,高于7FH的間接地址訪問另一個(gè)存儲(chǔ)空間。這樣,雖然高128字節(jié)區(qū)分與專用寄器 ,即特殊功能寄存器區(qū)的地址是重合的,但實(shí)際上它們是分開的。究竟訪問哪一區(qū),存是通過不同的尋址方式加以區(qū)分的。l SFR:SFR是具有特殊功能的所有寄存器的集合,共含有22個(gè)

39、不同寄存器,它們的地址分配在80HFFH中。雖然如此,不是所有的單元都被特殊功能寄存器占用,未被占用的單元,其內(nèi)容是不確定的。如對(duì)這些單元進(jìn)行讀操作,得到的是一些隨機(jī)數(shù),而寫入則無效,所以在編程時(shí)不應(yīng)該將數(shù)據(jù)寫入這些未確定的地址單元中,特殊功能寄存器主要有累加器ACC、B寄存器、程序狀態(tài)字寄存器PSW、堆棧指針SP、數(shù)據(jù)指針DPTR、I/O端口、串行口數(shù)據(jù)緩沖器SBUF、定時(shí)器寄存器、捕捉寄存器、控制寄存器。l 中斷系統(tǒng):AT89S52單片機(jī)有6個(gè)中斷源,中斷系統(tǒng)主要由中斷允許寄存器IE、中斷優(yōu)先級(jí)寄存器IP、優(yōu)先級(jí)結(jié)構(gòu)和一些邏輯門組成。IE寄存器用于允許或禁止中斷;IP寄存器用于確定中斷源的

40、優(yōu)先級(jí)別;優(yōu)先級(jí)結(jié)構(gòu)用于執(zhí)行中斷源的優(yōu)先排序;有關(guān)邏輯門用于輸入中斷請(qǐng)求信號(hào)。在整個(gè)中斷響應(yīng)過程中CPU所執(zhí)行的操作步驟如下:(1)完成當(dāng)前指令的操作(2)將PC內(nèi)容壓入堆棧(3)保存當(dāng)前的中斷狀態(tài)(4)阻止同級(jí)的中斷請(qǐng)求(5)將中斷程序入口地址送PC寄存器(6)執(zhí)行中斷服務(wù)程序(7)返回2.2 時(shí)鐘芯片DS1302接口設(shè)計(jì)與性能分析2.2.1 DS1302性能簡(jiǎn)介DS1302是Dallas公司生產(chǎn)的一種實(shí)時(shí)時(shí)鐘芯片。它通過串行方式與單片機(jī)進(jìn)行數(shù)據(jù)傳送,能夠向單片機(jī)提供包括秒、分、時(shí)、日、月、年等在內(nèi)的實(shí)時(shí)時(shí)間信息,并可對(duì)月末日期、閏年天數(shù)自動(dòng)進(jìn)行調(diào)整;它還擁有用于主電源和備份電源的雙電源引腳

41、,在主電源關(guān)閉的情況下,也能保持時(shí)鐘的連續(xù)運(yùn)行。另外,它還能提供31字節(jié)的用于高速數(shù)據(jù)暫存的RAM。DS1302時(shí)鐘芯片內(nèi)主要包括移位寄存器、控制邏輯電路、振蕩器。DS1302與單片機(jī)系統(tǒng)的數(shù)據(jù)傳送依靠RST,I/O,SCLK三根端線即可完成。其工作過程可概括為:首先系統(tǒng)RST引腳驅(qū)動(dòng)至高電平,然后在SCLK時(shí)鐘脈沖的作用下,通過I/O引腳向DS1302輸入地址/命令字節(jié),隨后再在SCLK時(shí)鐘脈沖的配合下,從I/O引腳寫入或讀出相應(yīng)的數(shù)據(jù)字節(jié)。因此,其與單片機(jī)之間的數(shù)據(jù)傳送是十分容易實(shí)現(xiàn)的,DS1302的引腳排列及內(nèi)部結(jié)構(gòu)圖如圖2:DS1302引腳說明: X1,X2 32.768kHz晶振引腳

42、GND 地線RST 復(fù)位端I/O 數(shù)據(jù)輸入/輸出端口SCLK 串行時(shí)鐘端口VCC1 慢速充電引腳VCC2 電源引腳 圖2 DS1302管腳 2.2.2 DS1302接口電路設(shè)計(jì)1時(shí)鐘芯片DS1302的接口電路及工作原理:圖3 DS1302與MCU接口電路圖3為DS1302的接口電路,其中Vcc1為后備電源,Vcc2為主電源。VCC1在單電源與電池供電的系統(tǒng)中提供低電源并提供低功率的電池備份。VCC2在雙電源系統(tǒng)中提供主電源,在這種運(yùn)用方式中VCC1連接到備份電源,以便在沒有主電源的情況下能保存時(shí)間信息以及數(shù)據(jù)。DS1302由VCC1或VCC2 兩者中較大者供電。當(dāng)VCC2大于VCC1+0.2V

43、時(shí),VCC2給DS1302供電。當(dāng)VCC2小于VCC1時(shí),DS1302由VCC1供電。 DS1302在每次進(jìn)行讀、寫程序前都必須初始化,先把SCLK端置 “0”,接著把RST端置“1”,最后才給予SCLK脈沖;讀/寫時(shí)序如下圖5所示。表-1為DS1302的控制字,此控制字的位7必須置1,若為0則不能對(duì)DS1302進(jìn)行讀寫數(shù)據(jù)。對(duì)于位6,若對(duì)時(shí)間進(jìn)行讀/寫時(shí),CK=0,對(duì)程序進(jìn)行讀/寫時(shí)RAM=1。位1至位5指操作單元的地址。位0是讀/寫操作位,進(jìn)行讀操作時(shí),該位為1;進(jìn)行寫操作時(shí),該位為0??刂谱止?jié)總是從最低位開始輸入/輸出的。表-2為DS1302的日歷、時(shí)間寄存器內(nèi)容:“CH”是時(shí)鐘暫停標(biāo)志

44、位,當(dāng)該位為1時(shí),時(shí)鐘振蕩器停止,DS1302處于低功耗狀態(tài);當(dāng)該位為0時(shí),時(shí)鐘開始運(yùn)行。“WP”是寫保護(hù)位,在任何的對(duì)時(shí)鐘和RAM的寫操作之前,“WP”必須為0。當(dāng)“WP”為1時(shí),寫保護(hù)位防止對(duì)任一寄存器的寫操作。2、DS1302的控制字DS1302的控制字如表2所示??刂谱止?jié)的高有效位(位7)必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫入DS1302中,位6如果0,則表示存取日歷時(shí)鐘數(shù)據(jù),為1表示存取RAM數(shù)據(jù);位5至位1指示操作單元的地址;最低有效位(位0)如為1表示進(jìn)行讀操作,為0表示進(jìn)行寫操作??刂谱止?jié)總是從最低位開始輸出。表2 DS1302的控制字格式 1 RAM/CKA4A3A2A1

45、A0RD/WR3、數(shù)據(jù)輸入輸出(I/O)在控制指令字輸入后的下一個(gè)SCLK時(shí)鐘的上升沿時(shí),數(shù)據(jù)被寫入DS1302,數(shù)據(jù)輸入從低位即位0開始。同樣,在緊跟8位的控制指令字后的下一個(gè)SCLK脈沖的下降沿讀出DS1302的數(shù)據(jù),讀出數(shù)據(jù)時(shí)從低位0位到高位7。如下圖4所示。 圖4 DS1302讀/寫時(shí)序圖4、DS1302的寄存器DS1302有12個(gè)寄存器,其中有7個(gè)寄存器與日歷、時(shí)鐘相關(guān),存放的數(shù)據(jù)位為BCD碼形式,其日歷、時(shí)間寄存器及其控制字見表3。 表3 DS1302的日歷、時(shí)間寄存器寫寄存器讀寄存器Bit7Bit6Bit5Bit7Bit3Bit2Bit1Bit080H81HCH10秒秒82H83

46、H10分分84H85H12/010時(shí)時(shí)/PM86H87H0010 日日88H89H00010月月8AH8BH00000星期8CH8DH 10年年8EH8FHWP0000000此外,DS1302 還有年份寄存器、控制寄存器、充電寄存器、時(shí)鐘突發(fā)寄存器及與RAM相關(guān)的寄存器等。時(shí)鐘突發(fā)寄存器可一次性順序讀寫除充電寄存器外的所有寄存器內(nèi)容。 DS1302與RAM相關(guān)的寄存器分為兩類:一類是單個(gè)RAM單元,共31個(gè),每個(gè)單元組態(tài)為一個(gè)8位的字節(jié),其命令控制字為C0HFDH,其中奇數(shù)為讀操作,偶數(shù)為寫操作;另一類為突發(fā)方式下的RAM寄存器,此方式下可一次性讀寫所有的RAM的31個(gè)字節(jié),命令控制字為FEH

47、(寫)、FFH(讀)。2.3 溫度芯片DS18B20接口設(shè)計(jì)與性能分析2.3.1 DS18B20性能簡(jiǎn)介1.DS18B20的主要特性DS18B20溫度傳感器是美國(guó)DALLAS半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等元件相比,它能直接讀出被測(cè)溫度,并且可根據(jù)實(shí)際要求通過簡(jiǎn)單的編程實(shí)現(xiàn)9-12位的數(shù)字值讀數(shù)方式?,F(xiàn)場(chǎng)溫度直接以"一線總線"的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。適合于惡劣環(huán)境的現(xiàn)場(chǎng)溫度測(cè)量,如:環(huán)境控制、設(shè)備或過程控制、測(cè)溫類消費(fèi)電子產(chǎn)品等。與前一代產(chǎn)品不同,新的產(chǎn)品支持3V5.5V的電壓范圍,使系統(tǒng)設(shè)計(jì)更靈活、方便。其性能特點(diǎn)可歸納如

48、下:獨(dú)特的單線接口僅需要一個(gè)端口引腳進(jìn)行通信;測(cè)溫范圍在-55到125,分辨率最大可達(dá)0.0625;采用了3線制與單片機(jī)相連,減少了外部硬件電路;零待機(jī)功耗;可通過數(shù)據(jù)線供電,電壓范圍在3.0V-5.5V;用戶可定義的非易失性溫度報(bào)警設(shè)置;報(bào)警搜索命令識(shí)別并標(biāo)志超過程序限定溫度(溫度報(bào)警條件)的器件; 負(fù)電壓特性,電源極性接反時(shí),溫度計(jì)不會(huì)因發(fā)熱燒毀,只是不能正常工作。2.DS18B20工作原理    DS18B20的讀寫時(shí)序和測(cè)溫原理與DS1820相同,只是得到的溫度值的位數(shù)因分辨率不同而不同,且溫度轉(zhuǎn)換時(shí)的延時(shí)時(shí)間由2s減為750ms。 DS18B20測(cè)溫原理

49、如圖5所示。圖中低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給計(jì)數(shù)器1。高溫度系數(shù)晶振隨溫度變化其振蕩率明顯改變,所產(chǎn)生的信號(hào)作為計(jì)數(shù)器2的脈沖輸入。計(jì)數(shù)器1和溫度寄存器被預(yù)置在55所對(duì)應(yīng)的一個(gè)基數(shù)值。計(jì)數(shù)器1對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行減法計(jì)數(shù),當(dāng)計(jì)數(shù)器1的預(yù)置值減到0時(shí),溫度寄存器的值將加1,計(jì)數(shù)器1的預(yù)置將重新被裝入,計(jì)數(shù)器1重新開始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù),如此循環(huán)直到計(jì)數(shù)器2計(jì)數(shù)到0時(shí),停止溫度寄存器值的累加,此時(shí)溫度寄存器中的數(shù)值即為所測(cè)溫度。圖5中的斜率累加器用于補(bǔ)償和修正測(cè)溫過程中的非線性,其輸出用于修正計(jì)數(shù)器1的預(yù)置值。LSB位置/

50、清除增加計(jì)數(shù)器1斜率累加器計(jì)數(shù)比較器溫度寄存器減到0預(yù)置計(jì)數(shù)器2減到0停止預(yù)置低溫度系數(shù)晶振高溫度系數(shù)晶振圖5 DS18B20測(cè)溫原理2.3.2 DS18B20接口電路設(shè)計(jì)如6圖所示,該系統(tǒng)中采用數(shù)字式溫度傳感器DS18B20,具有測(cè)量精度高,電路連接簡(jiǎn)單特點(diǎn),此類傳感器僅需要一條數(shù)據(jù)線進(jìn)行數(shù)據(jù)傳輸,用P3.7與DS18B20的DQ口連接,Vcc接電源,GND接地。 圖6溫度傳感器DS18B20接口電路2.3.3 DS18B20的工作時(shí)序1、復(fù)位時(shí)序圖圖7復(fù)位時(shí)序圖2 . 讀時(shí)序圖圖8讀時(shí)序圖3、寫時(shí)序圖圖9 寫時(shí)序圖 3、工作時(shí)序 1)總線時(shí)序圖10 總線時(shí)序2)寫周期時(shí)序圖11寫周期時(shí)序3

51、)起始/停止時(shí)序圖12 起始/停止時(shí)序4)應(yīng)答時(shí)序圖13 應(yīng)答時(shí)序5)立即地址讀時(shí)序圖14 立即地址讀時(shí)序2.4 LCD顯示模塊2.4.1 LCD1602的特性及使用說明LCD1602的接口信號(hào)說明如表4:表4 LCM1602的接口信號(hào)編號(hào)引腳符號(hào)功能說明編號(hào)引腳符號(hào)功能說明1VSS電源地9D2DATA I/O2VDD電源正極10D3DATA I/O3VL液晶顯示偏壓信號(hào)11D4DATA I/O4RS數(shù)據(jù)/命令選擇端(H/L)12D5DATA I/O5R/W讀/寫選擇端(H/L)13D6DATA I/O6E使能信號(hào)14D7DATA I/O7D0DATA I/O15BLA背光正極8D1DATA

52、I/O16BLK背光負(fù)極2、基本操作時(shí)序如下:1)讀狀態(tài):RS=L,RW=H,E=H2)寫指令:RS=L,RW=L,D0D7=指令碼,E=高脈沖3)讀數(shù)據(jù):RS=H,RW=H,E=H4)寫數(shù)據(jù):RS=H,RW=L,D0D7=數(shù)據(jù),E=高脈沖3、初始化設(shè)置1)顯示模式設(shè)置如表5:表5顯示模式設(shè)置指令碼功能00111000設(shè)置16*2顯示,5*7點(diǎn)陣,8位數(shù)據(jù)接口2) 顯示開/關(guān)及光標(biāo)設(shè)置如表6: 表6 顯示開/關(guān)及光標(biāo)設(shè)置指令碼功能00001DCBD=1開顯示;D=0關(guān)顯示C=1顯示光標(biāo);C=0不顯示光標(biāo)B=1光標(biāo)閃爍;B=0光標(biāo)不顯示000001NSN=1當(dāng)讀或?qū)懸粋€(gè)字符后地址指針加一,且光標(biāo)

53、加一N=0當(dāng)讀或?qū)懸粋€(gè)字符后地址指針減一,且光標(biāo)減一S=1當(dāng)寫一個(gè)字符,整屏顯示左移(N=1)2.4.2 LCD1602與MCU的接口電路LCD的D0D7分別接單片機(jī)的的P2口,作為數(shù)據(jù)線,因?yàn)镻0口內(nèi)部沒有上拉電阻,所以外部另外加上10K的上拉電阻;P1.0P1.2分別接LCD的RS、RW、E三個(gè)控制管腳;RV1用來調(diào)節(jié)LCD的顯示灰度;BLK、BLA為背光的陰極和陽極,接上相應(yīng)電平即點(diǎn)亮背光燈。2.5 按鍵模塊設(shè)計(jì)本系統(tǒng)用到了5個(gè)按鍵,其中一個(gè)用作系統(tǒng)手動(dòng)復(fù)位,另外4個(gè)采用獨(dú)立按鍵,該種接法查詢簡(jiǎn)單,程序處理簡(jiǎn)單,可節(jié)省CPU資源,按鍵電路如圖15所示,4個(gè)獨(dú)立按鍵分別與AT89S52的P3.0、P3.1、P3.2、P3.3接口相連。圖15 按鍵電路對(duì)以上4個(gè)按鍵作簡(jiǎn)要說明:S4SET 鍵,S3UP鍵,S2DOWN鍵,S5OUT/STOP鍵。SET 鍵:按下SET鍵進(jìn)入時(shí)間校準(zhǔn)狀態(tài),按一下進(jìn)入秒調(diào)整,兩下分調(diào)整,依此類推可進(jìn)行各年月日,時(shí)分秒以及星期的校準(zhǔn);UP鍵:當(dāng)SET鍵按下時(shí),UP進(jìn)行SET選定項(xiàng)(如:小時(shí))的加操作;DOWN鍵:當(dāng)SET

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論