欢迎来到天天文库
浏览记录
ID:51660890
大小:14.58 KB
页数:10页
时间:2020-03-14
《DHT11温湿度传感器驱动程序.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、/*本程序适用于DHT11温湿度传感器由于DHT11使用拉高总线的不同时常来代替0和1028US170us同时数据送入1602a显示*/#include#include#include#defineDataP0//数据端口sbitRS=P2^4;//Pin4sbitRW=P2^5;//Pin5sbitE=P2^6;//Pin6sbitdat=P1^2;unsignedintshidu_h=0,shidu_l=0,wendu_h=0,wendu_l=0,i,xiaoyan=0;//定义湿度温度变量unsignedcharcod
2、etab[]={0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39};//定义1602a显示0-9unsignedinta[16]={0};voiddelayus(unsignedchari)//延时2us{while(--i);}voiddelayms(unsignedcharj)//延时1ms{while(--j){delayus(125);delayus(125);delayus(125);delayus(125);}}/*****************************************************
3、*************//*写入命令函数1602*//******************************************************************/voidWriteCommand(unsignedintc){delayms(10);//操作前短暂延时,保证信号稳定代替状态监测E=0;RS=0;RW=0;_nop_();E=1;Data=c;E=0;}/******************************************************************//*写入数据函数*//***************
4、***************************************************/voidWriteData(unsignedcharc){delayms(10);;//操作前短暂延时,保证信号稳定E=0;RS=1;RW=0;_nop_();E=1;Data=c;E=0;RS=0;}/******************************************************************//*写入字节函数*//*************************************************************
5、*****/voidShowChar(unsignedcharpos,unsignedintc){unsignedcharp;if(pos>=0x10)p=pos+0xb0;//是第二行则命令代码高4位为0xcp低两位表示位置显示代码只用DDRAM前16位elsep=pos+0x80;//是第一行则命令代码高4位为0x8p低两位表示位置显示代码只用DDRAM前16位WriteCommand(p);//写命令写入数据指针确定行中哪一位显示WriteData(c);//写数据}/*****************************************************
6、*************//*写入字符串函数*//******************************************************************/voidShowString(unsignedcharline,unsignedint*ptr){unsignedcharl,i;//l表示行中某一位显示l=line<<4;//L为0x01时左移四位为了与b0H相加变为0xcfor(i=0;i<16;i++)ShowChar(l++,*(ptr+i));//循环显示16个字符}/**********************************
7、********************************//*初始化函数*//******************************************************************/voidInitLcd(){WriteCommand(0x38);//displaymodeWriteCommand(0x38);//displaymodeWriteCommand(0x38);//displaymodeWriteCommand(0x06);//显
此文档下载收益归作者所有