资源简介
以51单片机为主体 实现多点的温湿度测量和显示 外接一个迷你usb加湿器 在当前湿度低于设定值时启动

代码片段和文件信息
#include “DHT11.h“
U8 U8FLAGk;
U8 U8countU8temp;
U8 U8T_data_HU8T_data_LU8RH_data_HU8RH_data_LU8checkdata;
U8 U8T_data_H_tempU8T_data_L_tempU8RH_data_H_tempU8RH_data_L_tempU8checkdata_temp;
U8 U8comdata;
U8 count count_r=0;
U8 U8FLAG11k11;
U8 U8count11U8temp11;
U8 U8T_data_H11U8T_data_L11U8RH_data_H11U8RH_data_L11U8checkdata11;
U8 U8T_data_H_temp11U8T_data_L_temp11U8RH_data_H_temp11U8RH_data_L_temp11U8checkdata_temp11;
U8 U8comdata11;
U8 count11 count_r11=0;
void Delay1(U16 j)
{
U8 i;
for(;j>0;j--)
{
for(i=0;i<27;i++);
}
}
void Delay_10us(void)
{
U8 i;
i--;
i--;
i--;
i--;
i--;
i--;
}
void COM(void)
{
U8 i;
for(i=0;i<8;i++)
{
U8FLAG=2;
while((!DATA)&&U8FLAG++);
Delay_10us();
Delay_10us();
Delay_10us();
U8temp=0;
if(DATA)U8temp=1;
U8FLAG=2;
while((DATA)&&U8FLAG++);
//超时则跳出for循环
if(U8FLAG==1)break;
//判断数据位是0还是1
// 如果高电平高过预定0高电平值则数据位为 1
U8comdata<<=1;
U8comdata|=U8temp; //0
}//rof
}
//--------------------------------
//-----温湿度读取子程序 ------------
//--------------------------------
//----以下变量均为全局变量--------
//----温度高8位== U8T_data_H------
//----温度低8位== U8T_data_L------
//----湿度高8位== U8RH_data_H-----
//----湿度低8位== U8RH_data_L-----
//----校验 8位 == U8checkdata-----
//----调用相关子程序如下----------
//---- Delay(); Delay_10us();COM();
//--------------------------------
U8 RH(void)
{
//主机拉低18ms
DATA=0;
Delay1(180); //原来为5
DATA=1;
//总线由上拉电阻拉高 主机延时20us
Delay_10us();
Delay_10us();
Delay_10us();
Delay_10us();
//主机设为输入 判断从机响应信号
DATA=1;
//判断从机是否有低电平响应信号 如不响应则跳出,响应则向下运行
if(!DATA) //T !
{
U8FLAG=2;
//判断从机是否发出 80us 的低电平响应信号是否结束
while((!DATA)&&U8FLAG++);
U8FLAG=2;
//判断从机是否发出 80us 的高电平,如发出则进入数据接收状态
while((DATA)&&U8FLAG++);
//数据接收状态
COM();
U8RH_data_H_temp=U8comdata;
COM();
U8RH_data_L_temp=U8comdata;
COM();
U8T_data_H_temp=U8comdata;
COM();
U8T_data_L_temp=U8comdata;
COM();
U8checkdata_temp=U8comdata;
DATA=1;
//数据校验
U8temp=(U8T_data_H_temp+U8T_data_L_temp+U8RH_data_H_temp+U8RH_data_L_temp);
if(U8temp==U8checkdata_temp)
{
U8RH_data_H=U8RH_data_H_temp;
U8RH_data_L=U8RH_data_L_temp;
U8T_data_H=U8T_data_H_temp;
U8T_data_L=U8T_data_L_temp;
U8checkdata=U8checkdata_temp;
}//fi
return 1;
}//fi
else //传感器不响应
{
return 0;
}
}
void COM11(void)
{
U8 i;
for(i=0;i<8;i++)
{
U8FLAG11=2;
while((!DATA11)&&U8FLAG11++);
Delay_10us();
Delay_10us();
Delay_10us();
U8temp11=0;
if(DATA11)U8temp11=1;
U8FLAG11=2;
while((DATA11)&&U8FLAG11++);
//超时则跳出for循环
if(U8FLAG11==1)break;
//判断数据位是0还是
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 5143 2018-03-24 15:14 34401多路温湿度程序\DHT11.c
文件 1215 2018-03-24 15:12 34401多路温湿度程序\DHT11.h
文件 10609 2018-03-27 15:52 34401多路温湿度程序\DHT11.LST
文件 11559 2018-03-27 15:52 34401多路温湿度程序\DHT11.OBJ
文件 3468 2018-03-01 21:57 34401多路温湿度程序\DS1302.c
文件 855 2018-03-01 19:49 34401多路温湿度程序\DS1302.h
文件 7615 2018-03-01 22:04 34401多路温湿度程序\DS1302.OBJ
文件 2147 2017-10-20 13:03 34401多路温湿度程序\LCD1602.c
文件 434 2018-01-09 20:18 34401多路温湿度程序\LCD1602.h
文件 4402 2018-03-27 15:52 34401多路温湿度程序\LCD1602.LST
文件 5314 2018-03-27 15:52 34401多路温湿度程序\LCD1602.OBJ
文件 7893 2018-03-27 15:52 34401多路温湿度程序\main.LST
文件 9698 2018-03-27 15:52 34401多路温湿度程序\main.OBJ
文件 943 2017-01-17 17:59 34401多路温湿度程序\main.opt.bak
文件 2069 2017-01-17 17:59 34401多路温湿度程序\main.Uv2.bak
....... 68873 2018-03-27 16:59 34401多路温湿度程序\main.uvopt
....... 13739 2018-03-27 15:51 34401多路温湿度程序\main.uvproj
文件 1685 2017-01-17 17:59 34401多路温湿度程序\main_Opt.Bak
....... 68867 2018-03-27 16:30 34401多路温湿度程序\main_uvopt.bak
....... 13742 2018-03-24 14:10 34401多路温湿度程序\main_uvproj.bak
文件 5116 2017-01-17 17:59 34401多路温湿度程序\STARTUP.A51
文件 11666 2018-03-27 15:52 34401多路温湿度程序\Startup.LST
文件 749 2018-03-27 15:52 34401多路温湿度程序\Startup.OBJ
文件 23024 2018-03-27 15:52 34401多路温湿度程序\温湿度
文件 4224 2018-03-27 15:52 34401多路温湿度程序\温湿度.hex
文件 25246 2018-03-27 15:52 34401多路温湿度程序\温湿度.M51
文件 223 2018-03-27 16:51 34401多路温湿度程序\温湿度.plg
文件 35840 2018-10-10 12:52 lunwen.doc
目录 0 2018-10-10 12:52 34401多路温湿度程序
----------- --------- ---------- ----- ----
............此处省略2个文件信息
相关资源
- 51 单片机 红外避障小车 大集合136
- STC8951系列单片机中方指南
- 基于MCS_51单片机的工业屏柜散热方案
- MCS_51单片机与8255A的接口设计
- 飞思卡尔单片机MC9S12XS12G128驱动(硬件
- 51单片机PWM程序,占空比、周期可调整
- 单片机和adc0809数字电压表
- PIC单片机完成的电子密码锁
- 单片机、ADC0808809设计简易数字电压表
- 51单片机多功能自行车测速仪
- 单片机做的6位时分秒数字钟
- 单片机电子时钟 闹钟 日历
- 音乐代码转换软件 单片机编程时用
- 单片机课程设计 篮球计分器
- 00
- 用51单片机实现G代码翻译
- 简易的电阻电容测量电路
- 单片机与温度传感器DS18B20的程序设计
- 51单片机基于protues的几个仿真实例
- 基于52单片机的直流电压测量
- 38k单片机红外发送代码、keil
- 51单片机PCB设计图
- PC -- 单片机的串口数据传输系统设计
- 51单片机控制舵机程序
- 武汉理工大学 单片机课程设计 16*16点
- 51单片机读取温度数据存储到SD卡中并
- 【单片机】51单片机数码管显示万年历
- 浙江工业大学2005-2006学年单片机习题
- 单片机与PC机串口通讯仿真
- 毕业设计 单片机 对讲机 protues仿真
评论
共有 条评论