资源简介
本设计是基于51单片机的温湿度检测系统课程设计 传感器使用DHT11的温湿度传感器,屏幕是LCD1602的屏幕,可以在屏幕上直接显示当前室内温湿度值,希望大家注意晶振的大小,单片机晶振大小不同时,需要修改延时。

代码片段和文件信息
#include
#define uint unsigned int
#define uchar unsigned char
//--------LCD1602-------------------
//P10-17==== D0-7
sbit rs=P3^0; //指令or数据
//sbit rs=P3^7; //指令or数据
sbit wela=P3^1; //读or写
//sbit wela=P3^6; //读or写
sbit lcden=P3^2; //使能信号
//sbit lcden=P3^5; //使能信号
uchar dispaly[10]; //显示缓冲
uchar Temp; //温度
uchar Hum; //湿度
sbit P20 = P2^7; //dht11
//sbit P10 = P3^0; //dht11
//-----------DHT11------------------------------
uchar U8FLAGk;
uchar U8countU8temp;
uchar U8T_data_HU8T_data_LU8RH_data_HU8RH_data_LU8checkdata;
uchar U8T_data_H_tempU8T_data_L_tempU8RH_data_H_tempU8RH_data_L_tempU8checkdata_temp;
uchar U8comdata;
//-----------DHT11------------------------------
//************************************************************************/
// 描述: 延时t us函数
//************************************************************************/
void LCD_Delay_us(unsigned int t)
{
while(t--); //t=0退出
}
//************************************************************************/
// 描述: 延时t ms函数
//************************************************************************/
void LCD_Delay_ms(unsigned int t)
{
unsigned int ij;
for(i=0;i for(j=0;j<113;j++) //执行113次循环
;
}
//************************************************************************/
// 描述: 1602液晶写指令
//************************************************************************/
void write_com(uchar com) //1602液晶写指令
{
rs=0; //写指令
lcden=0; //使能1602
P1=com; //写入指令com
LCD_Delay_ms(1); //延时1ms
lcden=1; //使能1602
LCD_Delay_ms(5); //延时5ms
lcden=0; //使能1602
}
//************************************************************************/
// 描述:1602液晶写数据
//************************************************************************/
void write_date(uchar date) //1602液晶写数据
{
rs=1; //写数据
lcden=0; //使能1602
P1=date; //写入数据date
LCD_Delay_ms(1); //延时1ms
lcden=1; //使能1602
LCD_Delay_ms(5); //延时5ms
lcden=0; //使能1602
}
//************************************************************************/
// 描述:指定xy写入字符函数
//************************************************************************/
void W_lcd(unsigned char xunsigned char yunsigned char Data)
{
if (y == 0){write_com(0x80 + x);} //第一行
else{write_com(0xc0 + x);} //第二行
write_date( Data); //写入数据
}
//指定xy写入字符串函数
void LCD_Write_String(unsigned char xunsigned char yunsigned char *s)
{
if (y == 0){write_com(0x80 + x);} //第一行
else{write_com(0xC0 + x);} //第二行
while (*s) //
{write_date( *s); s++;} //写入数据
}
//*****
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-06-03 15:48 1 源程序\
文件 10162 2018-06-02 12:40 1 源程序\DHT11
文件 14714 2018-06-02 12:39 1 源程序\DHT11.LST
文件 14481 2018-06-02 12:40 1 源程序\DHT11.M51
文件 12556 2018-06-02 12:39 1 源程序\DHT11.OBJ
文件 1988 2013-02-02 14:21 1 源程序\DHT11.Uv2.bak
文件 7834 2018-06-03 15:48 1 源程序\DHT11.c
文件 2013 2018-06-02 12:40 1 源程序\DHT11.hex
文件 42 2018-06-02 12:40 1 源程序\DHT11.lnp
文件 1022 2017-12-20 20:04 1 源程序\DHT11.opt.bak
文件 191 2018-06-03 15:47 1 源程序\DHT11.plg
文件 56617 2018-06-03 15:48 1 源程序\DHT11.uvopt
文件 13239 2018-06-02 14:30 1 源程序\DHT11.uvproj
文件 1026 2016-05-13 16:16 1 源程序\DHT11_Opt.Bak
文件 1988 2013-01-17 15:54 1 源程序\DHT11_Uv2.Bak
文件 56613 2018-06-02 14:30 1 源程序\DHT11_uvopt.bak
文件 13239 2018-05-30 23:13 1 源程序\DHT11_uvproj.bak
相关资源
- 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仿真
评论
共有 条评论