完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
先写C语言的部分
/******************************************************************************* 版 本: 生成日期:2016-8-23 17:15:18 作 者:WHG 模块目的: 功 能: 主要函数:毫秒级延时 微秒级延时 读取一字节函数 读取温湿度值 功 能:读取温湿度值 修改记录: *******************************************************************************/ #include /* 温度 湿度 */ unsigned char temp=0,humi=0; /* 毫秒级延时函数 */ void Delay_1ms(unsigned int ms) { unsigned int x,y; for(x=ms;x>0;x--) { for(y=9215;y>0;y--); } } /* 微秒级延时函数 */ void DHT11_Delay_us(unsigned char i) { for(i;i>0;i--); } /* 获得一字节的数据 */ unsigned char GetDate(void) { unsigned char i,value=0; unsigned char flag,count; for(i=0;i<8;i++) { count=2; while(dht11==0&&count++); //dht数据低电平结束 DHT11_Delay_us(26);//延时 后检测高电平 flag=0; if(dht11==1) flag=1; count=2; while(dht11==1&&count++); //dht数据高电平结束 value=(value<<1)+flag; } return value; } /* DHT11读取温湿度函数 */ unsigned char DHT11_Init(void) { unsigned char count,i; unsigned char dht11_value[5]={0}; dht11=0; /* 拉低数据线大于18ms发送开始信号 */ Delay_1ms(8); /* 需大于18毫秒 */ dht11=1; /* 释放数据线,用于检测低电平的应答信号 */ DHT11_Delay_us(12); //检测DHT响应信号 if(dht11==0); { //dht信号低电平结束 count=2; while(dht11==0&&count++); //dht信号高电平结束 count=2; while(dht11==1&&count++); for(i=0;i<5;i++) { dht11_value[i]=GetDate(); } } //数据检验 if(dht11_value[0]+dht11_value[1]+dht11_value[2]+dht11_value[3]==dht11_value[4]) { temp=dht11_value[2]; humi=dht11_value[0]; return 0; } else { temp=0; humi=0; return 1; } } |
|
相关推荐
|
|
再写头文件的部分
/******************************************************************************* 版 本: 生成时间:2016-8-23 17:14:54 文 件 名:dht11.h 功 能:读取温湿度值 模 块:DHT11 作 者:WHG IO 口:P2.0 芯片版本:STC12C5A60S2 与其他文件的关系: 函 数 功 能 说明: 修改记录: *******************************************************************************/ #ifndef __DHT11_H__ #define __DHT11_H__ /* 引用头文件 */ #include /* DHT11数据引脚 */ ***it dht11 = P2^0; /* DHT11读出来的值 温度 湿度*/ extern unsigned char temp,humi; /* DHT11读取温湿度函数 */ unsigned char DHT11_Init(void); #endif |
|
|
|
|
|
嗯,之前我用是SHT的
|
|
|
|
|
|
199 浏览 0 评论
使用Keil建立完整的工程,并使用外部中断0触发数码管显示903
748 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-使用AHT20进行环境监测之AHT20传感器介绍
1122 浏览 0 评论
874 浏览 0 评论
910 浏览 1 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11836 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-1 15:10 , Processed in 0.786776 second(s), Total 71, Slave 54 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号