• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      簡(jiǎn)易環(huán)境溫濕度測(cè)量?jī)x設(shè)計(jì)

      2017-08-03 21:16:21蔡明鄧萍唐軍
      速讀·下旬 2017年7期
      關(guān)鍵詞:溫濕度串口端口

      蔡明 鄧萍 唐軍

      本文利用溫濕度傳感器DHT11和STM32單片機(jī)設(shè)計(jì)了一個(gè)簡(jiǎn)易簡(jiǎn)易環(huán)境溫濕度測(cè)量系統(tǒng),并利用PC機(jī)上的串口調(diào)試助手軟件對(duì)采集到的數(shù)據(jù)進(jìn)行了顯示。

      1引言

      在日常辦公教學(xué)中,大部分的活動(dòng)都在室內(nèi)完成,在夏天溫度較高的時(shí)候,需要對(duì)室內(nèi)開(kāi)空調(diào)進(jìn)行降溫處理,以保證教學(xué)活動(dòng)的順利進(jìn)行,故室內(nèi)環(huán)境溫度、濕度是一個(gè)重要的參數(shù),對(duì)于我校教室空調(diào)的使用,起到了決策依據(jù)的作用。因此,快速、準(zhǔn)確地測(cè)量出環(huán)境溫濕度,具有重要意義。

      本文利用溫濕度傳感器DHT11和STM32單片機(jī)進(jìn)行溫濕度數(shù)據(jù)采集設(shè)計(jì),并從節(jié)約成本的角度出發(fā),考慮實(shí)際使用的便利,利用PC機(jī)上的串口調(diào)試助手完成數(shù)據(jù)顯示。

      2硬件設(shè)計(jì)

      系統(tǒng)利用DHT11完成溫濕度基礎(chǔ)數(shù)據(jù)采集,采集到的數(shù)據(jù)通過(guò)單總線傳送到STM32單片機(jī)上,再利用STM32的USART0與PC進(jìn)行通信,將數(shù)據(jù)通過(guò)PC上的串口調(diào)試助手顯示出來(lái)。

      DHT11是一款有已校準(zhǔn)數(shù)字信號(hào)輸出的溫濕度傳感器。精度濕度+-5%RH,溫度+-2℃,量程濕度20~90%RH,溫度0~50℃,其接口為4引腳封裝,1腳VDD供電,2腳為單總線的DATA串行數(shù)據(jù)引腳,在本設(shè)計(jì)中,DATA引腳接STM32的PE0進(jìn)行數(shù)據(jù)通信,3腳為NC空腳,4腳為電源地。

      STM32單片機(jī)是ST公司生產(chǎn)的Cortex-M3內(nèi)核ARM單片機(jī),多應(yīng)用在高性能、低成本、低功耗的嵌入式設(shè)計(jì)中,本設(shè)計(jì)采用的型號(hào)為STM32F103VET6,經(jīng)過(guò)PLL的9倍頻,可以運(yùn)行在72MHz的時(shí)鐘頻率上。

      由于STM32的USART0通信引腳(PA9和PA10)無(wú)法直接和PC進(jìn)行通信,因此在STM32和PC之間還需要一個(gè)串口轉(zhuǎn)換芯片進(jìn)行數(shù)據(jù)轉(zhuǎn)換。

      3軟件設(shè)計(jì)

      在軟件設(shè)計(jì)中,重點(diǎn)是設(shè)計(jì)DHT11的驅(qū)動(dòng),如前所述,DHT11是單總線器件,通過(guò)DATA與STM32進(jìn)行通信,每次只能傳送1bit數(shù)據(jù),而依據(jù)DHT11數(shù)據(jù)手冊(cè),一次完整的通信包括40bit,即5byte數(shù)據(jù)。40bit數(shù)據(jù)在傳輸時(shí),先傳輸高位信號(hào),再傳低位信號(hào),當(dāng)40bit傳送完成,在STM32內(nèi)存變量中,將用5個(gè)byte變量存放其數(shù)據(jù),我們?cè)O(shè)計(jì)了一個(gè)數(shù)組bufer[5]來(lái)存儲(chǔ)。當(dāng)一次正確的數(shù)據(jù)傳輸完成后,bufer[0]存儲(chǔ)的數(shù)據(jù)為濕度的整數(shù)部分,bufer[1]存儲(chǔ)的數(shù)據(jù)為濕度的小數(shù)部分;bufer[2]存儲(chǔ)的數(shù)據(jù)為溫度的整數(shù)部分,bufer[3]存儲(chǔ)的數(shù)據(jù)為溫度的整數(shù)部分。定義的5個(gè)字節(jié)數(shù)組還剩下了一個(gè)bufer[4],為校驗(yàn)字節(jié),用于指示傳送數(shù)據(jù)是否正確,其判定根據(jù)為:如果bufer[4]=buf[0]+buf[1]+buf[2]+buf[3],那么整個(gè)流程傳送過(guò)程正確,否則錯(cuò)誤。

      由于DHT11單總線傳輸數(shù)據(jù),因此,除了設(shè)計(jì)接收好字節(jié)數(shù)據(jù)的處理之外,更重要的是依據(jù)其時(shí)序圖,設(shè)計(jì)基本的字節(jié)傳送驅(qū)動(dòng)函數(shù)。

      在傳輸過(guò)程中,首先由STM32發(fā)起開(kāi)始信號(hào),開(kāi)始信號(hào)發(fā)送完成后,STM32延時(shí)等待20us~40us,再讀取DH11T的DATA單總線的回應(yīng)信號(hào),如果讀取的值為0,即說(shuō)明DHT11發(fā)送了回應(yīng)信號(hào),否則就判定沒(méi)有接收到DHT11的響應(yīng)信號(hào),需重由STM32重新對(duì)DHT11發(fā)送開(kāi)始信號(hào)。下面就傳送過(guò)程中的起始信號(hào)、響應(yīng)信號(hào)、位“0”,位“1”進(jìn)行闡述。

      3.1起始信號(hào)、響應(yīng)信號(hào)

      結(jié)合STM32程序設(shè)計(jì)來(lái)講起始信號(hào)的過(guò)程,首先將STM32對(duì)應(yīng)的端口配置為推挽輸出模式,然后將DATA端口置0,即PE0輸出0,輸出0的時(shí)間至少要為18ms以上,程序中設(shè)計(jì)選擇為20ms;延時(shí)20ms時(shí)間到了之后,將數(shù)據(jù)端口DATA置1,再延時(shí)30us,至此由STM32發(fā)出的起始信號(hào)完成,系統(tǒng)進(jìn)去等待DHT11響應(yīng)階段。

      在響應(yīng)過(guò)程階段,STM32首先應(yīng)該將DATA端口PE0的端口方向改為浮空輸入,然后再去讀取端口PE0的值。DHT11正常響應(yīng)會(huì)將DATA端口數(shù)據(jù)先拉低40~80us,然后再拉高40~80us,設(shè)計(jì)STM32程序,如果檢測(cè)上上述過(guò)程,則認(rèn)為響應(yīng)信號(hào)正常,進(jìn)入信號(hào)傳輸階段,否則就認(rèn)為無(wú)響應(yīng),返回響應(yīng)失敗標(biāo)志。

      當(dāng)由STM32發(fā)出的起始信號(hào)得到DHT11正確的響應(yīng)信號(hào)后,系統(tǒng)即進(jìn)入讀取數(shù)據(jù)階段。在此階段主要是由DHT11發(fā)出的高電平脈沖時(shí)間來(lái)判定就是總線傳輸數(shù)據(jù)是0還是1,如圖5所示,如果傳送的是0,那么其高電平時(shí)間將在其高電平時(shí)間將在28us以下,如果傳送的是1,那么其高電平時(shí)間在70us左右。因此,在程序設(shè)計(jì)中,當(dāng)檢測(cè)到DATA信號(hào)為1開(kāi)始計(jì)時(shí),40us延時(shí)以后,再去讀取DATA的值,如果此時(shí)讀取的值為0,那么說(shuō)明傳送的值為0,否則為1。

      這樣的操作將會(huì)連續(xù)進(jìn)行40次,將其存儲(chǔ)到bufer寄存器里邊,當(dāng)40次完成后,即可利用前述字節(jié)出來(lái)方法進(jìn)行數(shù)據(jù)處理,得到溫度與濕度。

      由于系統(tǒng)的設(shè)計(jì)目的是采集溫濕度信息,為空調(diào)開(kāi)啟提供依據(jù),因此,并不需要很高的精度,從化簡(jiǎn)程序出發(fā),我們只保留了溫濕度的整數(shù)信息,即buffer[0]表示濕度,buffer[1]表示溫度。

      采集到的信號(hào)通過(guò)STM32的USART1發(fā)送給PC機(jī),USART1配置成波特率為9600,數(shù)據(jù)長(zhǎng)8bit,停止位為1bit,無(wú)校驗(yàn)位的格式。

      4系統(tǒng)調(diào)試

      系統(tǒng)設(shè)計(jì)完成后,我們利用單片機(jī)小系統(tǒng)板、DHT11傳感器模塊和PC進(jìn)行了調(diào)試,實(shí)驗(yàn)證明,可以在PC機(jī)上正確顯示出數(shù)據(jù)。

      5結(jié)語(yǔ)

      本文利用溫濕度傳感器DHT11,STM32小系統(tǒng)板實(shí)現(xiàn)了溫濕度數(shù)據(jù)的測(cè)量,并利用PC串口助手進(jìn)行的溫濕度信息顯示,經(jīng)過(guò)測(cè)試,達(dá)到了設(shè)計(jì)要求。

      參考文獻(xiàn):

      [1]王志宏,白翠珍.基于DHT11的實(shí)驗(yàn)室多點(diǎn)溫濕度報(bào)警系統(tǒng)設(shè)計(jì)[J].山西電子技術(shù),2011(04).

      [2]張衛(wèi)星,張桂香,譚成午.基于STM32的環(huán)境多點(diǎn)監(jiān)測(cè)系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2014(10).

      作者簡(jiǎn)介:

      蔡明(1977—),男,漢族,宜賓,宜賓市骨干教師,中教一級(jí),長(zhǎng)期從事中學(xué)教學(xué)與管理工作,參與多項(xiàng)教學(xué)改革課題。

      猜你喜歡
      溫濕度串口端口
      溫濕度控制器在回收砂冷卻系統(tǒng)中的應(yīng)用
      一種端口故障的解決方案
      淺談AB PLC串口跟RFID傳感器的通訊應(yīng)用
      基于DSP的多路溫濕度監(jiān)測(cè)系統(tǒng)
      基于溫濕度控制的天氣預(yù)測(cè)裝置
      電子制作(2018年11期)2018-08-04 03:26:02
      端口阻塞與優(yōu)先級(jí)
      蒸發(fā)冷卻溫濕度獨(dú)立控制空調(diào)系統(tǒng)的應(yīng)用
      USB接口的多串口數(shù)據(jù)并行接收方法探索
      基于藍(lán)牙串口適配器的GPS接收機(jī)與AutoCAD的實(shí)時(shí)無(wú)線通信
      初識(shí)電腦端口
      電腦迷(2015年6期)2015-05-30 08:52:42
      衡东县| 绥中县| 平原县| 永吉县| 哈密市| 海门市| 长寿区| 延长县| 乐平市| 丹巴县| 长岭县| 湘潭市| 桑日县| 定襄县| 卢氏县| 会东县| 疏附县| 长岛县| 老河口市| 康定县| 龙井市| 泉州市| 衢州市| 临安市| 顺昌县| 武陟县| 新郑市| 进贤县| 朔州市| 沙河市| 思茅市| 峨眉山市| 徐州市| 彭山县| 宁化县| 花莲市| 和硕县| 同心县| 正安县| 河津市| 崇左市|