第1章 緒 論
1.1 研究該課題的背景和意義隨著科技的快速發(fā)展,生活檔次在不斷的提高,就不滿足與物質(zhì)上的需求了,而轉(zhuǎn)型開始對于生活品質(zhì)的追求,生活中人體舒適度優(yōu)良便成了幸福指數(shù)之一。而家是人們除工作以外呆的最久的地方,良好的室內(nèi)氣象條件,比如說室內(nèi)溫濕度,是能否讓人感到舒適的重要指標(biāo)之一。溫度過高或者太低、環(huán)境過于潮濕或者干燥,都會讓人體感到不適,它間接干擾著人們生活的舒適度與否以及情緒高低。所以就非常需要對室內(nèi)溫濕度進(jìn)行監(jiān)測,方便更好的調(diào)控。
傳統(tǒng)的室內(nèi)溫濕度監(jiān)測是靠人工手動完成,利用水銀溫度計和濕度計等老舊測量儀器來進(jìn)行檢測。然而這種方法特別耗費人力而且測量誤差大。同時這種方式也并不能實現(xiàn)溫濕度的實時測量。因此大家需要集成性更高,而且精度高,誤差小的檢測工具來替代傳統(tǒng)的手工方式。
由于現(xiàn)代電子技術(shù)的快速發(fā)展、新材料也與日懼新,由于人們開始追求數(shù)據(jù)信號采集的準(zhǔn)確性和時效性,因此傳感器和單片機(jī)這幾種材料在新時代的需求下凸顯出來。人們把單片機(jī),溫濕度傳感器,顯示器整合在一起,外加必要的輔助電路組成一個全新的溫濕度檢測裝置。因為單片機(jī)在系統(tǒng)控制方面有很高的精準(zhǔn)性和穩(wěn)定性,在如今的生活生產(chǎn)里面應(yīng)用范圍十分寬廣,所以它的作用特別大,在本次課題設(shè)計中結(jié)合單片機(jī)和傳感器的應(yīng)用,也是對家庭溫濕度檢測裝置開創(chuàng)了一個改革性的顛覆。它有效的達(dá)到了人們追求的可靠性,精準(zhǔn)性,時效性和便捷性。
1.2 研究該課題的主要內(nèi)容本次的課題設(shè)計主要內(nèi)容是設(shè)計一個基于51單片機(jī)的家庭溫濕度檢測裝置。要求該裝置集成性高,操作簡單方便,檢測準(zhǔn)確高效,并且方便普通人知曉當(dāng)下的室內(nèi)溫濕度。同時要求該裝置有人工設(shè)定功能,能夠自由設(shè)定溫濕度的上下限范圍,當(dāng)室內(nèi)環(huán)境溫濕度超過檢測范圍即能實現(xiàn)報警功能,給人們及時的預(yù)防和調(diào)節(jié)。因此要先基于單片機(jī)制定課程方案,再配合溫濕度檢測傳感器、LED顯示屏、蜂鳴報警器外加必要的輔助電路,最后編寫程序?qū)雴纹瑱C(jī)作出實物。要求是給實體檢測裝置通電,就可以對室內(nèi)的溫濕度進(jìn)行檢測。
1.3 研究該課題的工作原理本次設(shè)計的硬件模塊主要有四個主要部分。它們分別是單片機(jī),主要是用來負(fù)責(zé)信號分析處理的主控模塊。然后是傳感器,主要是用來對室內(nèi)溫濕度進(jìn)行環(huán)境信號的采集。還有顯示器模塊,主要是環(huán)境數(shù)據(jù)的顯示以便給人們一個更加直觀的察覺。最后是蜂鳴報警裝置,該裝置主要是用來鳴醒提示當(dāng)下的溫濕度是否超常。因此該可以設(shè)計的主要原理是:首先肯定是傳感器感應(yīng)然后采集到室內(nèi)的溫度和濕度,然后把采集信號發(fā)發(fā)送至單片機(jī)控制中心來分析處理,經(jīng)過單片機(jī)處理后的數(shù)據(jù)信號由發(fā)送到顯示屏顯示。同時會在該裝置接入一個外聯(lián)報警裝置,人工設(shè)定室內(nèi)溫濕度上下限,實現(xiàn)溫濕度超常報警的功能,值得注意的是噶裝置需要設(shè)計兩種報警方式,溫濕度無論哪一種超過上限會報警,低于下限也會報警。本次課題的研究區(qū)域清楚明朗,各個部分之間的鏈接也是相對比較簡單。總而言之,本次設(shè)計的主要核心在于能有有效的,準(zhǔn)確的,便捷的實現(xiàn)室內(nèi)當(dāng)下的溫濕度檢測系統(tǒng),倘若室內(nèi)的溫濕度超標(biāo),則報警器會發(fā)出報警提示,來警示人們需要調(diào)節(jié)控制溫度。
第2章 系統(tǒng)總體方案設(shè)計
2.1 設(shè)計思路由之前的課題研究主要內(nèi)容已經(jīng)知曉這一次的課題研究主體為單片機(jī)。它首先通過調(diào)控溫濕度傳感器部分來對溫濕度進(jìn)行環(huán)境信號采集處理,接著再把分析此處理后的信號轉(zhuǎn)化成為數(shù)據(jù)移交給顯示屏,從而可以直觀看到當(dāng)前環(huán)境下的溫濕度數(shù)據(jù)。同時如果測量數(shù)據(jù)超過了給定的上下限蜂鳴器則會提示報警。本次研究的課題中,為了讓整個裝置核簡潔明了,節(jié)約成本并且實用。所以核心控制部分采用STC89C52單片機(jī),它工作條件范圍廣,同時運行分析數(shù)據(jù)速度也很快。同時遵循著簡潔明了的原理,溫濕度傳感器使用DHT11,它集合了溫濕度同時采集的功能,避免了繁瑣的溫濕度單獨采集,同時它自身也有很好的數(shù)模轉(zhuǎn)化功能,它的連接方式也較為簡單,只需要把它直接與單片機(jī)相對應(yīng)的引腳相連即可。顯示屏部分也是如此,選用顯示器1602,它可以直接與單片機(jī)引腳連接,因為他的引腳是插針式的。無形中便簡化了很多繁瑣的步驟,例如不需要人工手動焊接。實物制作部分連接板采用的是市場上常見的萬用樹脂板,因此只需將LCD1602顯示器和傳感器連在單片機(jī)上即可。如此方便的插拔式部件思維硬件方便實用,假如部分的零部件損壞,比如說,傳感器失靈,顯示屏損壞,不需要更換裝置,只需要把部分損壞部件更換即可。這樣的設(shè)計靈活巧便。無形中延長了裝置的使用壽命。非常合理的利用資源節(jié)約成本,也遵循了當(dāng)代社會下的生產(chǎn)工藝要求。本文的主要部分是對該裝置的硬件部分選用原則進(jìn)行說明論證,同時為了更方便大家的理解,論文后面對分對程序和燒錄進(jìn)行了詳細(xì)說明。
2.2 硬件的選擇和論證2.2.1 單片機(jī)的選擇和論證方案一:選擇AT89C51。AT89C51是一種帶4K字節(jié)FLASH存儲器的低電壓、高性能CMOS8位微處理器。它具有很多良好的特征,可以反復(fù)擦寫數(shù)據(jù)循環(huán)1000次,而且儲存數(shù)據(jù)可以保留10年,三級程序存儲器鎖定很好的保護(hù)了數(shù)據(jù)的保密性 ,還具有28×8位內(nèi)部RAM,32可編程I/O線,兩個16位定時器/計數(shù)器,可編程串行通道,低功耗的閑置和掉電模式等功能,是大學(xué)期間實驗常用的單片機(jī)類型
方案二:選擇STC89C52。這個單片機(jī)包含了上述AT系列單片機(jī)的所有基礎(chǔ)性能,并且在現(xiàn)有性能上有所提升,因此也有了一些不同。首先第一個不同之處是AT89C51不能夠使用ISP燒錄程序,但STC89C52可以用USB轉(zhuǎn)串口下載程序,方便使用。第二個不同之處在于STC89C52與AT89C51工作對現(xiàn)有環(huán)境要求不同,當(dāng)電壓低于5V時STC89C52可以正常使用,而AT89C51不能正常運行。
因此 比較以上那個兩種單片機(jī),不難發(fā)現(xiàn)。就性能要求而言,任何一個單片機(jī)的性能都滿足本設(shè)計的需求,但是就實驗的方便性,節(jié)約性以及簡潔性而言,學(xué)校學(xué)習(xí)單片機(jī)課程期間多數(shù)用的是STC系列單片機(jī),因此本次課程設(shè)計我選用STC89C52。
2.2.2 傳感器的選擇和論證方案一:使用溫濕度獨立測量方式。
溫度檢測部分采用DS18B20傳感器。濕度檢測部分采用HS1100傳感器。DS18B20為數(shù)字式傳感器,使用環(huán)境介于-55度和125之間,誤差在-0.5攝氏度或+0.5度。而濕度傳感器HS1100的使用環(huán)境介于-60度和140度之間,濕度范圍0到100 %RH
方案二: 使用DHT11溫濕度一體式傳感器
DHT11內(nèi)部自帶模數(shù)轉(zhuǎn)換,收集到外界信號后首先會進(jìn)行模數(shù)轉(zhuǎn)化,然后把信號發(fā)送給單片機(jī),而且這個傳感器結(jié)合了溫濕度檢測于一體,很符合實驗的簡潔性。DHT11中的NTC測溫零件是用來檢測溫度的。電阻式感濕零件用來檢測濕度。而且這個傳感器反應(yīng)快,精確度非常好。
因此,比較上述兩個方案,方案一中單獨測量精度更好,但是會增加設(shè)計成品的體型體積,不符合試驗設(shè)計的簡便性原則。上述兩種方案中的傳感器精度均滿足本次試驗需求,因此,性價比高,設(shè)計精巧,簡潔會更好,所以本設(shè)計使用方案二。
2.2.3 顯示器的選擇和論證方案一:應(yīng)用液晶顯示屏LCD1602。它能夠顯示2行16列32個字符。它組成于一些5x7或5x11的點陣字符位,每個位點陣字符能夠顯示一個字符,有間隔之間的距離,有每行之間的間隔,起到了字符間距和行間距的影響,所以不能夠很好的顯示圖形。
方案二:應(yīng)用液晶顯示屏12864。它即可以顯示漢字也可以顯示圖形,里面包含了128個字符和64x256點陣顯示RAM。可直接與CPU相連。
比較上面的兩個方案可得,兩方案都能很好的實現(xiàn)本設(shè)計的顯示模塊功能。本著性價比原則,由于市面上的12864液晶屏價格都很昂貴,相比而言液晶屏1602的價格比較低廉,故本次設(shè)計選用的是1602液晶屏來實現(xiàn)顯示。
第3章 系統(tǒng)硬件設(shè)計
3.1 系統(tǒng)總框圖圖2-1 系統(tǒng)總框圖
這一次的設(shè)計總體分為四部分,它們分別為單片機(jī),傳感器,顯示器和報警器。
3.2 主控模塊設(shè)計3.2.1 STC89C52芯片的簡介單片機(jī)STC89C52生產(chǎn)于STC公司,它是基于MCS-51單片機(jī)開發(fā)的,再經(jīng)過一系列的改進(jìn)。所以此單片機(jī)即具備了51系列單片機(jī)的兼容性,又比51系列單片機(jī)更加的靈活,可靠。也因此STC89C52單片機(jī)更多的用于嵌入式控制系統(tǒng)中。
基本功能特性:它的I/O口線位數(shù)為32,內(nèi)存為512字節(jié),具有8k字節(jié)Flash,里面還有4KB EEPROM,定時器和計數(shù)器為3個16位,包含MAX810復(fù)位電路,4個外部中斷,一個7向量4級中斷結(jié)構(gòu),看門狗定時器,全雙工串行口。除此之外,此單片機(jī)還有節(jié)電模式功能和掉電保護(hù)功能。節(jié)電模式下只有RAM、串口、中斷和定時計數(shù)器繼續(xù)工作,其他地方停止工作。掉電保護(hù)則是當(dāng)系統(tǒng)失去供電時,RAM內(nèi)的內(nèi)容不會丟失,而是被保存,其他部分則全部停止工作。持續(xù)到復(fù)位或者下一個中斷為止。
STC89C52單片機(jī)的引腳圖如下圖3-1所示:
圖3-1 STC89C52芯片
管腳說明[1]:
VCC:供電電壓。
GND:接地。
P0口:P0口有8個引腳,其為開放電路。每當(dāng)P1口在首次寫入1時,P0口就被定義為了高阻抗輸入。它能夠被表示為第八位的數(shù)據(jù)或地址,這是當(dāng)P0口用作于外部的程序存儲器的時候。P0口通常作為輸入的原代碼在系統(tǒng)編程的時候,當(dāng)對程序進(jìn)行檢查的時候,P0則輸出原碼。
P1口:P1口也有8個引腳,它們是雙向的上拉電阻。當(dāng)P1口輸入為1的時候,它里面被拉高,這時候為輸入作用。相反的它里面被拉低的時候為輸出,這些取決于內(nèi)部上拉電阻。
P2口:P2口有8個引腳,且它作為其內(nèi)部的上拉電阻的一個,它不僅僅能夠作為輸入端也能夠作為輸出端。
P3口:P3口是一個雙向口且內(nèi)部也有一個上拉電阻,它能夠收到4個TTL門電流。用作輸入的時候?qū)憺?。當(dāng)它的外部下拉為低的時候,將作為輸出。
P3口的一些特殊功能如下表3-1所示:
管腳備選功能[1]:
表3-1 P3口的第二功能
RST:復(fù)位輸入。只有恒定RST腳處于高電平才能夠用作復(fù)位器件。
ALE/PROG:當(dāng)系統(tǒng)在編程的時候,該引腳的作用是發(fā)送編程脈沖。振蕩器的頻率為1/6,ALE周期正脈沖信號恒定,能夠用于外部的輸出脈沖或計時目的。當(dāng)它作用于外部數(shù)據(jù)存儲器的時候,ALE脈沖被跳過,這個引腳會稍微拉高。此外,當(dāng)微處理器執(zhí)行外部狀態(tài)ALE,則該集合無效。
/PSEN:此引腳的作用主要是用作外面的程序保存器的選擇通道信號。
3.2.2 主控模塊電路原理圖系統(tǒng)起始為傳感器感應(yīng)采集環(huán)境的溫濕度,然后以數(shù)字量發(fā)給單片機(jī)來分析處理,然后再通過單片機(jī)發(fā)送到顯示屏來實現(xiàn)溫濕度的顯示,同時要連接一個報警系統(tǒng),通過給定的上下限,實現(xiàn)過限報警功能。
電路原理圖如下圖3-2所示:
圖3-2 STC89C52模塊電路原理圖
3.3 DHT11傳感器模塊設(shè)計3.3.1 DHT11傳感器簡介DHT11為一種具備模數(shù)轉(zhuǎn)換功能的傳感器,采集到信號后會先進(jìn)行處理,將所得到的信號先進(jìn)行模數(shù)轉(zhuǎn)換,然后再發(fā)給單片機(jī)。此傳感器集合了溫度采集和濕度采集,是一款復(fù)合型傳感器。它里面的NTC測溫元件負(fù)責(zé)采集溫度。還有一個負(fù)責(zé)采集濕度的元件電阻式感濕元件。每一個傳感器在出廠前都要經(jīng)過非常精確的校驗,確認(rèn)其精度,并且校準(zhǔn)后的標(biāo)準(zhǔn)系數(shù)會以程序形式存儲與傳感器內(nèi)部。每次使用時,傳感器都會先調(diào)用此程序,校準(zhǔn)傳感器讓傳感器處于精準(zhǔn)狀態(tài)。正是因為如此,DHT11傳感器具有極高的精度,并且性價比也很高。因此現(xiàn)代的工業(yè)生產(chǎn)中,涉及溫濕度檢測控制的設(shè)備大多都使用此類傳感器。它越來越多的使用與人們的生產(chǎn)生活中。
DHT11實物如下圖3-3所示:
圖3-3 DHT11溫濕度傳感器實物圖
(1)引腳介紹[3]:
Pin1:接電源
Pin2:單總線,數(shù)據(jù)為串行
Pin3: 空腳,請懸浮。
Pin4:接地端
(2)接口說明 :
電路圖如下圖3-4所示。
圖3-4 DHT11應(yīng)用電路圖
(3)數(shù)據(jù)幀的描述[9]:
DATA的作用是連接傳感器與單片機(jī),并保持它們之間的通訊與數(shù)據(jù)的同步。具體說明如下:
(1)遵循高位先出原則,一次傳輸40bit。
(2)8bi溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)+數(shù)據(jù)格式為8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)
(3)正常的情況下VDD 為 5伏,T 為25度,特別的情況則不同,特殊電氣特性具體如下表3-2所示[8]:
表3-2 DHT11的電氣特性
(5)時序描述:
首先單片機(jī)發(fā)送起始信號后,然后傳感器接收起始信號后會從低功耗模式變成高效率模式,然后起始信號過后,傳感器就會響應(yīng),然后發(fā)送40位的數(shù)據(jù)且采集一次信號。反之如果并未接收到信號,則傳感器不會采集溫濕度。
通訊過程如圖3-5所示:
圖3-5 DHT11通訊過程圖
電平在總線空閑時,單片機(jī)會等待傳感器的響應(yīng),總線一定要大于18ms,確保傳感器能測量到信號。當(dāng)傳感器收到從單片機(jī)發(fā)送的信號后,等到開始信號結(jié)束后,便發(fā)送一個80us的低電平響應(yīng)信號。單片機(jī)啟動信號后,等待20到40us后,讀取傳感器的響應(yīng)信號。此外,單片機(jī)信號啟動后,能夠轉(zhuǎn)換到輸入模式,或高輸出功率、平均總線通過更高的負(fù)載電阻。
圖3-6 DHT11信號接收發(fā)送過程圖
當(dāng)總線是低電平的時候,表示此時傳感器發(fā)送了響應(yīng)信號,其中數(shù)據(jù)位是1或者0決定于高電平的長短。
傳感器0信號的時如下圖3-7所示:
圖3-7數(shù)字0信號的表示方法
數(shù)字1信號表示方法如下圖3-8所示
圖3-8數(shù)字1信號表示方法
3.3.2 DHT11傳感器模塊電路設(shè)計由于DHT11傳感器可以直接與STC89C52單片機(jī)相連。首先將傳感器的Pin2口與單片機(jī)的P2.0口連接,這為數(shù)據(jù)口,用來數(shù)據(jù)的接收與發(fā)送。然后再將傳感器的Pin1口與單片機(jī)的VDD連接,Pin4口需接地。Pin3懸浮放置即可。
原理電路圖如下圖3-9所示:
圖3-9 DHT11電路原理圖
3.4 LCD1602液晶顯示模塊設(shè)計3.4.1 LCD1602液晶顯示屏簡介[7]LDC1602液晶顯示屏能夠?qū)崿F(xiàn)顯示2行16列。它常用于人們的生產(chǎn)生活中,比如常見的計算機(jī),電子表等都有用到液晶顯示屏,它的使用也越來越普遍。而在單片機(jī)應(yīng)用系統(tǒng)中使用它有以下優(yōu)點:
(1)此顯示屏為數(shù)字式,因而它能夠直接連接單片機(jī)的引腳,簡單方便。而且它為插針式,更換簡單,實用性強。
(2)傳統(tǒng)的陰極射線管顯示屏需要要不斷的刷新新亮點來顯示,因此顯示屏?xí)W爍。而液晶屏則避免了這一缺點,它能夠保持色彩和亮度。
(3)相比于傳統(tǒng)的顯示屏,液晶屏的耗電量更少,實用性更高,有效的利用了資源。
(4)液晶屏的結(jié)構(gòu)簡單,因此重量比傳統(tǒng)的顯示屏輕很多,所以在系統(tǒng)中使用時減少了系統(tǒng)的體積,更加合理的利用了系統(tǒng)空間。
LCD1602液晶顯示屏實物圖如下3-10所示:
圖3-10 液晶屏實物圖
(1)引腳說明[3]:
第1腳:接地。
第2腳:接5V的電壓。
第3腳:用來改變顯示屏上的對比度的端口。對比度最強的時候應(yīng)是接正電源的時候,最弱的時候端口接地。
第4腳:液晶屏的寄存器口,接高電平或低電平時分別作為為數(shù)據(jù)寄存器或指令寄存器。
第5腳:讀寫信號線口,接高電平或低電平時分別為讀操作或?qū)懖僮鳌?/div>
第6腳:E端口稱之為使能端,液晶模塊想要執(zhí)行命令的前提是要讓E端由高電平轉(zhuǎn)變到低電平。
第7腳到14腳:雙向數(shù)據(jù)線。
第15腳:背光源正極。
第16腳:背光源負(fù)極。
(2)LCD1602的RAM地址映射及標(biāo)準(zhǔn)字庫表
液晶模塊內(nèi)部的存儲器是已經(jīng)存儲有常用的符號、英文字母的大小寫、阿拉伯?dāng)?shù)字等60個不同點陣字符圖形。相對的代碼對應(yīng)著相對的字符。顯示屏內(nèi)部地址顯示如下圖3-11所示[6]:
圖3-11 1602內(nèi)部顯示地址
當(dāng)輸入顯示地址的時候需要最高的地址D7要保持在高電平1,因而正確的寫數(shù)據(jù)應(yīng)該是01000000 B(40H)+ 10000000 B(80H)= 11000000 B(C0H)。由于它在顯示的時候光標(biāo)會自動移到最右邊,不需要進(jìn)行其它的操作。
3.4.2 LCD1602液晶顯示模塊的電路原理圖液晶屏顯示的原理就是給予不同的地方不同的電壓值,來確定是否顯示,有電的地方就顯示,沒電的地方就不會顯示了。這是是否顯示的原理,而顯示屏也有薄厚之別,其中液晶的厚度薄,非常的輕便,向我們生活中用到的液晶電視,電腦顯示屏,數(shù)碼相機(jī)的屏幕等等都是運用液晶顯示屏實現(xiàn)的。所以它普遍的應(yīng)用在人們的生產(chǎn)生活中。
1602顯示模塊圖如下圖3-12所示[11]:
圖3-12 1602顯示模塊
3.5 報警模塊3.5.1 蜂鳴器介紹蜂鳴器的原理就是利用電來發(fā)聲,采用集成的電聲結(jié)構(gòu),通以穩(wěn)定的直流電源即可。它的使用之處更是普遍,像學(xué)校的上下課鈴聲,汽車的喇叭,電子手表的響聲等等。
3.5.2 蜂鳴器的工作原理[5]
圖3-13 蜂鳴器工作原理圖
第4章 系統(tǒng)軟件設(shè)計
想要構(gòu)成總的程序模塊,首先要設(shè)計出各個子模塊,建立相應(yīng)的流程圖。然后基于對課題的了解把各個子模塊連接起來。這樣便構(gòu)成了總的程序模塊。
系統(tǒng)總流程圖如下圖4-1所示:
圖 4-1 主程序流程圖
4.1 1602液晶顯示模塊設(shè)計LCD1602液晶顯示模塊流程圖如下4-2所示。首先單片機(jī)發(fā)送開始信號到顯示屏,顯示屏先初始化,然后調(diào)用顯示屏內(nèi)部的程序,延時后先設(shè)置第一行的顯示位置,然后顯示內(nèi)容。再然后設(shè)置第二行顯示位置,顯示第二行內(nèi)容。
圖4-2 1602液晶顯示模塊程序流程圖
4.2 傳感器模塊設(shè)計DHT11溫濕度傳感器模塊的軟件流程圖如下圖4-3所示。首先單片機(jī)發(fā)送起始信號后,然后傳感器接收起始信號后會從低功耗模式變成高效率模式,然后起始信號過后,傳感器就會響應(yīng),然后發(fā)送40位的數(shù)據(jù)且采集一次信號。反之如果并未接收到信號,則傳感器不會采集溫濕度。
圖 4-3 DHT11傳感器模塊程序流程圖
第5章 系統(tǒng)分析與調(diào)試
本設(shè)計的程序編寫編譯是在Keil軟件中完成的,Keil軟件編程這塊比較簡單易學(xué)。在對軟件簡單的學(xué)習(xí)之后,再結(jié)合C語言,就可以開始編程了。編程好了之后就需要對程序進(jìn)行燒錄,也就是把所編輯的程序下載保存到實物的單片機(jī)里面,這就要使用到STC_ISP_V480程序燒錄軟件。使用前要對軟件進(jìn)行一些設(shè)置。首先在頁面中的MCU Type選項中選擇STC89C52。然后打開一個文件名后綴為.hex的文件,這就是我們之前已經(jīng)編譯好的程序。最后核對COM選項,選擇正確的端口即可。最后點擊下載。它就自行燒錄了[11]。
Keil C程序運行如圖5-1所示
圖5-1 keil C運行圖
圖5-2 程序燒錄運行圖
通過以上步驟,便初步完成了系統(tǒng)程序的編寫、編譯與燒錄。下面要做的就是試用實物了,也就是演示系統(tǒng)是否可行。首先給系統(tǒng)供電,由于之前程序已經(jīng)燒錄進(jìn)了單片機(jī),單片機(jī)會自動保存程序,所以供電后就可以看見顯示屏上顯示出了當(dāng)前環(huán)境下的溫度和濕度。顯示屏沒有問題了就要測試傳感器模塊和報警模塊是否正常,可以用手輕捏傳感器,發(fā)現(xiàn)溫度逐漸上升,所以傳感器模塊沒有問題。再用按鈕把限值調(diào)到當(dāng)前溫度內(nèi),發(fā)現(xiàn)蜂鳴器報警,所以報警模塊也正常。通過以上的檢查測試,表明了此設(shè)計系統(tǒng)可行,實物運行正常。
系統(tǒng)實物如下圖5-3所示:
圖5-3 系統(tǒng)實物圖
如圖中所示,顯示屏第一行顯示的為溫度數(shù)值,15表示為當(dāng)前環(huán)境下所測量到的溫度值,H30-L10表示系統(tǒng)所設(shè)定的溫度上下限為10度到30度。顯示屏第二行顯示的為濕度數(shù)值,67%表示為當(dāng)前環(huán)境下所測量到的濕度值,H90-L10表示系統(tǒng)所設(shè)定的濕度上下限為10%到90%。DHT11傳感器為圖中藍(lán)色器件。圖左邊圓形黑色器件為蜂鳴報警器。圖中4個報警指示燈,分別代表溫度過高(左紅燈)、溫度過低(左黃燈)、濕度過高(右紅燈)、濕度過高(右黃燈)。圖中三個按鈕的功能,右按鈕為將顯示器光標(biāo)移動一個位并且閃爍顯示光標(biāo);左按鈕為當(dāng)前光標(biāo)所在位置的數(shù)值加一;中間按鈕為當(dāng)前光標(biāo)所在位置的數(shù)值減一[14]。
在家庭中應(yīng)用此系統(tǒng)實物,便能清晰明了的得到當(dāng)前家庭內(nèi)的溫濕度數(shù)值。且可以根據(jù)所在家庭要求的不同,用按鈕調(diào)整溫濕度的區(qū)間。當(dāng)系統(tǒng)報警時,也可以清楚的從報警指示燈中看出結(jié)果,是溫度過高過低,還是濕度過高過低。從而更準(zhǔn)確的進(jìn)行處理。
第6章 結(jié)論與展望
現(xiàn)如今的工業(yè)生產(chǎn)中,機(jī)械化生產(chǎn)與自動化生產(chǎn)越來越廣泛。工業(yè)機(jī)器人越來越多的應(yīng)用與生產(chǎn)生活中,機(jī)器人在生產(chǎn)方面有很多強于人類的地方,比如它可以長時間的,不停的重復(fù)一道工序而不感到枯燥;它也可以代替人類去完成一些高難度,高危險的工作。所以現(xiàn)代工業(yè)生產(chǎn)中機(jī)器人的使用越來越多。而機(jī)器人的系統(tǒng)中,最基本的一種硬件就是傳感器,各類的傳感器。它用來感應(yīng)與測量,再將所得的數(shù)據(jù)發(fā)給系統(tǒng)的主控模塊,一般為單片機(jī),來進(jìn)而控制機(jī)器人的運動,這種技術(shù)也就是測控技術(shù)。這樣的技術(shù)極大的改進(jìn)了傳統(tǒng)的生產(chǎn)生活方式,讓工藝生產(chǎn)更加的高效。
本畢業(yè)設(shè)計為基于單片機(jī)的家庭溫濕度監(jiān)測系統(tǒng)。設(shè)計中以單片機(jī)STC89C52為核心模塊,再結(jié)合傳感器與液晶顯示屏,便可以很好的實現(xiàn)對當(dāng)前環(huán)境溫濕度的采集與顯示,再配合報警器便可以過限報警。此系統(tǒng)不僅僅可以用在儲物家庭中,還可以用在房間,實驗室,蔬菜大棚等室內(nèi)系統(tǒng)中。不僅僅如此,本系統(tǒng)還可以擴(kuò)展延伸,比如加上升溫降溫系統(tǒng),加濕除濕系統(tǒng)等等。所以本設(shè)計還有良好的延伸擴(kuò)展能力
參考文獻(xiàn)
[1] 徐新艷.單片機(jī)原理、應(yīng)用與實踐[M]. 北京:高等教育出版社,2005.
[2] 陳明熒.8051單片機(jī)課程設(shè)計實訓(xùn)教材[M]. 北京:清華大學(xué)出版社,2003.
[3] 吳金戌,沈慶陽,郭庭吉.8051單片機(jī)實踐與應(yīng)用[M]. 北京:清華大學(xué)出版社,2002.
[4] 王千.實用電子電路大全[M]. 電子工業(yè)出版社,2001.
[5] 張毅剛.MCS-51單片機(jī)應(yīng)用設(shè)計[M]. 哈爾濱工業(yè)大學(xué)出版社,2004.
[6] 馮博琴.微型計算機(jī)原理與接口技術(shù)[M]. 北京:清華大學(xué)出版社,2004.
[7] 張淑清,姜萬錄等.單片微型計算機(jī)接口技術(shù)及應(yīng)用[M]. 國防工業(yè)出版社,2003.
[8] 吳金戌,沈慶陽,郭庭吉.8051單片機(jī)實踐與應(yīng)用[M]. 北京:清華大學(xué)出版社,2001.
[9] 張毅剛.MCS-51單片機(jī)應(yīng)用設(shè)計[M]. 哈爾濱工業(yè)大學(xué)出版社,2004.
[10] 馮博琴.微型計算機(jī)原理與接口技術(shù)[M]. 清華大學(xué)出版社,2004.
[11] 趙亮,侯國銳.單片機(jī)C語言編程與實例[M]. 北京:人民郵電出版社,2003.
[12] 王振紅,李洋,郝承祥.ISD4004語音芯片的工作原理及其在智能控制系統(tǒng)中的應(yīng)用[J]. 電子器件2002年3月第25卷第1期.
[13] ANALOG DEVICES.The technology of AT89C51[EB/OL].White Paper,Spe.28.2000.
[14] R.L.Geiger,P.E.Allen,N.R.Strader.VLSI.Design Techniques for Analog And Digitial Ciruits,McGraw-Hill Inc.1990.

附 錄
附錄A 外文原文
附錄A 外文翻譯基于 USB 接口的溫濕度測量系統(tǒng)設(shè)計
Yuchan Xie
摘要:為了擴(kuò)大使用范圍,本文介紹一種基于USB接口的溫濕度測量方法,將SHT10作為溫濕度數(shù)據(jù)采集傳感器,并且以溫度補償相對濕度,通過USB接口芯片CH340T把接收到的數(shù)據(jù)傳輸至PC進(jìn)行處理,本文從硬件和軟件兩個方面對系統(tǒng)進(jìn)行了詳細(xì)的介紹,實驗表明,這種方式具有良好的測量效果。
關(guān)鍵詞:溫度測量 濕度測量 USB 接口
第一章 介紹
隨著社會的發(fā)展,溫度和濕度的測量已經(jīng)在越來越多的工業(yè)和農(nóng)業(yè)現(xiàn)場應(yīng)用 [1, 2]。例如,在食品中,醫(yī)藥中煙草等家庭中,溫度和濕度需要實時監(jiān)測,特別在半導(dǎo)體生產(chǎn)環(huán)境中有嚴(yán)格的要求,太熱或太濕會導(dǎo)致其性能變差,因此,溫度和濕度需要嚴(yán)格檢查和控制。
傳統(tǒng)方法中測量溫度和濕度需要分開測量,而傳感器間的相容性較差,因此測量過程特別容易受到干擾,而且測量電路過于復(fù)雜,所以它已經(jīng)不能滿足現(xiàn)代科學(xué)技術(shù)發(fā)展的需要 [3]。
目前,溫濕度檢測系統(tǒng)與上位機(jī)的通信大多通過RS-232串口連接 [4]。
為了適應(yīng)接口開發(fā)的發(fā)展,系統(tǒng)采用USB接口,使它既可以作為讀寫磁盤,也可以作為外設(shè)系統(tǒng)與PC機(jī)進(jìn)行通信,從而達(dá)到理想的智能溫濕度測試要求,而且系統(tǒng)結(jié)構(gòu)簡單,智能度高,測量精度高。
第二章 設(shè)計方案
STC89C52芯片作為系統(tǒng)的核心來控制整個系統(tǒng),如圖1所示。
圖1 系統(tǒng)結(jié)構(gòu)
SHT10作為測量溫度和濕度傳感器,DS1320生成時間信息,液晶顯示屏 LCD1602顯示溫度和濕度值,而且每5s會有一組溫度和濕度數(shù)據(jù)存儲AT24C02,并通過USB 接口芯片CH340T傳輸?shù)絇C,PC可以通過串口協(xié)助接收數(shù)據(jù)。
第三章 硬件設(shè)計
STC89C52外圍電路如圖2所示。
圖2 STC89C52外圍電路
3.1 溫濕度傳感器
SHT10通過兩條線路與STC89C52 通信,STC89C52中的P1.3與SHT10依靠DATA連接傳輸數(shù)據(jù),而P1.4與SCK連接以生成時間信號,SHT10中的VDD與電源相接,GND接地,SH10和STC89C52之間的連接如圖3所示。
圖3 SHT10與STC89C52之間的連接
內(nèi)存芯片AT24C02與主控制芯片連接,如圖4所示;AT2402中的地址行是用來確定芯片硬件地址的,它們是接地在系統(tǒng)中的,主控芯片與P2.1通過數(shù)據(jù)線連接
圖4 AT24C02與控制針連接
模擬數(shù)據(jù)通過IIC總線傳輸,SCL與P2.0連接,時間信號由主控制芯片生成,WP是接地,允許正常讀寫操作。
Ch340T和STC89C52的串行通信由兩條數(shù)據(jù)線連接,其中P3.0與TXD連接,P3.1與RXD連接展示在圖5。
圖5 CH340T與主控制銷連接
第四章 軟件設(shè)計
4.1 溫濕度測量
與溫濕度傳感器SHT10相關(guān)的主要程序包括:書寫部分、讀寫節(jié)數(shù)、溫濕度測量、溫濕度值變換、溫度補償?shù)? 如圖6所示。
圖6 溫濕度測量流程圖
·信號取樣: 控制引腳開始傳輸時間如圖6所示。當(dāng)時間信號 SCK 從低電平變?yōu)楦唠娖綍r,數(shù)據(jù)線就會變低,在下一次SCK變高后,數(shù)據(jù)波形就會變成為高電平,已完成度量值初始化后,測量過程在測量指令下達(dá)后開始執(zhí)行,測量指令和測量精度根據(jù)測量時間不同而不同,當(dāng)數(shù)據(jù)再次變低低時,測量結(jié)束,當(dāng) "數(shù)據(jù)準(zhǔn)備" 完成,讀出信號,如圖7所示;
圖7開始發(fā)送溫度和濕度測量的設(shè)計
· SHT10 的溫度測量具有良好的線性度。
溫度t可以直接由方程得到:
T =d1 +d2⋅SOT
其中, SHT10是從SHT10的輸出溫度數(shù)據(jù),d1和d2是常數(shù),可以通過查找手冊獲得。
·相對濕度可由以下等式獲得:
RH =C1+C2⋅SORH + C3⋅SORH2
其中,SORH是從SHT10輸出濕度數(shù)據(jù),C1,C2,和C3是常數(shù),這可以通過查找手冊獲得
·相對濕度的補償如果測量溫度與25°C之間有很大的差異,則濕度值需要通過溫度來校正。補償公式如下所示:
HTRUE=( T°C -25) ⋅ (t1+t2⋅SORH)+RH
T °C 數(shù)據(jù)是來自SHT10的溫度,其單位是攝氏度,SORH是輸出濕度數(shù)據(jù),RH是相對濕度,t1和t2是常數(shù),同樣可以通過查找手冊獲得。
4.2 數(shù)據(jù)存儲和讀寫
· 儲存過程: 在AT24C02有7行地址代碼,4行高地址代碼是固定的,都是1010。另外3行低代碼,是A2,A1,A0根據(jù)他們的水平區(qū)分。當(dāng)主控芯片在書寫時,其 (R/W)引腳設(shè)置為0。7行地址碼是通過數(shù)據(jù)線SDA發(fā)送的。在儲存完成后,開始讀寫。
讀寫過程:讀寫時,pin (R/W) 和7地址代碼中的 "0" 在不確定的數(shù)據(jù)線SDA中發(fā)送。在確認(rèn)該線路中的代碼是其地址信息后,AT24C02 在網(wǎng)上發(fā)出響應(yīng)信號,然后,將第一個地址發(fā)送到AT24C02,接下來等待響應(yīng)信號,當(dāng)其引腳 (R/W)響應(yīng)信號為"1",控制芯片發(fā)送設(shè)備地址到AT24C02。接收到設(shè)備響應(yīng)后, 表示在線上的數(shù)據(jù)正在讀取。
數(shù)據(jù)傳輸:測量系統(tǒng)通過CH340T與PC機(jī)進(jìn)行通信傳輸,在 PC上安裝驅(qū)動器程序后,串行端口協(xié)助可以接收數(shù)據(jù),在測量系統(tǒng)和個人計算機(jī)之間采取異步通信,為了保證收發(fā)端的協(xié)調(diào)一致, 傳輸裝置和接收裝置具有相同的數(shù)據(jù)格式和傳輸速度。
它以字節(jié)作為異步通信單元.字符之間的時間間隔是任意的,但每個字符中的位都在固定的時間內(nèi)傳輸,即同一字符中的之間的距離是最小間隔的整數(shù)倍。
第五章 仿真實驗
在溫濕度測量系統(tǒng)中,數(shù)據(jù)采集使用傳感器SHT10,數(shù)據(jù)在單片機(jī)STC89C52中進(jìn)行處理。溫度、濕度和時間均顯示在LCD1602,數(shù)據(jù)存儲在AT24C02,并通過 CH340T傳輸?shù)絇C,模擬練習(xí)是基于EDA仿真軟件。其結(jié)果如圖8所示,在 LCD 中,時間信息顯示在上面的行中,度和濕度參數(shù)顯示在下面的行中,每5秒都會有一組溫度和濕度數(shù)據(jù)將存儲在 AT24C02,并由串口協(xié)助接收。實驗表明,各模塊在溫濕度測量儀中工作正常,實現(xiàn)了基本功能,實際測試結(jié)果如圖9所示;
圖8 仿真結(jié)果
圖9真實測試結(jié)果
第六章 結(jié)論
溫濕度檢測系統(tǒng)由新型的數(shù)字集成溫濕度傳感器SHT10、大容量存儲器芯片 AT24C02、方便可靠的 USB接口組成,通過傳輸?shù)絇C,根據(jù)這些,可以在任何時候無需人工干預(yù)即可獲取和保存溫度和濕度,能在許多場合工作,測試系統(tǒng)結(jié)構(gòu)簡單,數(shù)據(jù)可靠,使用方便。
©出版社柏林海德2016935
Q. Liang et al. (eds.), 2015國際通信、信號處理和系統(tǒng)會議論文集,電氣工程386,DOI10.1007/978-3-662-49831-6_97
附錄B 硬件原理圖
完整的Word格式文檔51黑下載地址(內(nèi)含源碼與清晰圖片):