![AM2301溫濕度傳感器模塊_第1頁(yè)](http://file1.renrendoc.com/fileroot_temp2/2020-10/8/9dd20bf6-1072-453a-bd11-c357ea442578/9dd20bf6-1072-453a-bd11-c357ea4425781.gif)
![AM2301溫濕度傳感器模塊_第2頁(yè)](http://file1.renrendoc.com/fileroot_temp2/2020-10/8/9dd20bf6-1072-453a-bd11-c357ea442578/9dd20bf6-1072-453a-bd11-c357ea4425782.gif)
![AM2301溫濕度傳感器模塊_第3頁(yè)](http://file1.renrendoc.com/fileroot_temp2/2020-10/8/9dd20bf6-1072-453a-bd11-c357ea442578/9dd20bf6-1072-453a-bd11-c357ea4425783.gif)
![AM2301溫濕度傳感器模塊_第4頁(yè)](http://file1.renrendoc.com/fileroot_temp2/2020-10/8/9dd20bf6-1072-453a-bd11-c357ea442578/9dd20bf6-1072-453a-bd11-c357ea4425784.gif)
![AM2301溫濕度傳感器模塊_第5頁(yè)](http://file1.renrendoc.com/fileroot_temp2/2020-10/8/9dd20bf6-1072-453a-bd11-c357ea442578/9dd20bf6-1072-453a-bd11-c357ea4425785.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、AM2301溫濕度傳感器模塊AM2301數(shù)字溫濕度傳感器是一各包括有數(shù)字校準(zhǔn)輸出的溫濕度傳感器。它采用獨(dú)特的數(shù)字采集模塊和高新溫濕度采集傳感技術(shù),可以確保產(chǎn)品可靠性高以及穩(wěn)定性好。該款傳感器具有響應(yīng)快、抗干擾力強(qiáng)、性價(jià)比高、品質(zhì)卓越等優(yōu)點(diǎn)。以及超小的體積、極低的功耗,信號(hào)傳輸距離可達(dá)20米以上,使其成為各類應(yīng)用的最佳選則。9AM2301 引腳圖圖3-10 AM2301引腳圖AM2301各引腳說明表3-7 AM2301引腳引腳顏色名稱注釋1紅色VDD供電 3.3-5.5VDC2黃色SDA串行數(shù)據(jù),單總線3黑色GND接地,電源負(fù)極4NC空腳,請(qǐng)懸空(不要接Vcc或Gnd)AM2301 技術(shù)參數(shù)表3
2、-8 AM2301技術(shù)參數(shù)參數(shù)條件MinTypMax單位濕度分辨率0.1%RH16Bit重復(fù)性1%RH精度253%RH0505%RH互換性可完全互換采樣周期12S響應(yīng)時(shí)間1/e(63%)25,1m/s 空氣2S遲滯0.3%RH長(zhǎng)期穩(wěn)定性典型值1%RH/yr溫度分辨率0.116Bit重復(fù)性0.5精度1量程范圍-4080響應(yīng)時(shí)間1/e(63%)620SAM2301 驅(qū)動(dòng)電路圖3-11 AM2301驅(qū)動(dòng)電路圖溫濕度傳感器模塊流程設(shè)計(jì)用戶主機(jī)(MCU)發(fā)送一次開始信號(hào)后,AM2301自動(dòng)從休眠模式轉(zhuǎn)換到高速模式。等待主機(jī)開始,信號(hào)發(fā)送后,AM2301發(fā)送響應(yīng)信號(hào),送出40比特的數(shù)據(jù),發(fā)送數(shù)據(jù)結(jié)束之后觸
3、發(fā)一次信號(hào)采集,對(duì)外部環(huán)境進(jìn)行數(shù)據(jù)采集,采集結(jié)束傳感器自動(dòng)轉(zhuǎn)入休眠模式,直到下一次通信信號(hào)的來臨。此時(shí)AM2301的SDA數(shù)據(jù)線由上拉電阻拉高,一直保持高電平,且AM2301的SDA引腳處于輸入狀態(tài),時(shí)刻檢測(cè)外部信號(hào)。一旦接收到主機(jī)發(fā)送的信號(hào),再次進(jìn)入采集狀態(tài),對(duì)外部數(shù)據(jù)進(jìn)行一次采集。整個(gè)過程流程圖如下:圖4-10溫濕度傳感器流程圖1602 LCD顯示屏測(cè)試根據(jù)第三章說明的LCD硬件連線要求,將屏幕的14個(gè)接口按要求分別連接至單片機(jī)的各端口,確認(rèn)無誤后,個(gè)單片機(jī)上電,并將編完的程序通過STC-ISP軟件燒入到單片機(jī)中,連線圖如下:圖5-3 LCD1602連線圖 給單片機(jī)上電之后,屏幕顯示如下:
4、圖5-4 LCD1602顯示效果 該LCD顯示屏能正常顯示預(yù)期設(shè)置字幕。AM2301溫濕度傳感器測(cè)試根據(jù)溫濕度傳感器驅(qū)動(dòng)電路,實(shí)物連接圖如下:圖5-7 AM2301連線圖給單片機(jī)上電,則可在LCD屏幕上得到如下數(shù)據(jù):圖5-8 AM2301采集數(shù)據(jù)LCD屏幕第一行顯示當(dāng)前室內(nèi)濕度情況,第二行顯示當(dāng)前室內(nèi)溫度情況,若用吹風(fēng)機(jī)對(duì)其吹風(fēng),則溫濕度會(huì)相應(yīng)變化。附錄主要程序源代碼:1. REG52.H/*-REG52.HHeader file for generic 80C52 and 80C32 microcontroller.Copyright (c) 1988-2002 Keil Elektroni
5、k GmbH and Keil Software, Inc.All rights reserved.-*/#ifndef _REG52_H_#define _REG52_H_/* BYTE Registers */sfr P0 = 0x80;sfr P1 = 0x90;sfr P2 = 0xA0;sfr P3 = 0xB0;sfr PSW = 0xD0;sfr ACC = 0xE0;sfr B = 0xF0;sfr SP = 0x81;sfr DPL = 0x82;sfr DPH = 0x83;sfr PCON = 0x87;sfr TCON = 0x88;sfr TMOD = 0x89;sf
6、r TL0 = 0x8A;sfr TL1 = 0x8B;sfr TH0 = 0x8C;sfr TH1 = 0x8D;sfr IE = 0xA8;sfr IP = 0xB8;sfr SCON = 0x98;sfr SBUF = 0x99;/* 8052 Extensions */sfr T2CON = 0xC8;sfr RCAP2L = 0xCA;sfr RCAP2H = 0xCB;sfr TL2 = 0xCC;sfr TH2 = 0xCD;/* BIT Registers */* PSW */sbit CY = PSW7;sbit AC = PSW6;sbit F0 = PSW5;sbit R
7、S1 = PSW4;sbit RS0 = PSW3;sbit OV = PSW2;sbit P = PSW0; /8052 only/* TCON */sbit TF1 = TCON7;sbit TR1 = TCON6;sbit TF0 = TCON5;sbit TR0 = TCON4;sbit IE1 = TCON3;sbit IT1 = TCON2;sbit IE0 = TCON1;sbit IT0 = TCON0;/* IE */sbit EA = IE7;sbit ET2 = IE5; /8052 onlysbit ES = IE4;sbit ET1 = IE3;sbit EX1 =
8、IE2;sbit ET0 = IE1;sbit EX0 = IE0;/* IP */sbit PT2 = IP5;sbit PS = IP4;sbit PT1 = IP3;sbit PX1 = IP2;sbit PT0 = IP1;sbit PX0 = IP0;/* P3 */sbit RD = P37;sbit WR = P36;sbit T1 = P35;sbit T0 = P34;sbit INT1 = P33;sbit INT0 = P32;sbit TXD = P31;sbit RXD = P30;/* SCON */sbit SM0 = SCON7;sbit SM1 = SCON6
9、;sbit SM2 = SCON5;sbit REN = SCON4;sbit TB8 = SCON3;sbit RB8 = SCON2;sbit TI = SCON1;sbit RI = SCON0;/* P1 */sbit T2EX = P11; / 8052 onlysbit T2 = P10; / 8052 only /* T2CON */sbit TF2 = T2CON7;sbit EXF2 = T2CON6;sbit RCLK = T2CON5;sbit TCLK = T2CON4;sbit EXEN2 = T2CON3;sbit TR2 = T2CON2;sbit C_T2 =
10、T2CON1;sbit CP_RL2 = T2CON0;#endif2. INTRINS.H/*-INTRINS.HIntrinsic functions for C51.Copyright (c) 1988-2004 Keil Elektronik GmbH and Keil Software, Inc.All rights reserved.-*/#ifndef _INTRINS_H_#define _INTRINS_H_extern void _nop_ (void);extern bit _testbit_ (bit);extern unsigned char _cror_ (unsi
11、gned char, unsigned char);extern unsigned int _iror_ (unsigned int, unsigned char);extern unsigned long _lror_ (unsigned long, unsigned char);extern unsigned char _crol_ (unsigned char, unsigned char);extern unsigned int _irol_ (unsigned int, unsigned char);extern unsigned long _lrol_ (unsigned long
12、, unsigned char);extern unsigned char _chkfloat_(float);extern void _push_ (unsigned char _sfr);extern void _pop_ (unsigned char _sfr);#endif3. STDIO.H/*-STDIO.HPrototypes for standard I/O functions.Copyright (c) 1988-2002 Keil Elektronik GmbH and Keil Software, Inc.All rights reserved.-*/#ifndef _S
13、TDIO_H_#define _STDIO_H_#ifndef EOF #define EOF -1#endif#ifndef NULL #define NULL (void *) 0)#endif#ifndef _SIZE_T #define _SIZE_T typedef unsigned int size_t;#endif#pragma SAVE#pragma REGPARMSextern char _getkey (void);extern char getchar (void);extern char ungetchar (char);extern char putchar (cha
14、r);extern int printf (const char *, .);extern int sprintf (char *, const char *, .);extern int vprintf (const char *, char *);extern int vsprintf (char *, const char *, char *);extern char *gets (char *, int n);extern int scanf (const char *, .);extern int sscanf (char *, const char *, .);extern int
15、 puts (const char *);#pragma RESTORE#endif4. LCD1602.H#include #ifndef _LCD1602_H_H#define _LCD1602_H_H#define uchar unsigned char#define uint unsigned int/-函數(shù)聲明-void delayms(uchar z);void writecmd(uchar com);void writedata(uchar dat);void init_LCD();/-函數(shù)聲明結(jié)束-/1602端口定義sbit RS = P24 ; /數(shù)據(jù)命令選擇端(H/L)sb
16、it RW = P25 ;/讀寫選擇端(H/L)sbit E=P26;/* /自定義的字符(5X8)uchar code tab1=0x03,0x05,0x19,0x19,0x19,0x05,0x03,0x00;/小喇叭uchar code tab2=0x08,0x0f,0x12,0x0f,0x0a,0x1F,0x02,0x02,;/年uchar code tab3=0x0f,0x09,0x0f,0x09,0x0f,0x09,0x11,0x00;/月uchar code tab4=0x00,0x1F,0x11,0x1F,0x11,0x11,0x1F,0x00;/日uchar code tab5
17、=0x18,0x18,0x07,0x08,0x08,0x08,0x07,0x00;/C(溫度符號(hào))*/*void lcd_pos(uchar pos)/設(shè)定顯示位置 lcd_wcmd(pos | 0x80) ;*/void delayms(uchar z)/延時(shí)函數(shù)uint i,j;for(i=z;i0;i-) for(j=100;j0;j-); void writecmd(uchar com) /寫指令 RS=0; RW=0;E=0;delayms(1); P0=com;delayms(1);E=1; delayms(1);E=0;void writedata(uchar dat) /寫數(shù)據(jù)
18、RS=1;RW=0;E=0;delayms(1);P0=dat;delayms(1);E=1;delayms(1);E=0; /* 寫漢字編碼到CGRAM函數(shù) *void writetab() unsigned char i ; lcd_wcmd(0x40) ; /寫CGRAM for (i = 0 ; i 8 ; i+) lcd_wdat(mytab1 i ) ; */void init_LCD() /初始化1602delayms(15); writecmd(0x38); /不檢測(cè)忙信號(hào)delayms(5);writecmd(0x38); /不檢測(cè)忙信號(hào)delayms(5);writecmd
19、(0x38); /不檢測(cè)忙信號(hào)delayms(5);writecmd(0x38); /顯示模式設(shè)置delayms(5);writecmd(0x01);/顯示清屏delayms(5);writecmd(0x06);/顯示光標(biāo)移動(dòng)設(shè)置delayms(5);writecmd(0x0c);/顯示開及光標(biāo)設(shè)置delayms(5);/*writetab() ; /自定義字符寫入CGRAM delay(5) ; lcd_pos(0x4d) ; lcd_wdat(0x00) ; /顯示自定義字符*/#endif5. 主程序#include #include #include #include lcd1602.
20、htypedef unsigned char U8; /* 無符號(hào)8位整型變量 */typedef signed char S8; /* 有符號(hào)8位整型變量 */typedef unsigned int U16; /* 無符號(hào)16位整型變量 */typedef signed int S16; /* 有符號(hào)16位整型變量 */typedef unsigned long U32; /* 無符號(hào)32位整型變量 */typedef signed long S32; /* 有符號(hào)32位整型變量 */typedef float F32; /* 單精度浮點(diǎn)數(shù)(32位長(zhǎng)度) */typedef double
21、F64; /* 雙精度浮點(diǎn)數(shù)(64位長(zhǎng)度) */#define uchar unsigned char#define uint unsigned int/-IO口定義-/sbit DHT = P20 ; /AM2301端口定義/-全局變量-/bit flagtemp;/溫度正負(fù)標(biāo)志位,k U8count, bit flagsendtemp;/發(fā)送溫度的標(biāo)志位U8 U8FLAG;U8 U8temp;U8 U8T_data_H,U8T_data_L,U8RH_data_H,U8RH_data_L,U8checkdata;U8 U8T_data_H_temp,U8T_data_L_temp,U8RH
22、_data_H_temp,U8RH_data_L_temp,U8checkdata_temp;U8 U8comdata;U16 DHTData1,DHTData2;U8 outdata5; /定義發(fā)送的字節(jié)數(shù) U8 indata5;U8 count, count_r=0;U8 str5;U8 data tab6=0x00,0x00,0x00,0x00,0x00,0x00;/存儲(chǔ)溫濕度數(shù)據(jù)U8 code dis1=Humdity: % ;U8 code dis2=Temper: c ;/*函數(shù)名稱 : 延時(shí)子程序*/void Delay(U16 j) U8 i; for(;j0;j-) for(
23、i=0;i27;i+); void Delay_10us(void)/延時(shí)10uS U8 i; i-; i-; i-; i-; i-; i-; /*函數(shù)名稱 : 讀溫濕度字節(jié)函數(shù) 功 能 : 讀取溫濕度每個(gè)字節(jié)說 明 : 無*/ void COM(void)/讀字節(jié) U8 i; for(i=0;i8;i+) U8FLAG=2; while(!DHT)&U8FLAG+);Delay_10us();Delay_10us();Delay_10us(); U8temp=0; if(DHT)U8temp=1; U8FLAG=2; while(DHT)&U8FLAG+); /超時(shí)則跳出for循環(huán) if(U
24、8FLAG=1)break; /判斷數(shù)據(jù)位是0還是1 / 如果高電平高過預(yù)定0高電平值則數(shù)據(jù)位為 1 U8comdata=1; U8comdata|=U8temp; /0 /end i /-/-/-濕度讀取子程序 -/-/-以下變量均為全局變量-/-溫度高8位= U8T_data_H-/-溫度低8位= U8T_data_L-/-濕度高8位= U8RH_data_H-/-濕度低8位= U8RH_data_L-/-校驗(yàn) 8位 = U8checkdata-/-調(diào)用相關(guān)子程序如下-/- Delay();, Delay_10us();,COM(); /-/*函數(shù)名稱 : 溫濕度讀取函數(shù)功 能 : 讀取溫
25、濕度數(shù)據(jù)說 明 : 無*/ void RH(void)/讀取溫濕度 /主機(jī)拉低 1-5ms DHT=0; Delay(5); DHT=1; /總線由上拉電阻拉高 主機(jī)延時(shí)40us Delay_10us(); Delay_10us(); Delay_10us(); Delay_10us(); /主機(jī)設(shè)為輸入 判斷從機(jī)響應(yīng)信號(hào) DHT=1; /判斷從機(jī)是否有低電平響應(yīng)信號(hào) 如不響應(yīng)則跳出,響應(yīng)則向下運(yùn)行 if(!DHT) /T ! U8FLAG=2; /判斷從機(jī)是否發(fā)出 80us 的低電平響應(yīng)信號(hào)是否結(jié)束 while(!DHT)&U8FLAG+); U8FLAG=2; /判斷從機(jī)是否發(fā)出 80us
26、 的高電平,如發(fā)出則進(jìn)入數(shù)據(jù)接收狀態(tài) while(DHT)&U8FLAG+); /數(shù)據(jù)接收狀態(tài) COM(); U8RH_data_H_temp=U8comdata; COM(); U8RH_data_L_temp=U8comdata; COM(); U8T_data_H_temp=U8comdata; COM(); U8T_data_L_temp=U8comdata; COM(); U8checkdata_temp=U8comdata; DHT=1; /數(shù)據(jù)校驗(yàn) U8temp=(U8T_data_H_temp+U8T_data_L_temp+U8RH_data_H_temp+U8RH_data_L_temp); if(U8temp=U8checkdata_temp) if(1) U8RH_data_H = U8RH_data_H_temp;/濕度 U8RH_data_L = U8RH_data_L_temp; DHTData1 = U8RH_data_H; DHTData1 = 8; DHTData1 |= U8RH_data_L;/獲得完整的濕度 tab0=DHTData1/100+0x30; /濕度百位 tab1=DHTData1%100
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司在職員工培訓(xùn)服務(wù)合同書
- 礦山企業(yè)安全生產(chǎn)許可證頒發(fā)與管理作業(yè)指導(dǎo)書
- 反擔(dān)保合同協(xié)議1
- 游戲美術(shù)設(shè)計(jì)制作實(shí)戰(zhàn)手冊(cè)作業(yè)指導(dǎo)書
- 針紡織品銷售購(gòu)銷合同
- 小學(xué)二年級(jí)數(shù)學(xué)上冊(cè)口算
- 2025年紹興a2貨運(yùn)從業(yè)資格證模擬考試題
- 2024-2025學(xué)年高中語(yǔ)文專題一小說家想說些什么第1課在酒樓上學(xué)案蘇教版選修短篇小說蚜
- 七年級(jí)班級(jí)工作總結(jié)
- 四年級(jí)第一學(xué)期德育工作計(jì)劃
- 漢密爾頓抑郁和焦慮量表
- 風(fēng)電場(chǎng)事故案例分析
- 前列腺癌的診斷與治療
- 人教版八年級(jí)數(shù)學(xué)初中數(shù)學(xué)《平行四邊形》單元教材教學(xué)分析
- EPC項(xiàng)目設(shè)計(jì)及施工的配合
- 年產(chǎn)5萬(wàn)噸1,4-丁二醇的工藝流程設(shè)計(jì)
- 八年級(jí)上冊(cè)-2024年中考?xì)v史總復(fù)習(xí)核心考點(diǎn)與重難點(diǎn)(部編版)
- 醫(yī)院科室人才建設(shè)規(guī)劃方案
- 儲(chǔ)油罐安全操作規(guī)程培訓(xùn)
- 護(hù)理飲食指導(dǎo)整改措施及方案
- 全國(guó)大學(xué)生英語(yǔ)競(jìng)賽詞匯大綱
評(píng)論
0/150
提交評(píng)論