您的位置 首页 开关

51单片机做的温湿度测量仪

本人去年用51单片机做的温湿度传感器模块,有实物,有程序,供大家分享。该1602液晶的D0~D7数据口连接单片机的P17~P10口,所以程序里的指令

自己上一年用51单片机做的温湿度传感器模块,有什物,有程序,供我们共享。

该1602液晶的D0~D7数据口衔接单片机的P17~P10口,所以程序里的指令和数据都是逆向输入的。
程序和电路图下载:http://www.51hei.com/f/温湿度传感器+1602原理图.rar

#include #include #include #define uchar unsigned char #define uint unsigned int #define noACK 0 #define ACK 1#define STATUS_REG_W 0x06#define STATUS_REG_R 0x07#define MEASURE_TEMP 0x03 #define MEASURE_HUMI 0x05 #define RESET 0x1esbit SCK =P1^0;sbit DATA=P1^1;sbit led1=P1^7; sbit  rs=P2^3; //H数据,L指令sbit  en=P2^5; //高脉冲使能,使能脉宽最小150nssbit  rw=P2^4;uchar code table_temp[]=" TEMP: ";uchar code table_humi[]=" HUMI: ";uchar code table_c[]=" C  ";uchar code table_p[]=" %  ";uchar error=0; void delayms(uint z) { uint i,j; for(i=z;i>0;i--) for( j=110;j>0;j--); } //发动时序 void transstart() { SCK=1;_nop_(); DATA=0;_nop_(); SCK=0;_nop_();_nop_();_nop_(); SCK=1;_nop_(); DATA=1;_nop_(); SCK=0; } //写入指令子函数 uchar write_byte(uchar value) { uchar i; for(i=0x80;i>0;i=i/2) { if(i&value) DATA=1; else DATA=0; SCK=1; _nop_();_nop_();_nop_(); SCK=0; } DATA=1; SCK=1; error=DATA; SCK=0; return error; } 				   

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/dianyuan/kaiguan/255392.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部