![基于LCD液晶的DSB溫傳感器的溫采集系統(tǒng)設(shè)計(jì)_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/2/e1aab1ac-a6ff-4a33-b645-a1a08c4d1a19/e1aab1ac-a6ff-4a33-b645-a1a08c4d1a191.gif)
![基于LCD液晶的DSB溫傳感器的溫采集系統(tǒng)設(shè)計(jì)_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/2/e1aab1ac-a6ff-4a33-b645-a1a08c4d1a19/e1aab1ac-a6ff-4a33-b645-a1a08c4d1a192.gif)
![基于LCD液晶的DSB溫傳感器的溫采集系統(tǒng)設(shè)計(jì)_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/2/e1aab1ac-a6ff-4a33-b645-a1a08c4d1a19/e1aab1ac-a6ff-4a33-b645-a1a08c4d1a193.gif)
![基于LCD液晶的DSB溫傳感器的溫采集系統(tǒng)設(shè)計(jì)_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/2/e1aab1ac-a6ff-4a33-b645-a1a08c4d1a19/e1aab1ac-a6ff-4a33-b645-a1a08c4d1a194.gif)
![基于LCD液晶的DSB溫傳感器的溫采集系統(tǒng)設(shè)計(jì)_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/2/e1aab1ac-a6ff-4a33-b645-a1a08c4d1a19/e1aab1ac-a6ff-4a33-b645-a1a08c4d1a195.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 2012 2013學(xué)年 第2學(xué)期 單片機(jī)原理及應(yīng)用 課 程 設(shè) 計(jì) 報(bào) 告題 目:基于DS18B20的溫度采集系統(tǒng)設(shè)計(jì)專 業(yè): 自 動(dòng) 化 班 級(jí): 姓 名: 指導(dǎo)教師: 電氣工程學(xué)院 2013年6月6日1、任務(wù)書(shū)課題名稱基于DS18B20的溫度采集系統(tǒng)設(shè)計(jì)指導(dǎo)教師(職稱) 執(zhí)行時(shí)間2012 2013 學(xué)年第 2學(xué)期 第 10 周學(xué)生姓名學(xué)號(hào)承擔(dān)任務(wù)設(shè)計(jì)目的 通過(guò)該課程設(shè)計(jì)進(jìn)一步熟悉單片機(jī)的基本知識(shí)與工作原理;1. 熟悉DS18B20溫度傳感器的內(nèi)部資源及其使用方法;2. 學(xué)會(huì)使用Protues仿真軟件進(jìn)行單片機(jī)系統(tǒng)設(shè)計(jì)的方法;3. 學(xué)會(huì)使用LCD1602對(duì)所需要顯示的內(nèi)容進(jìn)行顯示。 設(shè)計(jì)要
2、求要求:1. 液晶第一行顯示“Temperature”;2. 使用DS18B20溫度傳感器采集當(dāng)前的溫度,并采集的溫度值液晶第二行顯示。3. 設(shè)計(jì)溫度的上下界限,超過(guò)溫度上限或下限時(shí),蜂鳴器報(bào)警同時(shí)一個(gè)發(fā)光二極管閃爍報(bào)警。 摘 要隨著信息技術(shù)的飛速發(fā)展,嵌入式智能電子技術(shù)已滲透到社會(huì)生產(chǎn)、工業(yè)控制以及人們?nèi)粘I畹母鱾€(gè)方面。單片機(jī)又稱為嵌入式微型控制器,在智能儀表、工業(yè)控制、智能終端、通信設(shè)備、醫(yī)療器械、汽車(chē)電器、導(dǎo)航系統(tǒng)和家用電器等很多領(lǐng)域都有著廣泛的應(yīng)用,已成為當(dāng)今電子信息領(lǐng)域應(yīng)用最廣泛的技術(shù)之一。本文主要介紹了一個(gè)基于STC89C52RC單片機(jī)的測(cè)溫系統(tǒng),詳細(xì)描述了利用液晶顯示器件溫度傳
3、感器DS18B20開(kāi)發(fā)測(cè)溫系統(tǒng)的原理,重點(diǎn)對(duì)傳感器與單片機(jī)的硬件連接和軟件編程進(jìn)行了詳細(xì)分析。主要地介紹了數(shù)字溫度傳感器DS18B20的數(shù)據(jù)采集過(guò)程,進(jìn)而對(duì)各部分硬件電路的工作原理進(jìn)行了介紹。溫度傳感器DS18B20與STC89C52RC結(jié)合構(gòu)成了最簡(jiǎn)溫度檢測(cè)系統(tǒng),該系統(tǒng)可以方便的實(shí)現(xiàn)溫度采集和顯示,它使用起來(lái)相當(dāng)方便,具有精度高、量程寬、靈敏度高、體積小、功耗低等優(yōu)點(diǎn),適合我們?nèi)粘I詈凸?、農(nóng)業(yè)生產(chǎn)中的溫度測(cè)量,也可以當(dāng)作溫度處理模塊嵌入其它系統(tǒng)中,作為其他主系統(tǒng)的輔助擴(kuò)展。關(guān)鍵詞: 單片機(jī)STC89C52RC、DS18B20溫度傳感器、液晶顯示器LCD1602基于DS18B20的溫度采集系
4、統(tǒng)設(shè)計(jì)目 錄第一章 緒 論41.1 溫度檢測(cè)系統(tǒng)的介紹41.1.1 溫度檢測(cè)系統(tǒng)的組成41.1.2 溫度檢測(cè)的實(shí)際意義4第二章 溫度檢測(cè)系統(tǒng)方案的選取52.1 溫度檢測(cè)系統(tǒng)方案的選取5溫度檢測(cè)模塊5溫度顯示模塊62.2 溫度檢測(cè)系統(tǒng)結(jié)構(gòu)的設(shè)計(jì)7第三章 硬件電路的設(shè)計(jì)83.1 STC89C52RC的介紹83.2 DS18B20的介紹93.2.1 DS18B20的主要特點(diǎn)93.2.2 DS18B20的結(jié)構(gòu)93.2.3 DS18B20的測(cè)溫原理103.3 LCD1602的介紹133.4 硬件設(shè)計(jì)14硬件設(shè)計(jì)目標(biāo)14硬件功能模塊劃分14接口和連接方式14硬件仿真電路15第四章 軟件設(shè)計(jì)164.1 16
5、02液晶顯示處理部分164.2 18B20函數(shù)處理部分16第五章 心得體會(huì)19參考文獻(xiàn)20附錄21第1章 緒 論1.1 溫度檢測(cè)系統(tǒng)的介紹溫度檢測(cè)在各領(lǐng)域應(yīng)用的非常廣泛,可以說(shuō)滲透到了社會(huì)的每一個(gè)領(lǐng)域。人們的生活與溫度檢測(cè)息息相關(guān),在工業(yè)生產(chǎn)過(guò)程中需要實(shí)時(shí)測(cè)量溫度,在農(nóng)業(yè)生產(chǎn)中也離不開(kāi)溫度的測(cè)量,因此研究溫度的測(cè)量方法和裝置具有重要的意義。 1.1.1 溫度檢測(cè)系統(tǒng)的組成 溫度檢測(cè)的首要問(wèn)題是溫度傳感器的選取。溫度傳感器的發(fā)展經(jīng)歷了三個(gè)發(fā)展階段:傳統(tǒng)的分立式溫度傳感器、模擬式集成溫度傳感器、智能集成溫度傳感器。目前的智能溫度傳感器(也稱數(shù)字溫度傳感器)是在20世紀(jì)90年代中期問(wèn)世的,它是微電子
6、技術(shù)、計(jì)算機(jī)技術(shù)和自動(dòng)測(cè)試技術(shù)(ATE)的結(jié)晶。它的優(yōu)點(diǎn)是能輸出溫度數(shù)據(jù)及相關(guān)的溫度控制量,適配各種微控制器(MCU)。目前溫度傳感器正在朝著基于單片機(jī)的基礎(chǔ)上從模擬式向數(shù)字式,從集成化向智能化、網(wǎng)絡(luò)化的方向飛速發(fā)展,并朝著高精度、多功能、總線標(biāo)準(zhǔn)化、高可靠性及安全性、開(kāi)發(fā)虛擬傳感器和網(wǎng)絡(luò)傳感器、研制單片機(jī)測(cè)溫系統(tǒng)等高科技的方向迅速發(fā)展。我們采用 DS18B20數(shù)字溫度傳感器采集溫度信號(hào),使用 MCS-51單片機(jī)控制溫度傳感器,然后將采集到的溫度信號(hào)在LCD1602液晶顯示屏上顯示。這種溫度檢測(cè)系統(tǒng)性能較好,并易于實(shí)現(xiàn)。 溫度檢測(cè)的實(shí)際意義在工業(yè)生產(chǎn)和實(shí)踐研究中,像電力、化工、石油、冶金、航空
7、航天、機(jī)械制造、糧食存儲(chǔ)、酒類生產(chǎn)等領(lǐng)域,溫度常常是表征對(duì)象和過(guò)程狀態(tài)的重要參數(shù)之一。比如,發(fā)電廠鍋爐的溫度必須控制在一定的范圍之內(nèi);許多化學(xué)反應(yīng)的工藝過(guò)程必須在適當(dāng)?shù)臏囟认虏拍苷_M(jìn)行;煉油過(guò)程中,原油必須在不同的溫度和壓力條件下進(jìn)行分餾才能得到汽油、柴油、煤油等產(chǎn)品。沒(méi)有合適的溫度環(huán)境,許多電子設(shè)備就不能正常工作,糧倉(cāng)的儲(chǔ)糧就會(huì)變質(zhì)霉?fàn)€,酒類的品質(zhì)就沒(méi)有保障。由此可見(jiàn),溫度的檢測(cè)對(duì)日常生活很重要。 第二章 溫度檢測(cè)系統(tǒng)方案的選取2.1 溫度檢測(cè)系統(tǒng)方案的選取由于溫度檢測(cè)的方法多種多樣,而不同的檢測(cè)方法適合不同的場(chǎng)所。我們針對(duì)溫度檢測(cè)提出了溫度采集系統(tǒng)的多種設(shè)計(jì)方案。由于溫度檢測(cè)系統(tǒng)基本組成
8、為溫度檢測(cè)模塊和溫度變送傳輸模塊以及溫度顯示模塊。下面對(duì)這些不同模塊的選取分別進(jìn)行具體地分析。溫度檢測(cè)模塊方案一:采用熱敏電阻。因熱敏電阻是溫度敏感元件,使用它來(lái)感受溫度變化,其電阻值的變化是可以衡量溫度大小的。但熱敏電阻測(cè)溫具有精度低,可靠性差,不適用檢測(cè)變化小的溫度信號(hào)等特點(diǎn),所以這種方法不適用于精度要求高的場(chǎng)合。 方案二:采用單總線數(shù)字溫度傳感器DS18B20測(cè)量溫度。因?yàn)樗苯虞敵鰯?shù)字信號(hào),便于單片機(jī)進(jìn)行處理及控制,同時(shí)也節(jié)省了硬件電路。該芯片的物理化學(xué)性質(zhì)很穩(wěn)定,元件線形性能好。當(dāng)溫度在0100攝氏度范圍內(nèi)變化時(shí),最大線形偏差小于1攝氏度。方案三:在溫度測(cè)量系統(tǒng)中,也可采用單片機(jī)溫度
9、傳感器,比如AD590,LM35等。但這些芯片輸出的都是模擬信號(hào),必須經(jīng)過(guò)A/D轉(zhuǎn)換后才能送給計(jì)算機(jī),這樣就使測(cè)溫系統(tǒng)的硬件結(jié)構(gòu)變的復(fù)雜。另外,這種測(cè)溫系統(tǒng)難以實(shí)現(xiàn)多點(diǎn)測(cè)溫,也要用到復(fù)雜的算法,一定程度上也增加了軟件實(shí)現(xiàn)的難度。 經(jīng)過(guò)討論分析,為符合課程設(shè)計(jì)要求,我們選用方案二。 溫度檢測(cè)模塊示意圖溫度顯示模塊 方案一:采用8位段數(shù)碼管。將單片機(jī)得到的數(shù)據(jù)通過(guò)數(shù)碼管顯示出來(lái)。該方案簡(jiǎn)單易行,但所需的元件較多,可讀性差,一旦設(shè)定后很難再加入其他的功能,而且溫度顯示格式受限制,耗電量大,不宜用電池給系統(tǒng)供電。 方案二:采用液晶顯示器件。液晶顯示具有平穩(wěn)、省電、美觀等優(yōu)點(diǎn),更容易滿足題目要求。而且對(duì)
10、后續(xù)的工藝兼容性高,只需將修改軟件中程序設(shè)計(jì)即可,可操作性強(qiáng),也易于讀數(shù)。LCD1602液晶顯示器具有兩行十六個(gè)字符的顯示,能同時(shí)顯示其它的信息如日期、時(shí)間、星期、溫度。 通過(guò)比較,我們選用方案二。 溫度顯示模塊示意圖2.2 溫度檢測(cè)系統(tǒng)結(jié)構(gòu)的設(shè)計(jì)采用STC89C52RC單片機(jī)作為控制核心對(duì)溫度傳感器DS18B20進(jìn)行控制,由它讀取溫度信號(hào)并進(jìn)行計(jì)算處理后送到液晶顯示器LCD1602顯示。 按照系統(tǒng)設(shè)計(jì)功能的要求,確定系統(tǒng)由3個(gè)模塊組成:主控制器、測(cè)溫電路和顯示電路。溫度檢測(cè)系統(tǒng)總體電路結(jié)構(gòu)框圖如下圖所示。 溫度檢測(cè)系統(tǒng)電路結(jié)構(gòu)框圖第三章 硬件電路的設(shè)計(jì)3.1 STC89C52RC的介紹STC
11、89C52RC單片機(jī)是宏晶科技推出的新一代超強(qiáng)抗干擾、高速、低功耗的單片機(jī)。它的指令代碼完全兼容傳統(tǒng)8051單片機(jī),12時(shí)鐘/機(jī)器周期和6時(shí)鐘/機(jī)器周期可任意選擇,最新的D版本內(nèi)部集成MAX810專用復(fù)位電路。 (1). 增強(qiáng)型6時(shí)鐘/機(jī)器周期,12時(shí)鐘/機(jī)器周期 8051CPU (2). 工作電壓:5.5V-3.4V(5V單片機(jī))/3.8V-2.0V(3V單片機(jī)) (3). 工作頻率范圍:0-40MHz,相當(dāng)于普通8051的080MHz.實(shí)際工作頻率可達(dá)到48MHz. (4). 用戶應(yīng)用程序空間 4K/
12、8K/13K/16K/20K/32K/64K字節(jié) (5). 片上集成1280字節(jié)/512字節(jié)RAM (6). 通用I/O口(32/36個(gè)),復(fù)位后為:P1/P2/P3/P4是準(zhǔn)雙向口,P0口是開(kāi)漏輸出,作為總線擴(kuò)展使用時(shí),不用加上拉電阻,作為I/O口使用時(shí),需加上拉電阻。 (7). ISP(在系統(tǒng)可編程)/IAP(在應(yīng)用可編程),無(wú)需專用編程器/仿真器,可通過(guò)串口(P3.0/P3.1)直接下載用戶程序,8K程序3秒即可完成一片 (8). EEPROM功能 (9). 看門(mén)狗 (10).內(nèi)
13、部集成MAX810專用復(fù)位電路(D版本才有),外部20M以下時(shí),可省外部復(fù)位電路3.2 DS18B20的介紹 DS18B20的主要特點(diǎn) 溫度傳感器的種類眾多,在高精度、高可靠性的應(yīng)用場(chǎng)合時(shí)DALLAS(達(dá)拉斯)公司生產(chǎn)的DS18B20溫度傳感器比較理想。它體積小,硬件開(kāi)消低,抗干擾能力強(qiáng),精度高,附加功能強(qiáng)。與傳統(tǒng)的熱敏電阻等測(cè)溫元件相比,它能直接讀出被測(cè)溫度,并且可根據(jù)實(shí)際要求通過(guò)簡(jiǎn)單的編程實(shí)現(xiàn)912位的數(shù)字值讀數(shù)方式。它具有獨(dú)特的單線接口僅需要一個(gè)端口引腳進(jìn)行通信,并可通過(guò)數(shù)據(jù)線供電,電壓范圍為3.05.5。 DS18B20的結(jié)構(gòu) TO92封裝的DS18B20的引腳排列見(jiàn)下圖。 圖 DS1
14、8B20實(shí)物圖及封裝 其引腳功能描述見(jiàn)下表。 表3.2.1DS18B20詳細(xì)引腳功能描述序號(hào)名稱引腳功能描述1GND接地信號(hào)2DQ數(shù)據(jù)輸入/輸出引腳。開(kāi)漏單總線接口引腳。當(dāng)被用著在寄生電源下,也可以向器件提供電源。3VDD可選擇的VDD引腳。當(dāng)工作于寄生電源時(shí),此引腳必須接地。 DS18B20的內(nèi)部結(jié)構(gòu)示意圖如下圖所示。C64 位ROM和單線接口高速緩存存儲(chǔ)器與控制邏輯溫度傳感器高溫觸發(fā)器TH低溫觸發(fā)器TL配置寄存器8位CRC發(fā)生器VddI/O圖 DS18B20內(nèi)部結(jié)構(gòu)64位ROM的結(jié)構(gòu)起始位是產(chǎn)品類型的編號(hào),接著是每個(gè)器件的惟一的序號(hào),共有48位,最后位是前面56位的CRC檢驗(yàn)碼,這也是多個(gè)
15、DS18B20可以采用一線進(jìn)行通信的原因。溫度報(bào)警觸發(fā)器和,可通過(guò)軟件寫(xiě)入戶報(bào)警上下限。DS18B20溫度傳感器的內(nèi)部存儲(chǔ)器還包括一個(gè)高速暫存和一個(gè)非易失性的可電擦除的EERAM。高速暫存器RAM由9個(gè)字節(jié)的存儲(chǔ)器組成。第0-1個(gè)字節(jié)是溫度的顯示位;第2和第3個(gè)字節(jié)是TH和TL,同時(shí)第2和第3個(gè)字節(jié)的數(shù)字可以更新;第4個(gè)字節(jié)是配置寄存器,同時(shí)第4個(gè)字節(jié)的數(shù)字也可以更新;第5、6、7三個(gè)字節(jié)是保留的。第8字節(jié)讀出前面所有字節(jié)的CRC碼,可用來(lái)檢驗(yàn)數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。 表列出了溫度數(shù)據(jù)在高速暫存器RAM的第0和第1個(gè)字節(jié)中的存儲(chǔ)格式。表 溫度數(shù)據(jù)存儲(chǔ)格式位7位6位5位4位3位2位1位0
16、232221202-12-22-32-4位15位14位13位12位11位10位9位8SSSSS262524 DS18B20的測(cè)溫原理DS18B20的測(cè)溫原理是這樣的,器件中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給減法計(jì)數(shù)器;高溫度系數(shù)晶振隨溫度變化其振蕩頻率明顯改變,所產(chǎn)生的信號(hào)作為減法計(jì)數(shù)器的脈沖輸入。器件中還有一個(gè)計(jì)數(shù)門(mén),當(dāng)計(jì)數(shù)門(mén)打開(kāi)時(shí),DS18B20就對(duì)低溫度系數(shù)振蕩器產(chǎn)生的時(shí)鐘脈沖進(jìn)行計(jì)數(shù)進(jìn)而完成溫度測(cè)量。計(jì)數(shù)門(mén)的開(kāi)啟時(shí)間由高溫度系數(shù)振蕩器來(lái)決定,每次測(cè)量前,首先將55所對(duì)應(yīng)的一個(gè)基數(shù)分別置入減法計(jì)數(shù)器和溫度寄存器中。DS18B20可以采用兩種方式供電,
17、一種是采用電源供電方式,此時(shí)DS18B20的1腳接地,2腳作為信號(hào)線,3腳接電源。另一種是寄生電源供電方式,如圖 所示單片機(jī)端口接單線總線,為保證在有效的DS18B20時(shí)鐘周期內(nèi)提供足夠的電流,可用一個(gè)MOSFET管來(lái)完成對(duì)總線的上拉。 圖 DS18B20的接口電路當(dāng)DS18B20處于寫(xiě)存儲(chǔ)器操作和溫度A/D轉(zhuǎn)換操作時(shí),總線上必須有上拉,上拉開(kāi)啟時(shí)間最大為10us。采用寄生電源供電方式時(shí)VDD端接地。由于單線制只有一根線,因此發(fā)送接口必須是三態(tài)的。由于DS18B20是在一根I/O線上讀寫(xiě)數(shù)據(jù),因此,對(duì)讀寫(xiě)的數(shù)據(jù)位有著嚴(yán)格的時(shí)序要求。DS18B20有嚴(yán)格的通信協(xié)議來(lái)保證各位數(shù)據(jù)傳輸?shù)恼_性和完整
18、性。該協(xié)議定義了幾種信號(hào)的時(shí)序:初始化時(shí)序、寫(xiě)數(shù)據(jù)、讀數(shù)據(jù)。所有時(shí)序都是將主機(jī)作為主設(shè)備,單總線器件作為從設(shè)備。而每一次命令和數(shù)據(jù)的傳輸都是從主機(jī)主動(dòng)啟動(dòng)寫(xiě)時(shí)序開(kāi)始,如果要求單總線器件回送數(shù)據(jù),在進(jìn)行寫(xiě)命令后,主機(jī)需啟動(dòng)讀時(shí)序完成數(shù)據(jù)接收。數(shù)據(jù)和命令的傳輸都是低位在先。(1)DS18B20的初始化時(shí)序1) 先將數(shù)據(jù)線置高電平12) 延時(shí)(該時(shí)間要求不是很?chē)?yán)格,但盡可能短一點(diǎn))3) 數(shù)據(jù)線拉到低電平04) 延時(shí)750us(該時(shí)間范圍可以設(shè)定為480-960us范圍內(nèi))5) 數(shù)據(jù)線拉到高電平16) 延時(shí)等待。如果初始化成功則在15-60ms內(nèi)產(chǎn)生一個(gè)由DS18B20返回的低電平0,據(jù)該狀態(tài)可以確定
19、它的存在。7) 若CPU讀到數(shù)據(jù)線上的低電平0后,還要進(jìn)行延時(shí),其延時(shí)的時(shí)間從發(fā)出高電平算起最少480us8) 將數(shù)據(jù)線再次拉到高電平1后結(jié)束(2)DS18B20的寫(xiě)數(shù)據(jù) ) 數(shù)據(jù)線先置低電平0) 延時(shí)確定的時(shí)間為15us) 按從低位到高位的順序發(fā)送數(shù)據(jù)(一次只發(fā)送一位) 延時(shí)時(shí)間為45us) 將數(shù)據(jù)線拉到高電平1) 重復(fù)1-5步驟,直到發(fā)送完整個(gè)字節(jié)) 最后將數(shù)據(jù)線拉到(3)DS18B20的讀數(shù)據(jù)) 將數(shù)據(jù)線拉高到) 延時(shí)us) 將數(shù)據(jù)線拉低到0) 延時(shí)6us) 將數(shù)據(jù)線拉高到1) 延時(shí)4us) 讀數(shù)據(jù)線的狀態(tài)得到一個(gè)狀態(tài)位,并進(jìn)行數(shù)據(jù)處理) 重復(fù)1-7步驟,直到讀取完一個(gè)字節(jié)3.3 LCD
20、1602的介紹LCD1602液晶顯示器也叫1602字符型液晶顯示器。它是一種專門(mén)用來(lái)顯示字母、數(shù)字、符號(hào)等的點(diǎn)陣型液晶模塊。它由若干個(gè)5X7或者5X11等點(diǎn)陣字符位組成。每個(gè)點(diǎn)陣字符位都可以顯示一個(gè)字符,每位之間有一個(gè)點(diǎn)距的間隔,每行之間也有間隔,起到了字符間距和行間距的作用。 LCD1602是指顯示的內(nèi)容為16X2,即可以顯示兩行,每行16個(gè)字符液晶模塊。管腳功能 LCD1602引腳圖LCD1602采用標(biāo)準(zhǔn)的16腳接口,其中: 第1腳:VSS為電源地 第2腳:VCC接5V電源正極 第3腳:V0為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高 第4腳:RS為寄存器選擇,高電
21、平1時(shí)選擇數(shù)據(jù)寄存器、低電平0時(shí)選擇指令寄存器 第5腳:RW為讀寫(xiě)信號(hào)線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫(xiě)操作。 第6腳:E(或EN)端為使能(enable)端。 第714腳:D0D7為8位雙向數(shù)據(jù)端。 第1516腳:空腳或背燈電源。15腳背光正極,16腳背光負(fù)極。 操作控制 1602液晶模塊內(nèi)部的字符發(fā)生存儲(chǔ)器(CGROM)已經(jīng)存儲(chǔ)了160個(gè)不同的點(diǎn)陣字符圖形。這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫(xiě)、常用的符號(hào)、和日文假名等。每一個(gè)字符都有一個(gè)固定的代碼,比如大寫(xiě)的英文字母“A”的代碼是01000001B(41H),顯示時(shí)模塊把地址41H中的點(diǎn)陣字符圖形顯示出來(lái),我們就能看到字母“A”。
22、因?yàn)?602識(shí)別的是ASCII碼,試驗(yàn)可以用ASCII碼直接賦值,在單片機(jī)編程中還可以用字符型常量或變量賦值,如'A。指令集1602通過(guò)D0D7的8位數(shù)據(jù)端傳輸數(shù)據(jù)和指令。顯示模式設(shè)置: (初始化)0011 1000 0x38 設(shè)置16×2顯示,5×7點(diǎn)陣,8位數(shù)據(jù)接口;顯示開(kāi)關(guān)及光標(biāo)設(shè)置: (初始化)0000 1DCB D顯示(1有效)、C光標(biāo)顯示(1有效)、B光標(biāo)閃爍(1有效)0000 01NS N=1(讀或?qū)懸粋€(gè)字符后地址指針加1&光標(biāo)加1),N=0(讀或?qū)懸粋€(gè)字符后地址指針減1&光標(biāo)減1),S=1且N=1(當(dāng)寫(xiě)一個(gè)字符后,整屏顯示左移)s=0
23、當(dāng)寫(xiě)一個(gè)字符后,整屏顯示不移動(dòng)數(shù)據(jù)指針設(shè)置:數(shù)據(jù)首地址為80H,所以數(shù)據(jù)地址為80H+地址碼(0-27H,40-67H)其他設(shè)置:01H(顯示清屏,數(shù)據(jù)指針=0,所有顯示=0);02H(顯示回車(chē),數(shù)據(jù)指針=0)。3.4 硬件設(shè)計(jì)硬件設(shè)計(jì)目標(biāo)系統(tǒng)通過(guò)溫度傳感器DS18B20的數(shù)據(jù)線DQ與主控芯片51單片機(jī)的P3.3相連接,DS18B20將采集到的數(shù)據(jù)送給單片機(jī),經(jīng)過(guò)單片機(jī)處理后,顯示在8位數(shù)據(jù)線與單片機(jī)P0口的液晶顯示器LCD上。串口經(jīng)過(guò)MAX232的電平轉(zhuǎn)換后R1 OUT和T1 IN接到單片機(jī)的RXD與TXD來(lái)實(shí)現(xiàn)與用C語(yǔ)言編輯的計(jì)算機(jī)軟件的界面間的通信。液晶LCD的RS、RW¯、E
24、分別接到單片機(jī)的P2.0P2.2來(lái)實(shí)現(xiàn)單片機(jī)控制液晶的讀寫(xiě)命令和數(shù)據(jù)的顯示控制。硬件功能模塊劃分(1)STC89C52RC單片機(jī):實(shí)現(xiàn)對(duì)整個(gè)系統(tǒng)的控制。(2)DS18B20、LCD1602:溫度傳感器DS18B20的數(shù)據(jù)線DQ與主控芯片51單片機(jī)的P3.3相連接,DS18B20將采集到的數(shù)據(jù)送給單片機(jī),經(jīng)過(guò)單片機(jī)處理后,顯示在8位數(shù)據(jù)線與單片機(jī)P0口的液晶LCD上。接口和連接方式(1)液晶LCD1602的數(shù)據(jù)和指令選擇控制端RS接到單片機(jī)的P2.0,讀寫(xiě)控制接到單片節(jié)的P2.1,數(shù)據(jù)讀寫(xiě)控制位E接到單片機(jī)的P2.2,8位數(shù)據(jù)線DB0DB7接到單片機(jī)的P0口。(2)4個(gè)按鍵K1K4分別接到單片機(jī)
25、的P1.0P1.3。(3)DS18B20的DQ接到單片機(jī)的P3.3.硬件仿真電路 第四章 軟件設(shè)計(jì)4.1 1602液晶顯示處理部分 在本次設(shè)計(jì)系統(tǒng)中定義了P22口為1602液晶的使能端;P20為數(shù)據(jù)命令的選擇端;P21為讀,寫(xiě)選擇端。定義了有關(guān)的函數(shù);write_com()向1602寫(xiě)入命令碼函數(shù),write_date()向1602寫(xiě)入數(shù)據(jù)函數(shù);display()1602顯示函數(shù);lcd_init()1602初始化;lcd_display()1602顯示初始化。 具體程序如下所示; void lcd_init()/1602初始化 write_com(0x38);/兩行顯示,5*7點(diǎn)陣 dela
26、yms(5);/延時(shí)5毫秒 write_com(0x01);/顯示清屏 delayms(5); write_com(0x0c);/開(kāi)顯示,不顯示光標(biāo),光標(biāo)不閃爍 delayms(5); write_com(0x06);/當(dāng)讀或?qū)懸粋€(gè)字符后地址指針加一,且光標(biāo)加一 delayms(5); void lcd_display()/1602顯示初始化lcd_init();/1602初始化 write_com(0x80);/第一行第一個(gè)字符開(kāi)始顯示 display(str1);/第一行顯示temperature write_com(0xc0);/第二行第一個(gè)字符開(kāi)始顯示 display(str2);/顯
27、示空白 4.2 18B20函數(shù)處理部分在本次設(shè)計(jì)系統(tǒng)中P33口用來(lái)單片機(jī)與溫度傳感器通訊;它用到的相關(guān)函數(shù)如下;ds_init()18B20初始化 ; ds_write()向18B20中寫(xiě)入數(shù)據(jù) ;ds_read()由18B20讀取數(shù)據(jù) ;ds_temp()從18B20中讀取溫度值 ;ds_dis()把溫度值送入1602中顯示。具體程序如下所示;void ds_init()/18B20初始化dq=1; delayus(4);/CPU將總線拉高 dq=0; delayus(480);/CPU將總線拉低延時(shí)480微妙 dq=1; delayus(60);/CPU將總線拉高延時(shí)60微妙 if(dq=
28、0) delayus(240);/CPU判斷是否為低電平,是的話說(shuō)明溫度傳感器在線上void ds_write(uchar date1)/向18B20中寫(xiě)入數(shù)據(jù)注意寫(xiě)入是按從低位到高位的順序發(fā)送數(shù)據(jù)一次只發(fā)送一位。uchar ds_read()/由18B20讀取數(shù)據(jù),讀的時(shí)候也是從最低位讀uint ds_temp()/從18B20中讀取溫度值 uchar a,b; ds_init();/初始化溫度傳感器 ds_write(0xcc);/忽略ROM指令 ds_write(0x44);/開(kāi)始溫度轉(zhuǎn)換 ds_init();/初始化溫度傳感器 ds_write(0xcc);/忽略ROM指令 ds_wr
29、ite(0xbe);/讀取溫度值 a=ds_read();/讀取低八位 b=ds_read();/讀取高八位 tvalue=b;/ tvalue<<=8;/ tvalue=tvalue|a;/得到16位的溫度值 if(tvalue<0x0fff)/判斷溫度大于0 tflag=0; else tvalue=tvalue+1;/如果溫度小于0,取反加一 tflag=1;/ tvalue=tvalue*(0.625);/乘以最小分辨率得到溫度值 return(tvalue);/ void ds_dis()/把溫度值送入1602中顯示uchar flagdat; disdata0=t
30、value/1000+0x30;/溫度百位 disdata1=tvalue%1000/100+0x30;/溫度十位 disdata2=tvalue%100/10+0x30;/溫度個(gè)位 disdata3=tvalue%10+0x30;/小數(shù)點(diǎn)后一位 if(tflag=0) flagdat=0x20;/如果溫度大于0,不顯示 if(tflag=1) flagdat=0x2d;/如果溫度小于0顯示負(fù)號(hào) if(disdata0=0x30) disdata0=0x20;/百位為0不顯示 if(disdata1=0x30) disdata1=0x20;/十位為0不顯示 write_com(0xc0); w
31、rite_date(flagdat);/第二行第一個(gè)顯示溫度正負(fù) write_com(0xc1); write_date(disdata0);/第二行第二個(gè)顯示溫度百位 write_com(0xc2); write_date(disdata1);/第二行第三個(gè)顯示溫度十位 write_com(0xc3); write_date(disdata2);/第二行第四個(gè)顯示溫度個(gè)位 write_com(0xc4);/ write_date(0x2e);/第二行第五個(gè)顯示小數(shù)點(diǎn) write_com(0xc5);/ write_date(disdata3);/第二行第六個(gè)顯示小數(shù)點(diǎn)后一位 void mai
32、n()/主程序lcd_display();/1602顯示初始化 while(1)ds_temp();/從18B20中讀取溫度 ds_dis();/1602顯示溫度第五章 心得體會(huì)作為一名自動(dòng)化專業(yè)的大三學(xué)生,我覺(jué)得做單片機(jī)課程設(shè)計(jì)是十分有意義而且是十分必要的。在已度過(guò)的大學(xué)時(shí)間里,我們接觸的大多數(shù)是專業(yè)課。我們?cè)谡n堂上掌握的僅僅是專業(yè)課的理論知識(shí),如何去鍛煉我們的實(shí)踐能力?如何把我們所學(xué)的專業(yè)課理論知識(shí)運(yùn)用到實(shí)踐中去呢?我想此次做的課程設(shè)計(jì)就為我們提供了良好的實(shí)踐平臺(tái)。課程設(shè)計(jì)是培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識(shí),發(fā)現(xiàn),提出,分析和解決實(shí)際問(wèn)題,鍛煉實(shí)踐能力的重要方法,是對(duì)學(xué)生實(shí)際工作能力的具體訓(xùn)練和考
33、察過(guò)程隨著科學(xué)技術(shù)發(fā)展的日新日異,單片機(jī)已經(jīng)成為當(dāng)今計(jì)算機(jī)應(yīng)用中空前活躍的領(lǐng)域,在生活中可以說(shuō)是無(wú)處不在。因此作為二十一世紀(jì)的大學(xué)來(lái)說(shuō)掌握單片機(jī)的開(kāi)發(fā)技術(shù)是十分重要的。這次單片機(jī)課程設(shè)計(jì)我們歷時(shí)一個(gè)星期,從理論到實(shí)踐,不僅學(xué)到了很多新的東西同時(shí)也鞏固了以前所學(xué)過(guò)的知識(shí)。通過(guò)這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,僅掌握理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合,從理論中得出結(jié)論,才能真正為社會(huì)服務(wù),從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。在這次課程設(shè)計(jì)后我發(fā)現(xiàn)自己在一點(diǎn)一滴的努力中對(duì)單片機(jī)的興趣也在逐漸增加。這次的課程設(shè)計(jì)還讓我學(xué)會(huì)了如何去培養(yǎng)我們的創(chuàng)新精神,從而不斷
34、地戰(zhàn)勝自己,超越自己。更重要的是,我們?cè)谶@一次課程設(shè)計(jì)過(guò)程中,學(xué)會(huì)了堅(jiān)持不懈,不輕言放棄?;仡櫰鸫舜螁纹瑱C(jī)課程設(shè)計(jì),我們感慨頗多,最重要的是感觸是:遇到一個(gè)問(wèn)題時(shí),最重要的一件事就是馬上思考檢查問(wèn)題出在哪邊,而不是抱怨或者馬上請(qǐng)教同學(xué)老師。只有這樣我們才能真正的學(xué)會(huì)單片機(jī),自己的獨(dú)立處理問(wèn)題的能力才會(huì)得到提高。還有無(wú)論編程中遇到什么問(wèn)題,都不要怨天尤人。無(wú)論自己的程序有多好,都不能驕傲。只有這樣做到不驕不躁,力量才會(huì)源源不斷,才會(huì)有更多的靈感。所以非常感謝老師給我們這次學(xué)習(xí)的機(jī)會(huì),使得我們小組每個(gè)人都在本次課程設(shè)計(jì)中都有了極大的提高。參考文獻(xiàn)1 郭天祥.新概念51單片機(jī)C語(yǔ)音教程入門(mén)提高開(kāi)發(fā)拓
35、展攻略 M.北 京 電子工業(yè)出版社 2009. 2 韓廣興.電子元器件與實(shí)用電路基礎(chǔ)M.北京電子工業(yè)出版社2005. 3 方大千朱麗.電子控制系統(tǒng)裝置制作入門(mén)M.北京國(guó)防出版社2006. 4 劉向舉,劉麗娜. 基于單片機(jī)的智能溫度測(cè)控系統(tǒng)的設(shè)計(jì)J. 齊齊哈爾大學(xué)學(xué)報(bào)(自然科學(xué)版). 2012(03) 5 黃文力,鄧小磊. DS18B20數(shù)字溫度傳感器接口程序的時(shí)序J. 儀器儀表用戶. 2011(06) 6 黃曉林. 一種實(shí)用型智能恒溫控制系統(tǒng)設(shè)計(jì)J. 自動(dòng)化技術(shù)與應(yīng)用. 2011(11) 7 王文,王直. 基于ARM和DS18B20的溫度監(jiān)測(cè)系統(tǒng)J. 電子設(shè)計(jì)工程. 2011(20) 8 陳錫
36、華,賈磊磊. 溫度傳感器DS18B20序列號(hào)批量搜索算法J. 單片機(jī)與嵌入式系統(tǒng)應(yīng)用. 2011(09)附錄#include<reg52.h>#include<intrins.h>#define uchar unsigned char#define uint unsigned intsbit lcden=P22;/1602使能sbit lcdrd=P20;/數(shù)據(jù)、命令選擇端sbit lcdrw=P21;/讀,寫(xiě)選擇端sbit dq=P33;/18B20數(shù)據(jù)線uchar code str1="temperature:"uchar code str2=&
37、quot; "uchar data disdata5;uint tvalue;uchar tflag;void delayms(uint ms)/延時(shí)毫秒 uint i,j; for(i=ms;i>0;i-) for(j=100;j>0;j-);void write_com(uchar com)/向1602中寫(xiě)入命令碼 lcden=0; lcdrd=0; lcdrw=0; P0=com; delayms(1); lcden=1; delayms(1); lcden=0; void write_date(uchar date)/向1602中寫(xiě)入數(shù)據(jù) lcden=0; lcd
38、rd=1; lcdrw=0; P0=date; delayms(1); lcden=1; delayms(1); lcden=0; void display(uchar *p)/1602顯示 while(*p!='0') write_date(*p); p+; delayms(1); void lcd_init()/1602初始化 write_com(0x38); delayms(5); write_com(0x01); delayms(5); write_com(0x0c); delayms(5); write_com(0x06); delayms(5); void lcd_display()/1602顯示初始化lcd_init(); write_com(0x80); display(str1); write_com(0xc0); display(str2);void delayus(uint i)/延時(shí)微妙while
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 美食行業(yè)廚師助理工作總結(jié)
- 質(zhì)量管理在研發(fā)流程中的作用培訓(xùn)
- 藥店衛(wèi)生整頓要領(lǐng)
- 部編初中歷史八下第17課外交事業(yè)的發(fā)展教案
- 2025年全球及中國(guó)商用儲(chǔ)水式熱水器行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025年全球及中國(guó)推拉式酸洗線行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025-2030全球第三人稱射擊游戲行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025年全球及中國(guó)新能源汽車(chē)隱形門(mén)把手行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025-2030全球基于人工智能的傷口護(hù)理軟件行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025年全球及中國(guó)高舉裝載機(jī)行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 長(zhǎng)江委水文局2025年校園招聘17人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025年湖南韶山干部學(xué)院公開(kāi)招聘15人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 智研咨詢發(fā)布:2024年中國(guó)MVR蒸汽機(jī)械行業(yè)市場(chǎng)全景調(diào)查及投資前景預(yù)測(cè)報(bào)告
- IF鋼物理冶金原理與關(guān)鍵工藝技術(shù)1
- JGJ46-2024 建筑與市政工程施工現(xiàn)場(chǎng)臨時(shí)用電安全技術(shù)標(biāo)準(zhǔn)
- 煙花爆竹重大危險(xiǎn)源辨識(shí)AQ 4131-2023知識(shí)培訓(xùn)
- 銷售提成對(duì)賭協(xié)議書(shū)范本 3篇
- EPC項(xiàng)目階段劃分及工作結(jié)構(gòu)分解方案
- 《跨學(xué)科實(shí)踐活動(dòng)4 基于特定需求設(shè)計(jì)和制作簡(jiǎn)易供氧器》教學(xué)設(shè)計(jì)
- 2024-2030年汽車(chē)啟停電池市場(chǎng)運(yùn)行態(tài)勢(shì)分析及競(jìng)爭(zhēng)格局展望報(bào)告
- 術(shù)后病人燙傷不良事件PDCA循環(huán)分析
評(píng)論
0/150
提交評(píng)論