基于單總線(xiàn)的溫濕度測(cè)量系統(tǒng)的設(shè)計(jì)_第1頁(yè)
基于單總線(xiàn)的溫濕度測(cè)量系統(tǒng)的設(shè)計(jì)_第2頁(yè)
基于單總線(xiàn)的溫濕度測(cè)量系統(tǒng)的設(shè)計(jì)_第3頁(yè)
基于單總線(xiàn)的溫濕度測(cè)量系統(tǒng)的設(shè)計(jì)_第4頁(yè)
基于單總線(xiàn)的溫濕度測(cè)量系統(tǒng)的設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩19頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

福 建 師 范 大 學(xué) 應(yīng) 用 科 技 學(xué) 院學(xué) 生 論 文論文題目:基于單總線(xiàn)的溫濕度測(cè)量系統(tǒng)的設(shè)計(jì)指導(dǎo)教師: 王毅 學(xué) 號(hào): 120201005 姓 名: 唐夏君 年 級(jí): 2010級(jí) 專(zhuān) 業(yè): 電子信息工程 2014 年 4 月 25 日基于單總線(xiàn)的溫濕度測(cè)量系統(tǒng)的設(shè)計(jì)福建師范大學(xué)應(yīng)用科技學(xué)院 電子信息工程專(zhuān)業(yè)120352010056 唐夏君 指導(dǎo)老師 王毅 【摘要】本次設(shè)計(jì)是基于單總線(xiàn)的溫濕度測(cè)量系統(tǒng)。采用濕溫度傳感器DHT11來(lái)實(shí)現(xiàn)了對(duì)濕度、溫度的檢測(cè),先采集信號(hào),再用STC89C52單片機(jī)對(duì)它進(jìn)行數(shù)據(jù)分析、處理,為顯示電路所提供信號(hào)。本次設(shè)計(jì)顯示部分采用LCD1602液晶來(lái)顯示所測(cè)的溫濕度值??傮w而言,本次設(shè)計(jì)系統(tǒng)簡(jiǎn)單、工作穩(wěn)定、測(cè)量精度高、調(diào)試方便,具有了一定的實(shí)用價(jià)值?!娟P(guān)鍵詞】STC89C52;DHT11濕溫度傳感器;LCD1602顯示Based on the design of a single-bus temperature and humidity measurement systemScience and Technology Practising College Fujian Normal UniversityElectronic Information Engineering 120352010056 Tang Xiajun Tutor: WangyiAbstract:thisdesignisbasedonaunibustemperature-humiditymeasurementsystem.DHT11sensorisusedtotesttemperatureandhumiditybyacquiresignal.ThenusingSTC89C52single-chipcomputerfordataanalysisandprocessing,whichcandisplaythecircuitprovidedbythesignal.ThisdesignadoptsLCD1602todisplaythemeasuredvaluesoftemperatureandhumidity.Ingeneral,thedesignsystemhasacertainpracticalvaluesinceitissimple,stable,highmeasuringprecisionandconvenientdebugging. Key Words STC89C52;DHT11;LCD1602目錄1 概述41.1設(shè)計(jì)背景41.2設(shè)計(jì)目的41.3 設(shè)計(jì)要求41.4系統(tǒng)總體設(shè)計(jì)51.4.1系統(tǒng)實(shí)現(xiàn)的主要功能51.4.2系統(tǒng)的工作原理簡(jiǎn)介51. 4.3 總體構(gòu)成52系統(tǒng)的硬件設(shè)計(jì)62.1硬件原理圖62.2主控模塊設(shè)計(jì)72.2.1基本特性72.2.2 STC89C52組成部分72.2.3 STC89C52參數(shù)72.2.4 引腳說(shuō)明82.2.5 復(fù)位電路設(shè)計(jì)82.2.6 外部晶振室之中電路設(shè)計(jì)82.3 DHT11傳感器模塊設(shè)計(jì)92.3.1 DHT11傳感器簡(jiǎn)介92.3.2 DHT11引腳說(shuō)明92.3.3 DHT11傳感器指標(biāo)特性102.3.4 DHT11數(shù)據(jù)結(jié)構(gòu)102.3.5DHT11傳輸時(shí)序102.3.6DHT11典型電路連接112.3.7 DHT11傳感器模塊電路設(shè)計(jì)122.4 LCD1602液晶顯示模塊設(shè)計(jì)122.4.1 LCD1602液晶顯示屏簡(jiǎn)介122.4.2 LCD1602液晶引腳說(shuō)明132.4.3 LCD1602液晶顯示模塊133仿真軟件簡(jiǎn)介143.1 Proteus軟件143.2 Keil軟件144系統(tǒng)的軟件設(shè)計(jì)144.1總體程序框架流程圖144.2軟件程序代碼155程序下載軟件說(shuō)明206 電路PCB及實(shí)物圖217 總結(jié)238 致謝24參考文獻(xiàn)241 概述1.1設(shè)計(jì)背景在我們的生活中,溫度和濕度是我們環(huán)境的重要參數(shù)。大夏天給我們的感覺(jué)就是高溫、濕熱并且喘不過(guò)氣。那到底要多少溫度和濕度才是人體最適合的?科學(xué)家們發(fā)現(xiàn)環(huán)境溫度達(dá)到25時(shí),最適宜人類(lèi)生活。在這個(gè)環(huán)境溫度下,人體沒(méi)熱冷感覺(jué),并且人身體內(nèi)毛細(xì)血管自然舒張,人覺(jué)得相當(dāng)舒服。除了溫度以外,濕度對(duì)人體感覺(jué)也是很重要的,當(dāng)環(huán)境濕度大于95%的時(shí)候,人會(huì)覺(jué)得整體相當(dāng)悶熱,體表排汗時(shí)受阻,散熱不給力,皮膚也感覺(jué)很潮濕又黏黏的并且呼吸困難,連整個(gè)人的心情都變得煩躁不安。但是,若濕度太低的話(huà)會(huì)因?yàn)榄h(huán)境太干燥而引起人皮膚脫皮。一般最適合人體生活的濕度是50%左右。不僅是人類(lèi)需要適合的溫度濕度,在我們的生產(chǎn)中許多產(chǎn)品在生產(chǎn)過(guò)程中都是需要合適的溫度與濕度才能成為合格的產(chǎn)品。我們的生產(chǎn)作業(yè)中很多產(chǎn)品對(duì)其溫濕度的要求都不一樣,溫濕度的高低對(duì)產(chǎn)品的質(zhì)量影響是十分巨大的。很多產(chǎn)品因?yàn)闇囟葷穸鹊目刂茩z測(cè)不對(duì),于是乎就造成了很多我們無(wú)法估量的經(jīng)濟(jì)損失。為了讓我們的產(chǎn)品沒(méi)問(wèn)題,我們必須先解決溫度和濕度的控制檢測(cè)系統(tǒng),以前傳統(tǒng)的方法又費(fèi)時(shí)間又費(fèi)力氣況且效率不高,導(dǎo)致經(jīng)常會(huì)有偏差。對(duì)于溫度和濕度這兩個(gè)相當(dāng)重要的參數(shù),本系統(tǒng)采用的是STC89C52單片機(jī)作為主控芯片,LCD1602液晶作為顯示,溫濕度傳感器是DHT11。DHT11首先進(jìn)行溫度濕度信號(hào)的采集,然后傳給了STC89C52單片機(jī),STC89C52單片機(jī)對(duì)它進(jìn)行數(shù)據(jù)分析、處理,并且為L(zhǎng)CD1602液晶提供顯示信號(hào),最后由LCD1602顯示出當(dāng)前的溫度和濕度值。就這設(shè)計(jì)來(lái)說(shuō),此次設(shè)計(jì)的系統(tǒng)簡(jiǎn)單、工作穩(wěn)定、測(cè)量精密度高、調(diào)試也很簡(jiǎn)單,具有了一定的使用價(jià)值。1.2設(shè)計(jì)目的溫度與濕度的控制是我們生活生產(chǎn)中必不可少的,為了讓生產(chǎn)過(guò)程中的產(chǎn)品能夠合格生產(chǎn)出來(lái),必須要嚴(yán)格監(jiān)控生產(chǎn)環(huán)境里的溫濕度,只有嚴(yán)格控制好了溫度和濕度才能讓產(chǎn)品的合格率打到100%。所以這更突出了溫濕度以及檢測(cè)與控制它的重要意義。1.3 設(shè)計(jì)要求 采用單片機(jī)和數(shù)字式溫濕度傳感器DHT11,設(shè)計(jì)一種溫濕度測(cè)量系統(tǒng): 根據(jù)單片機(jī)控制溫濕度傳感器DHT11的工作時(shí)序。給出了溫度測(cè)量系統(tǒng)的硬件電路和軟件程序設(shè)計(jì)的方法,以及單片機(jī)對(duì)DHT11的初始化程序,讀、寫(xiě)等相關(guān)程序。實(shí)現(xiàn)了對(duì)測(cè)量溫濕度的采集和顯示。1.4系統(tǒng)總體設(shè)計(jì)1.4.1系統(tǒng)實(shí)現(xiàn)的主要功能系統(tǒng)所要實(shí)現(xiàn)的功能是:溫濕度實(shí)時(shí)監(jiān)測(cè)以及顯示。并通過(guò)1602液晶顯示溫濕度傳感器DHT11采集到濕溫度的值。1.4.2系統(tǒng)的工作原理簡(jiǎn)介本次設(shè)計(jì)在大體上做到了了對(duì)溫濕度的測(cè)量顯示功能。硬件方面有三個(gè)模塊:STC89C52單片機(jī)控制模塊;傳感器模塊;LCD1602液晶顯示模塊。傳感器模塊是用DHT11溫濕度傳感器,通過(guò)DHT11測(cè)出當(dāng)前溫濕度值,并且將采集到的數(shù)據(jù)傳輸給單片機(jī)。通過(guò)單片機(jī)STC89C52的處理讓LCD1602液晶顯示溫濕度的值。我把LCD1602顯示設(shè)置成分兩行顯示,第一行顯示濕度,第二行顯示溫度。1. 4.3 總體構(gòu)成1. 4.3.1總體設(shè)計(jì)框圖 按照本設(shè)計(jì)功能的要求,在保證實(shí)現(xiàn)的功能下,盡量減少本設(shè)計(jì)成本??傮w設(shè)計(jì)方案圍繞上述思想,初步確定設(shè)計(jì)的方案如圖1.1所示。圖1.1系統(tǒng)總體設(shè)計(jì)如圖1.1所示,系統(tǒng)由微處理器模塊、DHT11傳感器模塊、LCD1602液晶顯示模塊組成。1. 4.3.2總體設(shè)計(jì)工作進(jìn)程 本次設(shè)計(jì)用到LCD1602和DHT11。LCD1602液晶經(jīng)常用到,而DHT11傳感器沒(méi)怎么使用過(guò),因此先解決LCD1602液晶顯示問(wèn)題然后再解決DHT11傳感器部分。整個(gè)流程圖如圖1.2所示完 成進(jìn)行傳器 調(diào)試進(jìn)行液晶顯示調(diào)試用Proteus仿真分析題目查找資料圖1.2整體設(shè)計(jì)流程圖2系統(tǒng)的硬件設(shè)計(jì)2.1硬件原理圖2.2主控模塊設(shè)計(jì)使用的時(shí)候?qū)0.0P0.7口與LCD1602液晶顯示的數(shù)據(jù)傳輸口相連,P3.3口作為與傳感器DHT11的數(shù)據(jù)采集口相連。2.2.1基本特性Atmel公司的STC89C52系列單片機(jī)是我國(guó)近10年來(lái)使用較多的單片機(jī),特別是高校實(shí)驗(yàn)室開(kāi)發(fā)實(shí)驗(yàn)裝置多數(shù)都采用它。因?yàn)樵?1世紀(jì)初,在我國(guó)電子市場(chǎng)上,STC89C52技術(shù)資料豐富,貨源充足,價(jià)格相對(duì)便宜,專(zhuān)營(yíng)教學(xué)儀器單片機(jī)總和開(kāi)發(fā)實(shí)驗(yàn)裝置的科技公司也都青睞它。STC89C52是一種內(nèi)帶4KB閃存的ROM、低電壓、高性能CMOS制造工藝的8位單片機(jī)。它具有MCS-51的所有特性。STC89C52單片機(jī)的軟件編程既可以用匯編語(yǔ)言,也可以用C51高級(jí)語(yǔ)言。2.2.2 STC89C52組成部分AT89C51內(nèi)部的基本組成主要包括:中央處理器CPU;內(nèi)部4KB Flash ROM,這是用來(lái)存放程序、數(shù)據(jù)等一些東西;內(nèi)部256個(gè)RAM單元,通常用戶(hù)使用低128位單元,主要用來(lái)存放和讀寫(xiě)數(shù)據(jù),而高128位單元系統(tǒng)則是用來(lái)分配21個(gè)特殊功能寄存器的;兩個(gè)16位的定時(shí)器/計(jì)數(shù)器,即T0、T1;4個(gè)8位的I/0口,即P0、P1、P2、P3;一個(gè)全雙工串行口,即RXD、TXD;5個(gè)中斷系統(tǒng),包括2個(gè)外部中斷、2個(gè)定時(shí)器/計(jì)數(shù)器中斷以及1個(gè)串行通信中斷;2.2.3 STC89C52參數(shù). 屬于增強(qiáng)型8051單片機(jī),6 時(shí)鐘/機(jī)器周期和12 時(shí)鐘/機(jī)器周期可以任意選擇. 工作電壓:5.5V3.3V(5V單片機(jī))/3.8V2.0V(3V 單片機(jī)).工作頻率范圍:040MHz,相當(dāng)于普通8051 的080MHz,實(shí)際工作 頻率可達(dá)48MHz. 用戶(hù)應(yīng)用程序空間為8K字節(jié). 片上集成512 字節(jié)RAM. 具有EEPROM 功能. 有3 個(gè)16 位定時(shí)器/計(jì)數(shù)器。即定時(shí)器T0、T1、T2. 工作溫度范圍:-40+85(工業(yè)級(jí))/075(商業(yè)級(jí)). PDIP封裝 2.2.4 引腳說(shuō)明 、電源及時(shí)鐘引腳電源引腳:Vcc是運(yùn)行和程序校驗(yàn)時(shí)接電源+5V,Vss是電源接地端GND時(shí)鐘引腳:XTAL1是片內(nèi)振蕩器反相放大器的輸入端和內(nèi)部時(shí)鐘工作的輸入端,采用內(nèi)部振蕩器時(shí),接外部石英晶體和微調(diào)電容的一個(gè)引腳。XTAL2是片內(nèi)振蕩器反相放大器的輸出端,接外部石英晶體和微調(diào)電容的另一端,當(dāng)采用外部振蕩器時(shí),該引腳是空。、控制引腳1 ALE/PROG:地址鎖存允許/編程線(xiàn)。2 PSEN:外部程序存儲(chǔ)器ROM的讀選通線(xiàn)。3 EA/VPP:片外ROM允許訪(fǎng)問(wèn)端/編程電源端。4 RST:復(fù)位輸入端,大于2個(gè)機(jī)器周期的高電平脈沖信號(hào)有效。2.2.5 復(fù)位電路設(shè)計(jì) 下圖是按鍵手動(dòng)復(fù)位,只要將鍵按下,RST為高電平,復(fù)位有效。 2.2.6 外部晶振室之中電路設(shè)計(jì)STC89C52振蕩電路端可由內(nèi)部軟件編程來(lái)控制啟停,使系統(tǒng)進(jìn)入低功耗狀態(tài)。外部諧振電路并行連接石英晶體或陶瓷諧振器XTAL和負(fù)載電容C11、C12。對(duì)外接電容的值雖然沒(méi)有嚴(yán)格的要求,但電容的大小多少會(huì)影響振蕩器頻率的高低、振蕩器的穩(wěn)定性、起振的快速性。外接晶體時(shí)。C11、C12的值常選33pF左右;在外陶瓷諧振器時(shí),C11、C12的典型值約為47pF。在設(shè)計(jì)印刷電路板時(shí),晶體或陶瓷振蕩器和電容應(yīng)盡可能靠近單片機(jī)安裝,以減少寄生電容,更好地保證振蕩器穩(wěn)定可靠地工作。為了提高溫度穩(wěn)定性,應(yīng)采用溫度穩(wěn)定性好的電容。晶體振蕩器可在1.212MHz之間選擇,電容可在560pF之間選擇,電容C11、C12的大小對(duì)振蕩器的頻率有微小影響。2.3 DHT11傳感器模塊設(shè)計(jì)2.3.1 DHT11傳感器簡(jiǎn)介本次設(shè)計(jì)采用DHT11數(shù)字溫濕度傳感器,這個(gè)產(chǎn)品有4個(gè)引腳封裝,1腳用來(lái)接電源,2腳接單總線(xiàn),3腳懸空或不使用,4腳接地。它的內(nèi)部還包含著一個(gè)電阻式感應(yīng)濕度的元件和一個(gè)測(cè)量溫度的元件,并且可以與一個(gè)性能高的8位單片機(jī)相連接。DHT11具有功耗低、體積小的優(yōu)點(diǎn),使其可以適應(yīng)各種應(yīng)用場(chǎng)合。2.3.2 DHT11引腳說(shuō)明 Pin名稱(chēng)類(lèi)型注釋1VCC電源供電3V-5.5VDC2Dout輸出單總線(xiàn)、串行數(shù)據(jù)3NC空空腳4GND地電源地2.3.3 DHT11傳感器指標(biāo)特性DHT11性能指標(biāo)和特性如下:工作電壓范圍:3.5V5.5V。工作電流:平均0.5mA。濕度測(cè)量范圍:2090%RH。溫度測(cè)量范圍:050。濕度分辨率:1%RH 8位。溫度分辨率:1 8位。采樣周期:1S。單總線(xiàn)結(jié)構(gòu)。與TTL兼容(5V)。2.3.4 DHT11數(shù)據(jù)結(jié)構(gòu)DHT11數(shù)字溫濕度傳感器采用單總線(xiàn)數(shù)據(jù)格式。即單個(gè)數(shù)據(jù)引腳端口完成輸入輸出雙向傳輸。其數(shù)據(jù)包由5Byte(40Bit)組成。數(shù)據(jù)分小數(shù)部分和整數(shù)部分,具體格式在下面說(shuō)明。一次完整的數(shù)據(jù)傳輸為40bit,高位先出。數(shù)據(jù)格式:8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)+8bit溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)+8bit校驗(yàn)和傳感器數(shù)據(jù)輸出的是位編碼的二進(jìn)制數(shù)據(jù)。數(shù)據(jù)(濕度、溫度、整數(shù)、小數(shù))之間應(yīng)該分開(kāi)處理。2.3.5DHT11傳輸時(shí)序 、DHT11開(kāi)始發(fā)送數(shù)據(jù)流程主機(jī)發(fā)送開(kāi)始信號(hào)后,延時(shí)等待20us-40us后讀取DHT11的回應(yīng)信號(hào),讀取總線(xiàn)為低電平,說(shuō)明DHT11發(fā)送相應(yīng)信號(hào),DHT11發(fā)送相應(yīng)信號(hào)后,再把總線(xiàn)拉高,準(zhǔn)備發(fā)送數(shù)據(jù),每一bit數(shù)據(jù)都以低電平開(kāi)始,格式見(jiàn)上圖所示。如果讀取響應(yīng)信號(hào)為高電平,則DHT11沒(méi)有響應(yīng),請(qǐng)檢查線(xiàn)路是否連接正常。、主機(jī)復(fù)位信號(hào)和DHT11響應(yīng)信號(hào)、數(shù)字0信號(hào)表示方法、數(shù)字1信號(hào)表示方法2.3.6DHT11典型電路連接DHT11典型應(yīng)用電路如下圖所示,它的連接電路比較容易,只需要用一個(gè)MCU的I/O口就能完成連接。推薦其連接線(xiàn)的長(zhǎng)度在20米以?xún)?nèi)時(shí)使用5K左右的上拉電阻,而大于20米時(shí)就要根據(jù)實(shí)際情況選擇合適的電阻。使用3.5V電壓供電時(shí)連接線(xiàn)長(zhǎng)度不得大于20cm。否則線(xiàn)路壓降會(huì)導(dǎo)致傳感器供電不足,造成測(cè)量偏差。每次讀出的溫濕度數(shù)值是上一次測(cè)量的結(jié)果,欲獲取實(shí)時(shí)數(shù)據(jù),需連續(xù)讀取兩次,但不建議連續(xù)多次讀取傳感器,每次讀取傳感器間隔大于5秒即可獲得準(zhǔn)確的數(shù)據(jù)。2.3.7 DHT11傳感器模塊電路設(shè)計(jì)DHT11傳感器連接單片機(jī)比較簡(jiǎn)單,將DHT11的Pin2(2腳)接單片機(jī)P3.3口。由于測(cè)量范圍電路小于20米,則在傳感器的Pin2接一個(gè)5K的上拉電阻到電源正極。DHT11傳感器的電源端口Pin1和Pin4分別接電源的正負(fù)極,第三腳懸空放置。DHT11傳感器元件的電路原理圖如下所示。2.4 LCD1602液晶顯示模塊設(shè)計(jì)2.4.1 LCD1602液晶顯示屏簡(jiǎn)介L(zhǎng)CD1602是一種支持字母、數(shù)字、符號(hào)等顯示的點(diǎn)陣型液晶模塊,由32個(gè)5*7點(diǎn)陣字符位組成,每一個(gè)點(diǎn)陣字符位都可以顯示一個(gè)字符。LCD1602主要技術(shù)參數(shù)2.4.2 LCD1602液晶引腳說(shuō)明管腳號(hào)管腳名稱(chēng)狀態(tài)管腳功能描述1VSS電源地2VDD電源正極3VO液晶顯示偏壓信號(hào)4RS輸入寄存器選擇5R/W輸入讀、寫(xiě)操作6E輸入使能信號(hào)7DB0三態(tài)數(shù)據(jù)總線(xiàn)0(LSB)8DB1三態(tài)數(shù)據(jù)總線(xiàn)19DB2三態(tài)數(shù)據(jù)總線(xiàn)210DB3三態(tài)數(shù)據(jù)總線(xiàn)311DB4三態(tài)數(shù)據(jù)總線(xiàn)412DB5三態(tài)數(shù)據(jù)總線(xiàn)513DB6三態(tài)數(shù)據(jù)總線(xiàn)614DB7三態(tài)數(shù)據(jù)總線(xiàn)7(MSB)15LEDA輸入背光+5V16LEDK輸入背光地2.4.3 LCD1602液晶顯示模塊液晶模塊如下圖所示,第3腳加了一個(gè)10K的電位器,該電位器是用來(lái)調(diào)節(jié)LCD1602液晶顯示的對(duì)比度,通過(guò)電位器調(diào)節(jié)Vo的電壓值,使人們可以清楚看見(jiàn)LCD1602液晶上所顯示的數(shù)值。3仿真軟件簡(jiǎn)介3.1 Proteus軟件Proteus軟件是英國(guó)Labcenter electronics公司出版的EDA工具軟件。他主要就是用來(lái)仿真電路,以及仿真單片機(jī)及其外圍器件,它是目前最好的仿真單片機(jī)及外圍器件的工具。其特點(diǎn)是:實(shí)現(xiàn)了單片機(jī)仿真和通用模擬電路仿真器相結(jié)合。具有模擬電路仿真、數(shù)字電路仿真、單片機(jī)及其外圍電路組成系統(tǒng)的仿真功能。有各種虛擬儀器,如示波器、邏輯分析儀、信號(hào)發(fā)生器等。支持主流單片機(jī)系統(tǒng)的仿真。如68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各種外圍芯片。提供軟件調(diào)試功能,在硬件仿真系統(tǒng)中具有全速、單步、設(shè)置斷點(diǎn)等調(diào)試功能,同時(shí)還可以觀(guān)察各個(gè)變量、寄存器等的當(dāng)前狀態(tài),支持第三方的軟件編譯和調(diào)試環(huán)境,如Keil 4等軟件。支持大量的外圍芯片和存儲(chǔ)器,具有強(qiáng)大的原理圖繪制功能??偠灾撥浖且豢罴瘑纹瑱C(jī)和通用模擬電路仿真器分析于一身的仿真軟件,功能極其強(qiáng)大。在Proteus中繪制好原理圖連接號(hào)線(xiàn)路后,調(diào)入已經(jīng)編譯好的.HEX文件,就可以在Proteus的原理圖中看到模擬的實(shí)物運(yùn)行狀態(tài)和過(guò)程。3.2 Keil軟件keil uvision4軟件是KEIL公司的產(chǎn)品。在使用的時(shí)候打開(kāi)Keil 4界面,首先要新建一個(gè)工程,保存一個(gè)名字,然后選擇芯片,本設(shè)計(jì)所用的單片機(jī)是Atmel AT89S52,在編寫(xiě)完程序后點(diǎn)擊編譯,沒(méi)有錯(cuò)誤的話(huà)選擇“Options for Target Target 1”,在該窗口下,將晶振的頻率(Xtel (MHz))設(shè)置為12MHz,然后選擇“Output”在“Create HEX File”前面打鉤,OK。在繼續(xù)編譯后出現(xiàn)“create hex file from”,編譯完成,此時(shí)文件就可以被單片機(jī)識(shí)別應(yīng)用,導(dǎo)入即可。4系統(tǒng)的軟件設(shè)計(jì)4.1總體程序框架流程圖對(duì)于本次設(shè)計(jì)我先建立程序框架流程圖,然后對(duì)整個(gè)設(shè)計(jì)劃分模塊,逐個(gè)實(shí)現(xiàn)各個(gè)模塊功能,然后把各個(gè)模塊連接起來(lái)并構(gòu)成總程序。開(kāi)始初始化 延時(shí) 溫濕度檢測(cè)傳送回單片機(jī)LCD1602液晶顯示數(shù)據(jù)4.2軟件程序代碼#include#include#define uchar unsigned char#define uint unsigned int#define uint8 unsigned int#includelcd1602.h#includeDTH11.h#includeconfig.hvoid main()uchar buff16;lcd_init();while(1)DTH11();sprintf(buff,SHIDU:%c%c.%c RH,buf0,buf1,buf2);DisText(0x80,buff);sprintf(buff,WENDU:%c%c.%c C,buf3,buf4,buf5);DisText(0xc0,buff);delay1ms(20);#ifndef _DTH11_H_#define _DTH11_H_#includeconfig.hextern uchar buf6;/*延時(shí)1ms的延時(shí)函數(shù)*/extern void delay1ms(uchar i);/*DHT11操作總時(shí)序時(shí)序函數(shù)*/void DTH11(void);#endif#includeconfig.hsbit P3_3=P33;uchar u8flag;uchar comdata;uchar RHdata_H_temp,RHdata_L_temp,Tdata_H_temp,Tdata_L_temp,checkdata_temp;uchar RHdata_H,RHdata_L,Tdata_H,Tdata_L,checkdata;uchar buf6;/*延時(shí)1ms的延時(shí)函數(shù)*/void delay1ms(uchar i) uchar j;for(;i0;i-)for(j=0;j0;i-);/*DHT11讀取一字節(jié)數(shù)據(jù)時(shí)序函數(shù)*/void comread(void)uchar i,tem; for(i=0;i8;i+)u8flag=2;while(!P3_3)&(u8flag+);/等待50us時(shí)間過(guò)去delay10us(); /延時(shí)差不多30usdelay10us();delay10us();tem=0;if(P3_3) /如果是高地平則tem=1;tem=1;u8flag=2;while(P3_3)&(u8flag+); /等待70us時(shí)間過(guò)去if(u8flag=1)break;comdata=1; /左移一位comdata|=tem; /與tem相與elsecomdata=1;comdata|=tem; /*DHT11操作總時(shí)序時(shí)序函數(shù)*/void DTH11(void)uchar temp;P3_3=0; /拉低總線(xiàn)為低電平delay1ms(180); /拉低時(shí)間為至少18msP3_3=1; /拉高總線(xiàn)為高地平delay10us(); /拉高時(shí)間為20us40usdelay10us();delay10us();delay10us();P3_3=1;if(!P3_3)u8flag=2;while(!P3_3)&(u8flag+);/等待80us的低電平時(shí)間過(guò)去u8flag=2;while(P3_3)&(u8flag+); /等待80us的高地平時(shí)間過(guò)去comread(); /讀取數(shù)據(jù)的函數(shù)RHdata_H_temp=comdata; /讀取數(shù)據(jù)的RH的高位comread();RHdata_L_temp=comdata; /讀取數(shù)據(jù)的RH的低位comread();Tdata_H_temp=comdata; /讀取數(shù)據(jù)溫度的高位comread();Tdata_L_temp=comdata; /讀取數(shù)據(jù)溫度的地位comread();checkdata_temp=comdata; /讀取數(shù)據(jù)最后一位是校驗(yàn)位P3_3=1;temp=(RHdata_H_temp+RHdata_L_temp+Tdata_H_temp+Tdata_L_temp);if(temp=checkdata_temp);RHdata_H=RHdata_H_temp;RHdata_L=RHdata_L_temp;Tdata_H=Tdata_H_temp;Tdata_L=Tdata_L_temp;checkdata=checkdata_temp;buf0=(uchar)(0x30+RHdata_H/10); /把十六進(jìn)制數(shù)值轉(zhuǎn)換成十進(jìn)制buf1=(uchar)(0x30+RHdata_H%10);buf2=(uchar)(0x30+RHdata_L/10);buf3=(uchar)(0x30+Tdata_H/10);buf4=(uchar)(0x30+Tdata_H%10);buf5=(uchar)(0x30+Tdata_L/10);#ifndef _LCD1602_H_#define _LCD1602_H_#includeconfig.h/* 名稱(chēng):lcd_init()* 功能:lcd初始化函數(shù)*/void lcd_init(void);/* 名稱(chēng):DisText()* 功能:顯示文本函數(shù)*/extern void DisText(uint8 addr,char *p);#endif#includelcd1602.hsbit RS= P26 ;sbit RW= P25 ;sbit EN= P27 ;#define Del() delay1ms(20)/* 名稱(chēng):WrOp()* 功能:寫(xiě)命令函數(shù)*/void WrOp(uint8 dat)RS= 0;/全部清零RW= 0;P0= dat ;EN= 1;Del();EN= 0;/* 名稱(chēng):WrDat()* 功能:寫(xiě)數(shù)據(jù)函數(shù)*/void WrDat(uint8 dat)RS= 1;/全部清零RW= 0;P0= dat ;EN= 1;Del();EN= 0;/* 名稱(chēng):lcd_init()* 功能:lcd初始化函數(shù)*/void lcd_init(void)WrOp(0x38);WrOp(0x06);/光標(biāo)加1WrOp(0x0c);/開(kāi)顯示delay1ms(100);/* 名稱(chēng):DisText()* 功能:顯示文本函數(shù)*/void DisText(uint8 addr,char *p)WrOp(addr);while(*p !=0)WrDat(*(p+);5程序下載軟件說(shuō)明本程序設(shè)計(jì)是基于Keil uVision4環(huán)境下開(kāi)發(fā),該軟件支持C語(yǔ)言編程,使用方便。把程序?qū)懞煤髮⑵渖?hex文件,再用燒寫(xiě)軟件將數(shù)據(jù)燒到STC89C52單片機(jī)內(nèi)。燒寫(xiě)時(shí)應(yīng)注意先將開(kāi)發(fā)板與電腦USB連接好,并且檢查開(kāi)發(fā)板鎖對(duì)應(yīng)的COM口,以免燒寫(xiě)失敗。6 電路PCB及實(shí)物圖PCB圖實(shí)物圖(正面)實(shí)物圖(背面)7 總結(jié)經(jīng)過(guò)本次課程設(shè)計(jì),在硬件方面我對(duì)制作單面板的打磨、轉(zhuǎn)印、腐蝕、鉆孔這些方面有了新的認(rèn)識(shí)。做單面板并不是個(gè)容易的事,必須要細(xì)心認(rèn)真。比如說(shuō)在腐蝕電路板的時(shí)候,一定要拿個(gè)沒(méi)用的臉盆或者塑料桶,在臉盆或者塑料桶里面用100的滾燙的熱開(kāi)水兌著藍(lán)色腐蝕液,開(kāi)水也不并是說(shuō)放越多越好,只要沒(méi)過(guò)我們的覆銅板一些即可。之后要雙手抓住臉盆或塑料桶用力均勻的搖動(dòng)臉盆或者塑料桶,大約搖半個(gè)小時(shí)左右就可以看到電路板已經(jīng)腐蝕完畢,把電路板從臉盆或塑料桶里拿出并用紙巾擦干電路板,再用砂紙把我們要焊接的電路全部摩開(kāi),這就腐蝕完畢了。然后就是在鉆孔的時(shí)候,必須根據(jù)焊盤(pán)大小選擇合適的鉆頭鉆孔,這個(gè)也非常重要的。如果鉆頭用太小,會(huì)導(dǎo)致元器件壓根就插不進(jìn)去,就要重新?lián)Q個(gè)大點(diǎn)的鉆頭鉆孔;如果鉆頭用太大的,那很有可能直接就把焊盤(pán)的銅直接鉆斷掉。所以一定要根據(jù)焊盤(pán)大小選擇合適的鉆頭來(lái)鉆孔。其次就是焊接元器件了,雖然本電路元器件比較少,但是我們?cè)诤附忧氨仨毾葯z測(cè)下元器件是否正常、焊接時(shí)方向是否有誤。如果檢測(cè)時(shí)發(fā)現(xiàn)元件不正常了,那一定要趕快更換一個(gè)能用的再焊進(jìn)去,要不然會(huì)導(dǎo)致我們焊接完畢調(diào)試的時(shí)候發(fā)現(xiàn)根本就不能用,又要再找原因,焊接時(shí)焊接元件的方向也是一定要注意,焊接反了很有可能讓整個(gè)電路損毀造成意想不到的后果。拿烙鐵焊接時(shí)手要拿穩(wěn)烙鐵,不要讓烙鐵接觸焊點(diǎn)過(guò)長(zhǎng),以免把焊盤(pán)焊壞,最后將焊接好的元件剪去多余引腳。在軟件方面我學(xué)會(huì)了如何使用Altium Designer Summer 09。以前我們都是使用Protel 2004來(lái)畫(huà)電路板,所以用的比較上手。但是Protel 2004在繪制PCB的時(shí)候不能刻上自己的名字學(xué)號(hào),需要借助Altium Designer Summer 09來(lái)實(shí)現(xiàn)其功能。于是我索性直接就用Altium Designer Summer 09這個(gè)軟件來(lái)畫(huà)電路。首先安裝這軟件就成了第一個(gè)問(wèn)題,我首先去我同學(xué)那拷貝了下Altium Designer Summer 09的安裝包及安裝教程txt文件。然后再安裝教程的說(shuō)明下成功的安裝好了Altium Designer Summer 09這軟件。但即使安裝完軟件了還有一個(gè)步驟就是破解Altium Designer Summer 09軟件。這個(gè)嘛,我請(qǐng)教了我們班上的周友杰同學(xué),在他的幫助下,我成功的把Altium Designer Summer 09破解了。接下來(lái)我打開(kāi)這軟件創(chuàng)建了一個(gè)工程,在這個(gè)工程下又創(chuàng)建了原理圖、元件庫(kù)和封裝庫(kù)以及PCB圖。先從原理圖入手,我把一些系統(tǒng)自帶的元件先添加到原理圖上,并且用線(xiàn)將

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論