C51温湿度传感器DHT11驱动LCD1602显示程序硬件通过含电路图和实际测试效果图.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《C51温湿度传感器DHT11驱动LCD1602显示程序硬件通过含电路图和实际测试效果图.doc》由会员分享,可在线阅读,更多相关《C51温湿度传感器DHT11驱动LCD1602显示程序硬件通过含电路图和实际测试效果图.doc(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流C51温湿度传感器DHT11驱动LCD1602显示程序硬件通过含电路图和实际测试效果图.精品文档.DHT11.c文件#include #include /the main only needs to call getDHT11(),then the temperature and huminity was geted in F16T,F16RH as floatsbit bit11=P20;unsigned char U8T_data_H,U8T_data_L,U8RH_data_H,U8RH_data_L,U8checkdata;float
2、 F16T,F16RH; /用于最终读取的温湿度数据/ read 8 bits onice char COM(void) char i,U8temp,U8comdata; for(i=0;i8;i+) while(!bit11);/表示 读取的高电位延时大于20多us 则读取的是1 否则读取的是0Delay_us(35);/通过U8FLAG 可判断bit11 显示数据的脉长U8temp=0; if(bit11)U8temp=1; while(bit11); U8comdata=1; U8comdata|=U8temp; /0 /rof return U8comdata;/-温湿度读取子程序 -
3、/-以下变量均为全局变量-/-温度高8位= U8T_data_H-/-温度低8位= U8T_data_L-/-湿度高8位= U8RH_data_H-/-湿度低8位= U8RH_data_L-/-校验 8位 = U8checkdata-/-调用相关子程序如下-/- Delay();, Delay_10us();,COM(); void getDHT11(void) /主机拉低18ms GO1: bit11=0; Delay_ms(20); bit11=1; /总线由上拉电阻拉高 主机延时20us Delay_us(60); /主机设为输入 判断从机响应信号 / bit11=1; /判断从机是否有
4、低电平响应信号 如不响应则跳出,响应则向下运行 if(!bit11) /T ! while(!bit11);/wait DHT goto high while(bit11); /数据接收状态 U8RH_data_H=COM(); U8RH_data_L=COM(); U8T_data_H=COM(); U8T_data_L=COM(); U8checkdata=COM(); bit11=1; /数据校验 if(U8T_data_H+U8T_data_L+U8RH_data_H+U8RH_data_L)!=U8checkdata) /if check wrong,read again goto
5、GO1; /fi F16T=U8T_data_H+(float)U8T_data_L/256;/change integer to float F16RH=U8RH_data_H+(float)U8RH_data_L/256;LCD1602文件#include#include #include #include #include #define LCD_DATA P0 /LCD1602 data transfer define#define uint unsigned int#define uchar unsigned char/*只由主函数调用的 有 Init_Lcd() LCD_write
6、_str(uchar X,uchar Y,uchar *s) LCD_value(unsigned char x,unsigned char y,float f)sbit LCD_RS = P25; /1602 control define sbit RW = P26;sbit LCD_E = P27;#define LCD_SCREEN_ON 0x0C /显示开#define LCD_SCREEN_OFF 0x08 /显示关 #define LCD_CURSOR_ON 0x0A /显示光标#define LCD_CURSOR_OFF 0x0c /无光标 #define LCD_C_FLASH
7、_ON 0x0f /有光标,光标闪动#define LCD_C_FLASH_OFF 0x0e /有光标,光标不闪动/进入模式设置指令#define LCD_AC_UP 0x06 /新数据后光标右移#define LCD_AC_DOWN 0x04 /新数据后光标左移#define LCD_S_MOVE_ON 0x05 / 画面可平移#define LCD_S_MOVE_OFF 0x04 /画面不可平移/设定显示屏或光标移动方向指令#define LCD_C_LEFT 0x10 /光标左移1格,且AC值减1#define LCD_C_RIGHT 0x11 /光标右移1格,且AC值加1#define
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C51 温湿度 传感器 DHT11 驱动 LCD1602 显示 程序 硬件 通过 电路图 实际 测试 效果图
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内