电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

DHT11温湿度传感器51单片机在LCD1602显示程序

DHT11温湿度传感器51单片机在LCD1602显示程序_第1页
1/8
DHT11温湿度传感器51单片机在LCD1602显示程序_第2页
2/8
DHT11温湿度传感器51单片机在LCD1602显示程序_第3页
3/8
//51 单片机控制温湿度传感器 DHT11然后在 LCD1602 上显示当前的温湿度及单位其中湿度在第一行显示温度在第二行显示。单片机为YL-9 最小系统。# include 〈reg51.h〉# include typedef unsigned char BYTE;typedef unsigned int WORD;#define uint unsigned int #define uchar unsigned char sbit io=P1^0;//dht11data 端接单片机的 P1^0 口// sbit rw=P2^1;//一下三行是设置 lcd1602 的使能端// sbit rs=P2^0; sbit ep=P2^2; typedef bit BOOL;//此声明一个布尔型变量即真或假// uchar data_byte; uchar RH,RL,TH,TL; //***************延时函数************************************* void delay(uchar ms) //延时模块// { uchar i; while(ms-—) for(i=0;i〈100;i++); } void delay1()//一个 for 循环大概需要 8 个多机器周期一个机器周期为1us晶振为 12MHz也就是说本函数延时 8us 多此延时函数必须德略微精确一点 { uchar i; for(i=0;i<1;i++); } //*************************************************************** //lcd 模块// BOOL lcd_bz()//测试 lcd 忙碌状态返回值为布尔型数值真或假’1'。'0' { BOOL result; rs=0; // 读忙信号 rw=1; ep=1; _nop_(); _nop_(); _nop_(); _nop_(); result = (BOOL)(P2&0x80); ep=0; result ;} void write_cmd(uchar cmd)//写指令// { while (lcd_bz()); rs=0; rw=0; ep=0; _nop_(); _nop_(); P0=cmd ; _nop_(); _nop_(); _nop_(); _nop_(); ep=1; _nop_(); _nop_(); _nop_(); _nop_(); ep=0;} void write_addr(uchar addr)//写地址// { write_cmd(addr|0x80);//LCD 第一行的首地址为 0x80第二行的首地址为 0x80+0x40=0xc0 } void write_byte(uchar dat) //写字节// { while (lcd_bz()); rs=1; rw=0; ep=0; _nop_(); _nop_(); P0=dat ; _nop_(); _nop_(); _nop_(); _nop_(); ep=1; _nop_(); _nop_(); _nop_(); _nop_(); ep=0;} void lcd_init() //lcd 初始化// { write_cmd(0x38);//设置 LCD 两行显示一个数据由5*7 点阵表示,数据由 8...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

DHT11温湿度传感器51单片机在LCD1602显示程序

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部