版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、畢 業(yè) 設(shè) 計(jì) 論 文基于單片機(jī)的時(shí)間溫度顯示系統(tǒng)xxx 指導(dǎo)老師姓名: xxx專 業(yè) 名 稱:物聯(lián)網(wǎng)工程學(xué)院班 級(jí) 學(xué) 號(hào): 11131131論文提交日期: 20xx年x月x日論文答辯日期: 20xx年 月 日20xx年 月 日 摘 要【摘要】:該系統(tǒng)是設(shè)計(jì)一個(gè)能在液晶屏幕上顯示當(dāng)前日期和溫度的51單片機(jī)控制系統(tǒng)。本設(shè)計(jì)多功能數(shù)字時(shí)鐘系統(tǒng)是由中央控制器、時(shí)鐘系統(tǒng)、溫度檢測(cè)器、顯示器和鍵盤部分主成??刂破鞑捎脝纹瑱C(jī)at89c51,溫度檢測(cè)部分采用ds18b20溫度傳感器,時(shí)鐘系統(tǒng)采用時(shí)鐘芯片ds1302,用lcd液晶1602a作為顯示器。單片機(jī)通過(guò)時(shí)鐘芯片ds1302獲取時(shí)間數(shù)據(jù)對(duì)數(shù)據(jù)處理后顯
2、示時(shí)間,溫度傳感器ds18b20采集溫度信號(hào)送給單片機(jī)處理,單片機(jī)再把時(shí)間數(shù)據(jù)和溫度數(shù)據(jù)送液晶顯示器1602顯示,結(jié)果能在lcd正常顯示時(shí)間和溫度值。【關(guān)鍵詞】:at89c51單片機(jī) 數(shù)字溫度傳感器ds18b20 時(shí)鐘芯片ds1302lcd1602液晶顯示器 abstract 【abstract】: the system is to design a can on the lcd screen displays the current date and temperature of 51 single-chip microcomputer control system. this design
3、 multi-function digital clock system is determined by the central controller, clock system, temperature detector, a display and a keyboard part as a lord. controller by single chip microcomputer at89c51, part adopts ds18b20 temperature sensor temperature detection, uses the clock chip ds1302 clock s
4、ystem, using lcd 1602 a as a display. single-chip microcomputer data obtained by the clock chip ds1302 time to show time after data processing, temperature sensor ds18b20 collecting temperature signal to microcontroller processing, single chip microcomputer to send time data and temperature data to
5、1602 lcd display, can result in lcd display normal time and temperature. 【keywords】: at89c51 scm digital temperature sensor clock chip character type liquid crystal display 目 錄第一章 設(shè)計(jì)原理及要求21.1設(shè)計(jì)原理. 21.2設(shè)計(jì)思路及實(shí)現(xiàn)功能. 2第二章 系統(tǒng)硬件組成32.1 at89c51芯片介紹32.1.1at89c51簡(jiǎn)介 32.1.2.主要性能. 32.1.3.管腳說(shuō)明 32.2單片機(jī)系統(tǒng)的晶振32.3單片機(jī)系
6、統(tǒng)的復(fù)位 42.4 lcd1602液晶顯示屏42.4.1引腳功能及接口方式42.4.2 led1602的內(nèi)部控制器52.5數(shù)字溫度傳感器ds18b2062.5.1 ds18b20封裝圖及接口方式圖62.5.2 ds18b20功能命令集62.5.3 ds18b20復(fù)位應(yīng)答關(guān)系及讀寫方式72.6時(shí)鐘芯片ds130282.6.1 ds1302 的引腳功能及接口方式92.6.2 ds1302 內(nèi)部寄存器102.6.3 ds1302數(shù)據(jù)傳送及讀寫時(shí)序方式112.7按鍵部分122.8 max232芯片12第三章 系統(tǒng)軟件實(shí)現(xiàn)方式143.1主程序流程圖143.2液晶顯示方式153.3 時(shí)間轉(zhuǎn)換方式163.4
7、溫度轉(zhuǎn)換方式16第四章 調(diào)試現(xiàn)象174.1運(yùn)行環(huán)境174.2程序下載184.3實(shí)驗(yàn)過(guò)程現(xiàn)象. 19 總結(jié)20致謝21參考文獻(xiàn)22附錄23附錄a:原理圖23附錄b: 元器件清單23附錄c:設(shè)計(jì)程序24 緒 論隨著社會(huì)文化的不斷發(fā)展,人們的消費(fèi)標(biāo)準(zhǔn)不斷改變,時(shí)間顯示器更是扮演著越來(lái)越重要的角色,不論是汽車站,火車站,股市交易市場(chǎng),還是學(xué)校都離不開它,然而傳統(tǒng)的時(shí)間顯示器不論是在顯示效果、耗電量還是可修改性上都無(wú)法滿足當(dāng)前社會(huì)的需求,傳統(tǒng)的時(shí)間顯示器亟待改進(jìn)。由于單片機(jī)技術(shù)的不斷發(fā)展與傳統(tǒng)的時(shí)間顯示器在顯示效果以及可修改性上都有著無(wú)法比擬的優(yōu)勢(shì),而且單片機(jī)的日益平民化以及l(fā)cd技術(shù)的不斷創(chuàng)新,使得高
8、亮度高清晰的lcd不斷推廣,為其在生活的應(yīng)用奠定了基礎(chǔ)。并且由于電子產(chǎn)品的不斷改良,設(shè)計(jì)更加的人性化;不僅為用戶提供方便快捷的操作界面,而且設(shè)計(jì)更加實(shí)用方便,為用戶會(huì)提供更有效的信息.像密碼鎖、智能小車、智能溫控等在人們?nèi)粘I钪械膽?yīng)用;還有一些工業(yè)生產(chǎn)中的智能控制方面的應(yīng)用,在很多工廠里生產(chǎn)的儀器的主控芯片和顯示芯片就是單片機(jī),其中有兩個(gè)是控制電機(jī)的左右位移和上下高度;比較的實(shí)用方便。并且單片機(jī)的開發(fā)周期較其他芯片要快,有較強(qiáng)的商業(yè)價(jià)值,也為開發(fā)者提供很大的開發(fā)空間第一章 設(shè)計(jì)原理及要求1.1設(shè)計(jì)原理ds1302包括時(shí)鐘/日歷寄存器和8位的數(shù)據(jù)暫存寄存器,數(shù)據(jù)通信通過(guò)一條串行的輸入輸出口,實(shí)
9、時(shí)時(shí)鐘日歷提供包括秒分時(shí)日期月份和年份的信息。時(shí)間要能夠顯示年,月,日,時(shí),分,秒,周,并且要具有閏年補(bǔ)償功能,年,月,日,時(shí),分,秒,周能夠正常進(jìn)位1.2設(shè)計(jì)思路及實(shí)現(xiàn)功能 整個(gè)系統(tǒng)主要由五個(gè)模塊組成,包括單片機(jī)控制模塊,液晶顯示模塊,時(shí)鐘模塊,鍵盤模塊,溫度采集模塊,其系統(tǒng)的整體設(shè)計(jì)框圖如圖1-1所示:at89c51控制模塊lcd液晶顯示模塊 ds1302時(shí)鐘模塊鍵盤模塊 溫度采集模塊 圖1-1 系統(tǒng)的整體設(shè)計(jì)框圖 第二章 系統(tǒng)硬件組成2.1 at89c51芯片介紹 2.1.1.at89c51簡(jiǎn)介 at89c51是一種帶4k字節(jié)flash存儲(chǔ)器(fperom-flash programma
10、ble and erasable read only memory)的低電壓、高性能coms 8位微處理器,俗稱單片機(jī)。at89c51是一種帶2k字節(jié)閃存可編程可擦除只讀存儲(chǔ)器的單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除1000次。該器件采用atmel高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的mcs-51指令集和輸出管腳相兼容。由于將多功能8位cpu和閃爍存儲(chǔ)器組合在單個(gè)芯片中。2.1.2.主要性能 圖2-1 at89c51引腳圖 與mcs-51單片機(jī)產(chǎn)品兼容 、8k字節(jié)在系統(tǒng)可編程flash存儲(chǔ)器、 1000次擦寫周期、 全靜態(tài)操作:0hz33hz 、 三級(jí)加密程序存儲(chǔ)器 、 32個(gè)可編
11、程i/o口線 、三個(gè)16位定時(shí)器/計(jì)數(shù)器、 八個(gè)中斷源 、全雙工uart串行通道、 低功耗空閑和掉電模式 、掉電后中斷可喚醒 、看門狗定時(shí)器 、雙數(shù)據(jù)指針、掉電標(biāo)識(shí)符。 2.1.3.管腳說(shuō)明 1.vcc:供電電壓 2.gnd:接地 3.xtal1振蕩器反相放大器及內(nèi)部時(shí)鐘發(fā)生器的輸入端 4.xtal2振蕩器反相放大器的輸出端 5.rst復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持rst腳兩個(gè)機(jī)器周期的高電平時(shí)間。 6.ea/vpp片外程序存儲(chǔ)器訪問(wèn) 允許信號(hào)。欲使cpu僅訪問(wèn)外部程序存儲(chǔ)器(地址為0000h-ffffh),ea端必須保持低電平(接地),如果ea端為高電平(接vcc端),則cpu則執(zhí)行內(nèi)
12、部程序存儲(chǔ)器中的指令。 7.p1口,p2口p1,p2是一組帶內(nèi)部上拉電阻的8位雙向i/o口。運(yùn)行時(shí)通過(guò)p1口控制驅(qū)動(dòng)電路的工作,將數(shù)據(jù)送到數(shù)碼管,顯示相應(yīng)的段碼,為了達(dá)到減少功耗或滿足端口對(duì)最大電流的限制,應(yīng)加上一限流電阻。p2.0p2.7口控制數(shù)碼管的位選,使六個(gè)數(shù)碼管輪流顯示數(shù)據(jù),等于0時(shí)位選三極管導(dǎo)通,等于1 時(shí)位選三極管截止。2.2單片機(jī)系統(tǒng)的晶振電路 晶振就是我們所需要的一種理想結(jié)構(gòu),使用晶振和電容可以組成一個(gè)選頻網(wǎng)絡(luò),利用單片機(jī)內(nèi)部時(shí)鐘,就可以產(chǎn)生一個(gè)和晶振頻率一樣的時(shí)鐘信號(hào)。本設(shè)計(jì)的晶振電路圖如下圖2-2所示:圖2-2 晶振電路原理圖2.3單片機(jī)的復(fù)位電路復(fù)位電路的目的就是在上電
13、的瞬間提供一個(gè)與正常工作狀態(tài)下相反的電平。一般利用電容電壓不能突變的原理,將電容與電阻串聯(lián),上電時(shí)刻,電容沒(méi)有充電,兩端電壓為零,此時(shí),提供復(fù)位脈沖,電源不斷的給電容充電,直至電容兩端電壓為電源電壓,電路進(jìn)入正常工作狀態(tài)。其復(fù)位電路如圖右圖2-3所示: 圖2-3 復(fù)位電路圖2.4 lcd1602液晶顯示屏1602液晶也叫1602字符型液晶,它是一種專門用來(lái)顯示字母、數(shù)字、符號(hào)等的點(diǎn)陣型液晶模塊。它由若干個(gè)5x7或者5x11等點(diǎn)陣字符位組成,每個(gè)點(diǎn)陣字符位都可以顯示一個(gè)字符,每位之間有一個(gè)點(diǎn)距的間隔,每行之間也有間隔,起到了字符間距和行間距的作用。2.4.1引腳功能及接口方式管腳功能:1.第1腳
14、:vss為電源地 2.第2腳:vcc接5v電源正極 3.第3腳:v0為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高4.第4腳:rs為寄存器選擇,高電平1時(shí)選擇數(shù)據(jù)寄存器、低電平0時(shí)選擇指令寄存器 圖2-4 lcd1602引腳圖5.第5腳:rw為讀寫信號(hào)線,高電平(1)時(shí)進(jìn)行讀操作,低電平(0)時(shí)進(jìn)行寫操作6.第6腳:e(或en)端為使能(enable)端 7.第714腳:d0d7為8位雙向數(shù)據(jù)端 8.第1516腳:空腳或背燈電源,15腳背光正極,16腳背光負(fù)極。1602在本設(shè)計(jì)中的接口方式如下圖2-5所示: 圖2-5 液晶的接口方式 2.4.2 led1602的內(nèi)部控制器
15、1602液晶模塊內(nèi)部的控制器共有11條控制指令,液晶模塊的讀寫操作、屏幕和光標(biāo)的操作都是通過(guò)指令編程來(lái)實(shí)現(xiàn)的,如表2-1所示為lcd1602控制命令表表2-1 1602控制命令表1清顯示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向ddram或cgram中寫數(shù)據(jù)11從cgram或ddram
16、讀數(shù)11從ddram或cgram中讀出數(shù)據(jù)指令1:清顯示,指令碼01h,光標(biāo)復(fù)位到地址00h位置指令2:光標(biāo)復(fù)位,返回到地址00h位置指令3:光標(biāo)和顯示模式設(shè)置 i/d:光標(biāo)移動(dòng)方向,高電平右移,低電平左移 s:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無(wú)效。指令4:顯示開關(guān)控制。 d:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示 c:控制光標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無(wú)光標(biāo) b:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。指令5:光標(biāo)或顯示移位 s/c:高電平時(shí)移動(dòng)顯示的文字,低電平時(shí)移動(dòng)光標(biāo)。指令6:功能設(shè)置命令 dl:高電平時(shí)為4位總線,低電平時(shí)為8
17、位總線 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ù)。2.5 數(shù)字溫度傳感器ds18b20 ds18b20是dallas公司生產(chǎn)的一線式數(shù)字溫度傳感器。ds18b20通過(guò)一個(gè)單線接口發(fā)送或接受信息,因此在中央處理器和ds18b20之間僅需一條連接線(加上地線)。它的測(cè)溫范圍為-55125,并且在-1085精度為5。2.5.1
18、 ds18b20的引腳及接口方式引腳功能:1.gnd 電壓地 2.dq 單數(shù)據(jù)總線 3.vdd 電源電壓 4.nc 空引腳 如圖2-6為本設(shè)計(jì)中ds18b20的接口方式圖: 圖2-6 ds18b20接口方式圖2.5.2 ds18b20功能命令集在主機(jī)發(fā)出rom 命令以訪問(wèn)某個(gè)指定的ds18b20, 接著就可以發(fā)出ds18b20 支持的某個(gè)功能命令。這些命令允許主機(jī)寫入或讀出ds18b20 暫存器,啟動(dòng)溫度轉(zhuǎn)換以及判斷從機(jī)的供電方式。ds18b20功能命令集如表2-2所示:表2-2 ds18b20功能命令集注:1.在溫度轉(zhuǎn)換和復(fù)制暫存器數(shù)據(jù)至eeprom 期間,主機(jī)必須在單總線上允許強(qiáng)上拉,并且
19、在此期間總線上不能進(jìn)行其它數(shù)據(jù)傳輸。2.通過(guò)發(fā)出復(fù)位脈沖,主機(jī)能夠在任何時(shí)候中斷數(shù)據(jù)傳輸。3.在復(fù)位脈沖發(fā)出前,必須寫入全部的三個(gè)字節(jié)。 2.5.3 ds18b20復(fù)位應(yīng)答關(guān)系及讀寫方式ds18b20每一次通信之前必須進(jìn)行復(fù)位,復(fù)位的時(shí)間、等待時(shí)間、回應(yīng)時(shí)間應(yīng)嚴(yán)格按時(shí)序編程,圖2-7為ds18b20的復(fù)位應(yīng)答圖: 圖2-7 ds18b20復(fù)位及應(yīng)答圖ds18b20的數(shù)據(jù)讀寫是通過(guò)時(shí)序處理位和命令字來(lái)確認(rèn)信息交換的。寫時(shí)序分為寫“0”和寫“1”,時(shí)序如圖7。在寫數(shù)據(jù)的前15us總線需要是被控制器拉置低電平,而后則將是芯片對(duì)總線數(shù)據(jù)的采樣時(shí)間,采樣時(shí)間在1560us,采樣時(shí)間內(nèi)如果控制器將總線拉高
20、則表示寫“1”,如果控制器將總線拉低則表示寫“0”。每一位的發(fā)送都應(yīng)該有一個(gè)至少15us的低電平起始位,隨后的數(shù)據(jù)“0”或“1”應(yīng)該在45us內(nèi)完成。整個(gè)位的發(fā)送時(shí)間應(yīng)該保持在60120us,否則不能保證通信的正常。如圖2-8為ds18b20的寫時(shí)序圖: 圖2-8寫時(shí)序圖讀時(shí)序時(shí)控制時(shí)的采樣時(shí)間應(yīng)該更加的精確才行,讀數(shù)據(jù)也是必須先由主機(jī)產(chǎn)生至少1us的低電平,表示讀時(shí)間的起始。隨后在總線被釋放后的15us中ds18b20會(huì)發(fā)送內(nèi)部數(shù)據(jù)位,這時(shí)控制如果發(fā)現(xiàn)總線為高電平表示讀出“1”,如果總線為低電平則表示讀出數(shù)據(jù)“0”。每一位的讀取之前都由控制器加一個(gè)起始信號(hào)。如圖2-9為ds18b20的讀時(shí)序
21、圖: 圖2-9讀時(shí)序圖2.6 時(shí)鐘芯片ds1302ds1302 是dallas 公司推出的涓流充電時(shí)鐘芯片內(nèi)含有一個(gè)實(shí)時(shí)時(shí)鐘日歷和31 字節(jié),靜態(tài)ram 通過(guò)簡(jiǎn)單的串行接口與單片機(jī)進(jìn)行通信實(shí)時(shí)時(shí)鐘、日歷電路提供秒分時(shí)日期月年的信息,每月的天數(shù)和閏年的天數(shù)可自動(dòng)調(diào)整時(shí)鐘操作可通過(guò)am/pm 指示決定采用24 或12 小時(shí)格式。ds1302 工作時(shí)功耗很低保持?jǐn)?shù)據(jù)和時(shí)鐘信息時(shí)功率小于1mw。ds1302 是由ds1202 改進(jìn)而來(lái)增加了以下的特性雙電源管腳用于主電源和備份電源供應(yīng)vcc1 為可編程涓流充電電源附加七個(gè)字節(jié)存儲(chǔ)器它廣泛應(yīng)用于電話傳真便攜式儀器以及電池供電的儀器儀表等產(chǎn)品領(lǐng)域。 2.6
22、.1 ds1302 的引腳功能及接口方式 ds1302芯片引腳圖如圖2-10所示: 圖2-10引腳圖1.vcc1:主電源;vcc2:備份電源。 在主電源關(guān)閉的情況下,也能保持時(shí)鐘的連續(xù)運(yùn)行。ds1302由vcc1或vcc2兩者中的較大者供電。當(dāng)vcc2大于vcc1+0.2v時(shí),vcc2給ds1302供電。當(dāng)vcc2小于vcc1時(shí),ds1302由vcc1供電,上電運(yùn)行時(shí),在vcc2.0v之前,rst必須保持低電平。 2. sclk:串行時(shí)鐘,輸入??刂茢?shù)據(jù)的輸入與輸出,只有在sclk為低電平時(shí),才能將rst置為高電平。 3.i/o:三線接口時(shí)的雙向數(shù)據(jù)線。如果在傳送過(guò)程中rst置為低電平,則會(huì)終
23、止此次數(shù)據(jù)傳送,i/o引腳變?yōu)楦咦钁B(tài)。4.ce:輸入信號(hào),在讀、寫數(shù)據(jù)期間,必須為高。該引腳有兩個(gè)功能:第一,ce開始控制字訪問(wèn)移位寄存器的控制邏輯;其次,ce提供結(jié)束單字節(jié)或多字節(jié)數(shù)據(jù)傳輸?shù)姆椒ā?.rst :復(fù)位腳,rst是復(fù)位/片選線。 通過(guò)把rst輸入驅(qū)動(dòng)置高電平來(lái)啟動(dòng)所有的數(shù)據(jù)傳送。rst輸入有兩種功能:一、 rst接通控制邏輯,允許地址/命令序列送入移位寄存器;二、 rst提供終止單字節(jié)或多字節(jié)數(shù)據(jù)傳送的方法。6.x1和x2:振蕩源,外接32.768khz晶振。 ds1302接口方式圖如圖2-11所示: 圖2-11 ds1302接口方式2.6.2 ds1302 內(nèi)部寄存器ds130
24、2內(nèi)部共有12個(gè)寄存器,其中有7個(gè)寄存器與日歷、時(shí)鐘有關(guān),存放的數(shù)據(jù)位為bcd碼形式,其日歷、時(shí)間寄存器及控制字。寄存器內(nèi)容的定義如下表2-3所示: 表2-3 寄存器內(nèi)容定義表寄存器名稱命令字取值范圍定義寫操作讀操作765430秒寄存器80h81h0059ch秒(十位)秒(個(gè)位)分寄存器82h83h00590分(十位)分(個(gè)位)小時(shí)寄存器84h85h0112002312/24010a/phrhr日寄存器86h87h0128/290130013100日期(十位)日期(個(gè)位)月寄存器88h89h0112000月(十位)月(個(gè)位)星期寄存器8ah8bh0l070000星期年寄存器8ch8dh0199
25、年(十位)年(個(gè)位)寫保護(hù)寄存器8eh8fhwp0000慢充電寄存器90h91htcstcstcstcsdsdsdsds時(shí)鐘突發(fā)寄存器behbfhch:時(shí)鐘暫停位,當(dāng)此位設(shè)置為1時(shí),振蕩器停止,ds1302處于低功率的備份方式;當(dāng)此位設(shè)置為0時(shí),時(shí)鐘開始啟動(dòng)。12/24:小時(shí)寄存器的位7定義為12或24小時(shí)方式選擇位。當(dāng)它為高電平時(shí),選擇12小時(shí)方式。在12小時(shí)方式下,位5是am/pm位,此位為邏輯高電平表示pm。在24小時(shí)方式下,位5是第2個(gè)10小時(shí)位(20-23時(shí))。wp:寫保護(hù)位,寫保護(hù)寄存器的低7位(d0d6)置為0,在讀操作時(shí)總是讀出0。在對(duì)時(shí)鐘或ram進(jìn)行寫操作之前,位7(wp)必
26、須為0,當(dāng)它為高電平時(shí),寫保護(hù)位防止對(duì)任何其他寄存器進(jìn)行寫操作。 2.6.3 ds1302數(shù)據(jù)傳送及讀寫時(shí)序方式ds1302支持單字節(jié)和多字節(jié)兩種數(shù)據(jù)讀寫方式。單字節(jié)方式是在把控制命令字寫入ds1302之后的8個(gè)sclk周期的上升沿輸入/輸出數(shù)據(jù)字節(jié)。 單字節(jié)傳送方式描述如2-12所示: 圖2-12 單字節(jié)傳送方式當(dāng)命令字節(jié)為be 或bf 時(shí)ds1302 工作在多字節(jié)傳送模式8 個(gè)時(shí)鐘/日歷寄存器從寄存器0 地址開始連續(xù)讀寫從0 位開始的數(shù)據(jù)當(dāng)命令字節(jié)為fe 或ff 時(shí)ds1302 工作在多字節(jié)ram 傳送模式31 個(gè)ram 寄存器從0 地址開始連續(xù)讀寫從0 位開始的數(shù)據(jù)。多字節(jié)傳送方式描述如
27、2-13所示: 圖2-13多字節(jié)傳送方式ds1302數(shù)據(jù)傳送必須按照正確的時(shí)序才能完成,其讀寫時(shí)序如圖2-14、2-15所示圖2-14 ds1302讀時(shí)序 圖2-15 ds1302寫時(shí)序2.7 按鍵部分本設(shè)計(jì)采用的是獨(dú)立式按鍵,簡(jiǎn)單易于控制,四個(gè)按鍵通過(guò)編程實(shí)現(xiàn)一鍵多能的作用,能對(duì)時(shí)間進(jìn)行調(diào)整。 本設(shè)計(jì)的按鍵電路如圖2-16所示: 圖2-16 按鍵電路2.8 max232芯片max232芯片是美信(maxim)公司專為rs-232標(biāo)準(zhǔn)串口設(shè)計(jì)的單電源電平轉(zhuǎn)換芯片,使用+5v單電源供電。如圖2-17為max232的引腳圖: 圖2-17 max引腳圖max232的工作原理是把單片機(jī)的ttl電平轉(zhuǎn)化
28、為計(jì)算機(jī)的rs232電平。ttl電平邏輯1為+5v,邏輯0為0v。rs232電平邏輯1為+3v+15v,邏輯0為-3v-15v。也就是說(shuō)我們所轉(zhuǎn)換的數(shù)據(jù)電平+5v -(+3v+15v),0v-(-3v-15v)即可。本設(shè)計(jì)max232引腳連接圖如圖2-18所示:圖 2-18 max232引腳連接圖第三章 系統(tǒng)軟件實(shí)現(xiàn)方式3.1主程序流程圖主函數(shù)包括三個(gè)部分。時(shí)間的獲取和轉(zhuǎn)換、溫度的采集及轉(zhuǎn)換和將轉(zhuǎn)換后的數(shù)據(jù)發(fā)送到液晶屏1602上。具體如流程圖3-1所示處理讀取的溫度數(shù)值ds1302寫保護(hù)ds1302不寫保護(hù)對(duì)ds1302年、月、日、時(shí)、分、秒及星期設(shè)初值ds1302進(jìn)行寫保護(hù)1602初始化 w
29、hile讀取溫度1602顯示位置處理時(shí)鐘讀取數(shù)值在1602上寫入相關(guān)數(shù)據(jù)圖3-1 主函數(shù)流程圖3.2液晶顯示流程圖液晶初始化4位總線和雙行顯示設(shè)置 光標(biāo)右移和文字不移動(dòng)設(shè)置開顯示和光標(biāo)不作用設(shè)置顯示清屏讀取溫度值溫度顯示值的處理讀取時(shí)間寄存器值時(shí)間顯示值的處理設(shè)置顯示位置時(shí)間溫度顯示為使液晶正常顯示,先要對(duì)液晶進(jìn)行初始化,對(duì)4位總線和雙行顯示設(shè)置,對(duì)光標(biāo)定位及文字位置設(shè)置和設(shè)置開顯示和光標(biāo)作用再清屏。對(duì)讀取溫度和時(shí)間進(jìn)行數(shù)據(jù)處理,然后通過(guò)寫命令確定溫度和時(shí)間在液晶上的顯示位置,最后通過(guò)寫數(shù)據(jù)將時(shí)間和溫度顯示在液晶屏幕上。如圖3-2為液晶顯示的流程圖。 圖3-2 液晶顯示流程圖3.3 時(shí)間獲取函
30、數(shù)流程圖在本設(shè)計(jì)中分別對(duì)年月日,時(shí)分秒和星期進(jìn)行寄存然后處理。從ds1302芯片中讀取年的數(shù)據(jù),將高四位進(jìn)行ascii碼的轉(zhuǎn)換,也將低四位也進(jìn)行ascii碼的轉(zhuǎn)換,再對(duì)月、日、時(shí)、分、秒進(jìn)行類似的處理。如圖3-3為溫度轉(zhuǎn)換的流程圖:讀取時(shí)鐘“年”寄存器值器值器“年”數(shù)據(jù)處理讀取時(shí)鐘“月”寄存器讀取時(shí)鐘“秒”寄存器“月”數(shù)據(jù)處理讀取時(shí)鐘“日”寄存器“分”數(shù)據(jù)處理“時(shí)”數(shù)據(jù)處理“日”數(shù)據(jù)處理讀取時(shí)鐘“時(shí)”寄存器讀取時(shí)鐘“分”寄存器“秒”數(shù)據(jù)處理讀取時(shí)鐘“星期”寄存“星期”數(shù)據(jù)處理 圖3-3 時(shí)鐘獲取模塊流程圖3.4讀取溫度函數(shù)流程圖溫度讀取函數(shù)首先要對(duì)ds18b20進(jìn)行初始化,再跳過(guò)rom指令,然
31、后啟動(dòng)溫度轉(zhuǎn)換、延時(shí),再進(jìn)行ds18b20初始化,再跳過(guò)rom指令,然后讀取溫度,讀取溫度中要對(duì)負(fù)溫度進(jìn)行判斷,再進(jìn)行溫度轉(zhuǎn)換,最后顯示實(shí)際溫度,溫度轉(zhuǎn)換流程圖如3-4所示:ds18b20初始化延時(shí)啟動(dòng)溫度轉(zhuǎn)換初始化讀取溫度跳過(guò)rom指令跳過(guò)rom指令進(jìn)行溫度轉(zhuǎn)換返回實(shí)際溫度值圖3-4 溫度轉(zhuǎn)換圖第四章調(diào)試現(xiàn)象4.1運(yùn)行環(huán)境此實(shí)驗(yàn)還需要運(yùn)行環(huán)境,51單片機(jī)運(yùn)行的環(huán)境是keil 51。以下圖表顯示keil的開發(fā)工具以及它們相互之間的接口。如下圖4-1為程序調(diào)試圖:圖4-1 程序調(diào)試圖示4.2程序下載stc-isp 是一款單片機(jī)下載編程燒錄軟件,是針對(duì)stc系列單片機(jī)而設(shè)計(jì)的,可下載stc89系列
32、、12c2052 系列和12c5410等系列的stc單片機(jī)。如圖4-2為程序下載圖: 圖4-2 程序下載圖 4.3實(shí)驗(yàn)過(guò)程現(xiàn)象如下圖4-3,4-4為實(shí)驗(yàn)板和實(shí)驗(yàn)現(xiàn)象:圖4-3實(shí)驗(yàn)板 圖4-4 實(shí)驗(yàn)現(xiàn)象結(jié) 論通過(guò)這次的畢業(yè)設(shè)計(jì),我對(duì)單片機(jī)的知識(shí)有了進(jìn)一步的了解。大學(xué)生活即將結(jié)束,這次的畢業(yè)設(shè)計(jì)是對(duì)我們?nèi)晁鶎W(xué)知識(shí)的檢驗(yàn),以此來(lái)提高我們的綜合能力同時(shí)也對(duì)我們所學(xué)知識(shí)進(jìn)行了有效的鞏固。根據(jù)設(shè)計(jì)任務(wù),提供參考書目讓我們自己學(xué)習(xí)自己思考,對(duì)于在設(shè)計(jì)中遇到的重點(diǎn)與難點(diǎn)通過(guò)典型分析和老師的講解,啟發(fā)我們思考幫助我們掌握自學(xué)的方法達(dá)到很好的效果。這次畢業(yè)設(shè)計(jì)的課題是基于單片機(jī)的時(shí)間溫度顯示系統(tǒng),具體為設(shè)計(jì)一個(gè)
33、能在液晶屏幕上顯示當(dāng)前日期和溫度的51單片機(jī)控制系統(tǒng)。主要選取的芯片是at89c51單片機(jī),時(shí)鐘芯片ds1302,數(shù)字溫度傳感器ds18b20以及字符液晶lcd1602。剛剛拿到這課題時(shí)雖然有學(xué)過(guò)單片機(jī)但還是有點(diǎn)不知所措,結(jié)果在畫原理圖時(shí)就出現(xiàn)了很多的問(wèn)題經(jīng)過(guò)大家的努力原理圖終于完成了接下來(lái)就是制板,從未弄過(guò)的我們不知從何下手還好有會(huì)的同學(xué)教我們幫我們監(jiān)督著在他的幫助下終于完成了板子的制作。接下來(lái)更困難的是就是寫程序,雖然學(xué)過(guò)c語(yǔ)言可是只是懂一些表面的東西匯編雖然也接觸過(guò)但是也是上課老師直接給我們的所以編程是一個(gè)困難的過(guò)程沒(méi)。調(diào)試的時(shí)候我們發(fā)現(xiàn)了好多錯(cuò)誤,先是板子的焊接出現(xiàn)錯(cuò)誤,再是程序的錯(cuò)誤
34、,然后我們一遍又一遍的更改。畢業(yè)論文是對(duì)我大學(xué)三年所學(xué)基礎(chǔ)知識(shí)的專業(yè)知識(shí)的一次全面檢驗(yàn),通過(guò)撰寫論文和畢業(yè)答辯,我覺(jué)得對(duì)自己的語(yǔ)言組織能力,表達(dá)能力,溝通交際能力,運(yùn)用所學(xué)知識(shí)的能力,分析問(wèn)題并解決問(wèn)題的能力都有所提高。在此項(xiàng)目中不僅學(xué)到了技能,更重要的是學(xué)到一種團(tuán)隊(duì)精神,一種分享收獲的喜悅,一個(gè)小組一個(gè)團(tuán)隊(duì)要有統(tǒng)一的目標(biāo)、統(tǒng)一的意見和一個(gè)優(yōu)秀的領(lǐng)導(dǎo)人,這樣才能更有效的完成我們前進(jìn)中遇到的難題和困難。做任何事包括做實(shí)驗(yàn)都不是孤立的而是一個(gè)需要和他人交往的過(guò)程。這就要求我們要團(tuán)結(jié),要有合作精神,要注意和他人的溝通,要謙虛,不懂就問(wèn)。從課題的框架到原理圖的設(shè)計(jì),從芯片的選擇到實(shí)物模塊的鏈接都凝聚了
35、我們辛勤的汗水,當(dāng)然我們?cè)谶@中間也磕磕碰碰走過(guò)許多彎路,經(jīng)過(guò)多次修改與調(diào)整最終我們才完成現(xiàn)在的硬件電路。只有一次次的失敗才能離成功更近,然而我們往往對(duì)成功期望太高才會(huì)懼怕失敗。在整個(gè)實(shí)驗(yàn)操作和論文完成的過(guò)程中,我體會(huì)到的是實(shí)驗(yàn)的艱辛和收獲的充實(shí),感受到的是一種堅(jiān)持不懈、契而不舍的科研精神。實(shí)驗(yàn)現(xiàn)象的無(wú)法實(shí)現(xiàn)會(huì)讓我們著急因?yàn)槲覀冏约阂膊恢浪叩穆肥遣皇浅晒Φ姆较?,但不嘗試又怎會(huì)知道。只有嘗試過(guò)努力過(guò)我們才會(huì)走的更遠(yuǎn)。致 謝在這次畢業(yè)設(shè)計(jì)的過(guò)程中得到了許多人的幫助也在這次的畢業(yè)設(shè)計(jì)中學(xué)到了許多。在此我對(duì)學(xué)校、老師以及我的同學(xué)表示由衷的感謝,在畢業(yè)設(shè)計(jì)階段上老師給予我們悉心的指導(dǎo),從最初的定題到原
36、理圖的確定再到板子的調(diào)試最后論文的定稿老師都給我們提供了幫助,提供了很多專業(yè)知識(shí)。更有在我們制板時(shí)給予我們很大幫助的同學(xué),從pcb板的到板子的完成都給了我們很大的建議以及幫助。這次的畢業(yè)設(shè)計(jì)也讓我感覺(jué)到小組團(tuán)結(jié)的重要性, 在通過(guò)小組同學(xué)的共同努力我們的畢業(yè)設(shè)計(jì)終于完成了,這意味著大學(xué)的生活即將結(jié)束。在大學(xué)階段,我在學(xué)習(xí)和思想上都受益匪淺這除了自身的努力外,與老師們、同學(xué)和朋友的關(guān)心、支持和鼓勵(lì)使分不開的。感謝幫助過(guò)我的同學(xué)們?yōu)槲医鉀Q了不少問(wèn)題也感謝學(xué)校為我提供了一個(gè)良好的環(huán)境。雖然大學(xué)生活將要結(jié)束但我依然會(huì)努力前進(jìn),在沒(méi)有老師指導(dǎo)同學(xué)陪伴下依舊努力學(xué)習(xí)。再次感謝學(xué)院,感謝老師,還要我們的組長(zhǎng)及
37、組員!參考文獻(xiàn)1 楊加國(guó).單片機(jī)原理與應(yīng)用及c51程序設(shè)計(jì).北京:清華大學(xué)出版社.2 何立民.單片機(jī)應(yīng)用技術(shù)選編m,北京:北京航空大學(xué)出版社,1998;3 李華.mcs-51系列單片機(jī)使用接口技術(shù)m,北京航空航天大學(xué)出版社,1993;4 彭為.單片機(jī)典型系統(tǒng)設(shè)計(jì)實(shí)例精講m,北京電子工業(yè)出版社,2006;5 潘永雄.新編單片機(jī)原理與應(yīng)用m,西安電子科技大學(xué)出版社,2003;6秦實(shí)宏,徐春輝.mcs-51單片機(jī)原理及應(yīng)用m.武漢:華中科技大學(xué)出版社,2010,(6)。7江志紅. 51 單片機(jī)技術(shù)與應(yīng)用系統(tǒng)開發(fā)案例精選m. 北京:清華大學(xué)出版社,2008。8鄒應(yīng)全.51系列單片機(jī)原理與實(shí)驗(yàn)教程m.西
38、安:西安電子科技大學(xué)出版社,2007,(12)。附錄附錄a:原理圖附錄b:元器件清單序號(hào)元器件名稱型號(hào)(規(guī)格)數(shù)量1單片機(jī)主芯片at89c5112溫度傳感器ds18b2013時(shí)鐘芯片ds1302141.0592m晶振crystac(11.0592mhz)1532.768k晶振crystac(32.768khz)16九針串口r23217電平轉(zhuǎn)換芯片maxr23218液晶顯示屏lcd160219圓片電容33pf210電解電容20uf11電解電容10uf512電解電容22uf113電阻4.7k114電阻1k15電阻10k116電位器10k117插針、插排218導(dǎo)線若干19電平轉(zhuǎn)換芯片底座16腳120
39、電平轉(zhuǎn)換芯片底座8腳121單片機(jī)芯片底座40腳122電源+5v123按鍵524焊錫絲若干25pcb126電源插座1附錄c:設(shè)計(jì)程序#include#include #define uchar unsigned char#define uint unsigned int#define am(x)x#define pm(x)(x+12) / 轉(zhuǎn)成24小時(shí)制#define ds1302_second0x80#define ds1302_minute0x82#define ds1302_hour0x84 #define ds1302_week0x8a#define ds1302_day0x86#def
40、ine ds1302_month0x88#define ds1302_year0x8c#define ds1302_ram(x)(0xc0+(x)*2) /用于計(jì)算 ds1302_ram 地址的宏 void time0_init(void);void delayx_us(unsigned char i);void soft_10ms(void);void soft_1ms(void);void delay_2s(void);void delay_1ms(unsigned char ms);void key_scan(void);uchar init_ds18b20(void);uchar re
41、adbit(void);uchar readonechar(void);void writeonechar(unsigned char dat);float readtemperature(void);void ds1302inputbyte(unsigned char d);unsigned char ds1302outputbyte(void);void write1302(unsigned char ucaddr, unsigned char ucdata);unsigned char read1302(unsigned char ucaddr);void ds1302_setprote
42、ct(bit flag);void ds1302_settime(unsigned char address, unsigned char value);void ds1302_gettime(void);void lcd_wrcmd(unsigned char lcdcmd);void initial_ds1302(void);void lcd_moveto(char position); void lcd_wrdata(char lcddata);void lcd_string(char *strpoint);void lcd_init(void);uchar datetime08;uch
43、ar datetime18;sbit dq=p17;/定義通信端口 sbit ds1302_clk=p34; /實(shí)時(shí)時(shí)鐘時(shí)鐘線引腳 sbit ds1302_io=p35; /實(shí)時(shí)時(shí)鐘數(shù)據(jù)線引腳 sbit ds1302_rst=p37; /實(shí)時(shí)時(shí)鐘復(fù)位線引腳sbit acc0=acc0;sbit acc7=acc7;sbit dc=p21; /rs sbit rw=p22; /r/w sbit cs=p23; /e sfr lcdbus=0x80; /lcdbus p0sbit a=p20;uchar t5;uchar week ;unsigned char m;/判斷正負(fù)標(biāo)志位unsigned
44、 char flag=0;sbit key_mode=p13;sbit key_plus=p12;sbit key_minus=p11;sbit key_enter=p10;unsigned char timecount,time_250ms;/void delayx_us(unsigned char i) /11*x+12while(i-); void delay1_us() / 1.45us_nop_();_nop_();_nop_(); _nop_();_nop_();_nop_();/void soft_10ms(void)unsigned int i; for(i=0;i16000;
45、i+); void soft_1ms(void)unsigned int i; for(i=0;i1600;i+); void delay_2s(void)unsigned char i; for(i=0;i20;i+) soft_10ms();void delay_1ms(unsigned char ms) unsigned int i; while(ms != 0) for(i = 0;i 980;i+)_nop_();_nop_();_nop_(); _nop_();ms-; unsigned char second,minute,hour,day,month,year;unsigned char stop_ds1302_flag = 0;unsigned char mode;void tobcd(void)unsigned char tempyear1 = 0,
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年天翼云高級(jí)運(yùn)維工程師認(rèn)證參考試題庫(kù)(含答案)
- “非物質(zhì)文化遺產(chǎn)”知識(shí)競(jìng)賽參考試題庫(kù)300題(含答案)
- 2025年武漢城市職業(yè)學(xué)院高職單招職業(yè)技能測(cè)試近5年常考版參考題庫(kù)含答案解析
- 2025年紹興貨運(yùn)資格證考題
- 智能制造設(shè)備共享合同(2篇)
- 2025年粵教滬科版高三地理下冊(cè)月考試卷含答案
- 2025年廣東工貿(mào)職業(yè)技術(shù)學(xué)院高職單招語(yǔ)文2018-2024歷年參考題庫(kù)頻考點(diǎn)含答案解析
- 2025年廣東南華工商職業(yè)學(xué)院高職單招語(yǔ)文2018-2024歷年參考題庫(kù)頻考點(diǎn)含答案解析
- 2025年山西戲劇職業(yè)學(xué)院高職單招高職單招英語(yǔ)2016-2024歷年頻考點(diǎn)試題含答案解析
- 2025年宿遷澤達(dá)職業(yè)技術(shù)學(xué)院高職單招語(yǔ)文2018-2024歷年參考題庫(kù)頻考點(diǎn)含答案解析
- 2025年中國(guó)南方航空股份有限公司招聘筆試參考題庫(kù)含答案解析
- 商務(wù)部發(fā)布《中國(guó)再生資源回收行業(yè)發(fā)展報(bào)告(2024)》
- 2025年福建新華發(fā)行(集團(tuán))限責(zé)任公司校園招聘高頻重點(diǎn)提升(共500題)附帶答案詳解
- 江蘇省駕校考試科目一考試題庫(kù)
- 四川省成都市青羊區(qū)成都市石室聯(lián)合中學(xué)2023-2024學(xué)年七上期末數(shù)學(xué)試題(解析版)
- 咨詢公司績(jī)效工資分配實(shí)施方案
- 2025新人教版英語(yǔ)七年級(jí)下單詞表
- 中華護(hù)理學(xué)會(huì)團(tuán)體標(biāo)準(zhǔn)-氣管切開非機(jī)械通氣患者氣道護(hù)理
- 未成年入職免責(zé)協(xié)議書
- 光伏電站巡檢專項(xiàng)方案
- 2024年山東省東營(yíng)市中考數(shù)學(xué)試題 (原卷版)
評(píng)論
0/150
提交評(píng)論