资源简介
源码 原理图 PCB 51温湿度检测通过1602实时显示 并且按键控制温湿度阈值 控制四个继电器 加湿趋势升温降温 带开题报告参考 论文 材料清单
代码片段和文件信息
#include
#include
#include
#include
#define uchar unsigned char
#define uint unsigned int
//定义四个输出端口
sbit Led_jiashi=P3^4; //加湿
sbit Led_qushi=P3^3; //去湿
sbit Led_jiangwen=P3^1; //降温
sbit Led_shengwen=P3^2; //升温
//定义三个设置按键
sbit Key_SET = P2^0;
sbit Key_ADD = P2^1;
sbit Key_SUB = P2^2;
sbit Key_OK = P2^3;
//定义24C02数据口
sbit SCL = P1^0;
sbit SDA = P1^1;
//定义DHT11数据口
sbit DATA = P1^7;
sbit buzz=P3^5;
//定义LCD1602端口
sbit E=P1^3; //1602使能引脚
//sbit RW=P2^6; //1602读写引脚
sbit RS=P1^2; //1602数据/命令选择引脚
//定义全局变量
uchar U8FLAGU8tempU8comdataU8RH_data_H_tempU8RH_data_L_tempU8T_data_H_tempU8T_data_L_tempU8checkdata_temp;
uchar U8RH_data_HU8RH_data_LU8T_data_HU8T_data_LU8checkdata;
uchar Modehumiditytemperature;
char THTLHHHL;
bit bdata FlagStartRHhotcoldhumiddryBJ;
//定时器0初始化
void Timer0_Init()
{
ET0 = 1; //允许定时器0中断
TMOD = 0x11; //定时器工作方式选择
TL0 = 0xFF;
TH0 = 0x4B; //定时器赋予初值
TR0 = 1; //启动定时器
}
//定时器0中断
void Timer0_ISR (void) interrupt 1 using 0
{
uchar RHCounter;
TL0 = 0xFF;
TH0 = 0x4B; //定时器赋予初值
RHCounter++;
if(RHCounter%10==0&&BJ==1)
buzz=!buzz;
else if(BJ==0)
buzz=1;
//每2秒钟启动一次温湿度转换
if (RHCounter >= 40)
{
FlagStartRH = 1;
RHCounter = 0;
}
}
/*********************************
base DRIVE
**********************************/
void DELAY(unsigned int t)
{
while(t!=0)
t--;
}
/******************************
IIC DRIVE
******************************/
void IICStart(void)
{
SCL=0;
DELAY(1);
SDA=1; SCL=1; DELAY(1);
SDA=0; DELAY(1);
SCL=0;
}
void IICStop(void)
{
SDA=0;SCL=1; DELAY(1);
SDA=1; DELAY(1);
SCL=0;
}
void SEND0(void)
{
SDA=0;
SCL=1;
DELAY(1);
SCL=0;
}
void SEND1(void)
{
SDA=1;
DELAY(1);
SCL=1;
DELAY(1);
SCL=0;
}
bit Check_Ack(void)
{
unsigned char errtime=250;
DELAY(1);
SCL=1;
DELAY(1);
CY=SDA;
while(CY)
{
errtime--;
CY=SDA;
if (!errtime)
{
IICStop();
return 1;
}
}
DELAY(1);
SCL=0;
return 0;
}
void Write_byte(unsigned char dat)
{
unsigned char i;
for(i=0;i<8;i++)
{
if((dat< SEND1();
else
SEND0();
}
}
unsigned char Read_byte(void)
{
unsigned char itemp=0;
for(i=0;i<8;i++)
{
SDA=1;
SCL=1;
DELAY(1);
if(SDA==1)
{
temp=temp<<1;
temp=temp|0x01;
}
else
temp=temp<<1;
SCL=0;
}
return temp;
}
/************************************
EEPROM DRIVE
Addr:from 0x00-->
*************************************/
unsigned char rdeeprom(unsigned char addr)
{
unsigned char temp=0;
bit flag=0;
IICStart();
Write_byte(0xa0);
Check_Ack();
Write_byte(addr);
Check_Ack();
IICStart();
Write_byte(0xa1);
Check_Ack();
temp=Read_byte();
SEND1();
IICStop
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-05-15 21:53 项目 1 基于51单片机温湿度的检测及控制的设计\
目录 0 2018-04-16 18:04 项目 1 基于51单片机温湿度的检测及控制的设计\1-源程序\
文件 6376 2017-10-11 11:18 项目 1 基于51单片机温湿度的检测及控制的设计\1-源程序\STARTUP.A51
文件 14052 2018-04-16 17:38 项目 1 基于51单片机温湿度的检测及控制的设计\1-源程序\STARTUP.LST
文件 749 2018-04-16 17:38 项目 1 基于51单片机温湿度的检测及控制的设计\1-源程序\STARTUP.OBJ
文件 31551 2018-04-16 17:38 项目 1 基于51单片机温湿度的检测及控制的设计\1-源程序\dht
文件 28626 2018-04-16 17:38 项目 1 基于51单片机温湿度的检测及控制的设计\1-源程序\dht.LST
文件 40829 2018-04-16 17:38 项目 1 基于51单片机温湿度的检测及控制的设计\1-源程序\dht.M51
文件 36802 2018-04-16 17:38 项目 1 基于51单片机温湿度的检测及控制的设计\1-源程序\dht.OBJ
文件 1059 2018-04-16 17:38 项目 1 基于51单片机温湿度的检测及控制的设计\1-源程序\dht.build_log.htm
文件 14616 2017-11-22 12:21 项目 1 基于51单片机温湿度的检测及控制的设计\1-源程序\dht.c
文件 7388 2018-04-16 17:38 项目 1 基于51单片机温湿度的检测及控制的设计\1-源程序\dht.hex
文件 39 2018-04-16 17:38 项目 1 基于51单片机温湿度的检测及控制的设计\1-源程序\dht.lnp
文件 235 2017-11-24 23:24 项目 1 基于51单片机温湿度的检测及控制的设计\1-源程序\dht.plg
文件 174830 2018-04-16 18:04 项目 1 基于51单片机温湿度的检测及控制的设计\1-源程序\dht.uvgui.26964
文件 70737 2018-03-27 13:32 项目 1 基于51单片机温湿度的检测及控制的设计\1-源程序\dht.uvgui.Shinelon
文件 5737 2018-04-16 17:38 项目 1 基于51单片机温湿度的检测及控制的设计\1-源程序\dht.uvopt
文件 14421 2018-04-16 17:38 项目 1 基于51单片机温湿度的检测及控制的设计\1-源程序\dht.uvproj
文件 55257 2017-11-24 19:37 项目 1 基于51单片机温湿度的检测及控制的设计\1-源程序\dht_uvopt.bak
文件 13389 2017-10-11 11:18 项目 1 基于51单片机温湿度的检测及控制的设计\1-源程序\dht_uvproj.bak
目录 0 2017-12-05 20:55 项目 1 基于51单片机温湿度的检测及控制的设计\10-开发资料\
目录 0 2017-12-05 20:55 项目 1 基于51单片机温湿度的检测及控制的设计\10-开发资料\1602资料\
文件 262017 2017-10-11 11:19 项目 1 基于51单片机温湿度的检测及控制的设计\10-开发资料\1602资料\1602液晶说明.pdf
文件 268206 2017-10-11 11:19 项目 1 基于51单片机温湿度的检测及控制的设计\10-开发资料\1602资料\1602液晶资料[1].pdf
文件 1205196 2017-10-11 11:19 项目 1 基于51单片机温湿度的检测及控制的设计\10-开发资料\1602资料\EN_TC1602.pdf
文件 1347951 2017-10-11 11:19 项目 1 基于51单片机温湿度的检测及控制的设计\10-开发资料\1602资料\字符手册.pdf
文件 577648 2017-10-11 11:19 项目 1 基于51单片机温湿度的检测及控制的设计\10-开发资料\24c02.pdf
文件 267902 2017-10-11 11:19 项目 1 基于51单片机温湿度的检测及控制的设计\10-开发资料\AT24C02SC.pdf
文件 5226818 2017-10-11 11:19 项目 1 基于51单片机温湿度的检测及控制的设计\10-开发资料\AT89C51.pdf
文件 1581040 2017-10-11 11:19 项目 1 基于51单片机温湿度的检测及控制的设计\10-开发资料\AT89S51.doc
文件 52224 2017-10-11 11:19 项目 1 基于51单片机温湿度的检测及控制的设计\10-开发资料\AT89S52的中文资料.doc
............此处省略196个文件信息
相关资源
- 基于51单片机的交通信号灯程序
- GSM监控系统51单片机设计
- 51单片机定时器/计数器的结构和原理
- MCS-51单片机定时器和计数器区别的理
- 基于51单片机的多通道数据采集范围控
- ADC0832ADC0809DAC0832三种芯片程序,c程序
- 基于51单片机的直流电机转速控制及显
- 高速公路快速放行提示系统
- 光敏电阻传感器模块4线制
- 51单片机_DS1302时钟芯片_共阴数码管
- 基于51单片机的教室智能照明控制系统
- 基于单片机的智能低电阻测量仪
- 电动车智能充电桩全套
- 五路循迹智能小车
- 基于51单片机的交通灯设计
- 51 教室智能灯 控制系统
- 51单片机125Khz ID卡读卡程序
- 51单片机课程设计内含50多个课程设计
- 51单片机实现蜂鸣器的简易歌曲播放器
- 基于51单片机的智能十字路口交通灯系
- 51单片机编写的标准modbus协议通信模版
- SIM900A通过51单片机拨打电话程序
- at89c51单片机外文翻译
- CW2015 51单片机程序
- 基于51单片机的超声波测距技术实现含
- 基于51单片机射频密码锁设计门禁刷卡
- 基于51单片机的十字路口交通灯Protu
- 32x16LED汉子点阵显示屏
- 收发短信,短信控制LED51单片机例程
- 51单片机智能小车花式,寻迹,红外,
评论
共有 条评论