功能介绍:本设计采用51单片机作为系统主控芯片,采用DHT11传感器采集温湿度,杀虫灯系统的工作状态由温湿度传感器控制,在环境温度低和阴雨天,系统停止工作,雨停后,温度升高,系统将恢复工作。LCD1602显示温湿度、天气状态、灭蚊灯工作状态,程序采用C语言编写,使用keil5和Proteus仿真,程序有中文注释,新手容易看懂,文末有资料分享下载链接:
下面是仿真演示视频和相关仿真图片
80-基于51单片机自动灭蚊灯Proteus仿真(程序+仿真+原理图+元件清单全套资料)
程序打开办法:特别注意:下载资料包以后一定要先解压!!!(建议解压到桌面上,文件路径太深会导致程序打开异常),解压后再用keil5打开。
下面是程序部分展示(程序有中文注释,新手容易看懂)
程序部分展示:
sbit Buzzer_P = P2^1; // 蜂鸣器
sbit DHT11_P = P2^0; // 温湿度传感器DHT11数据接入
sbit LcdRs_P = P1^0; // 1602液晶的RS管脚
sbit LcdRw_P = P1^1; // 1602液晶的RW管脚
sbit LcdEn_P = P1^2; // 1602液晶的EN管脚
sbit qing = P3^5; // 晴天
sbit yu = P3^6; // 雨天
sbit LED = P3^7; // 杀虫灯
uchar temp; // 保存温度
uchar humi; // 保存湿度
uchar tianqi=1; //保存天气状态
/*********************************************************/
// 毫秒级的延时函数,time是要延时的毫秒数
/*********************************************************/
void DelayMs(uint time)
{
uint i,j;
for(i=0;i<time;i++)
for(j=0;j<112;j++);
}
/*********************************************************/
// 1602液晶写命令函数,cmd就是要写入的命令
/*********************************************************/
void LcdWriteCmd(uchar cmd)
{
LcdRs_P = 0;
LcdRw_P = 0;
LcdEn_P = 0;
P0=cmd;
DelayMs(2);
LcdEn_P = 1;
DelayMs(2);
LcdEn_P = 0;
}
/*********************************************************/
// 1602液晶写数据函数,dat就是要写入的数据
/*********************************************************/
void LcdWriteData(uchar dat)
{
LcdRs_P = 1;
LcdRw_P = 0;
LcdEn_P = 0;
P0=dat;
DelayMs(2);
LcdEn_P = 1;
DelayMs(2);
LcdEn_P = 0;
}
/*********************************************************/
// 1602液晶初始化函数
/*********************************************************/
void LcdInit()
{
LcdWriteCmd(0x38); // 16*2显示,5*7点阵,8位数据口
LcdWriteCmd(0x0C); // 开显示,不显示光标
LcdWriteCmd(0x06); // 地址加1,当写入数据后光标右移
LcdWriteCmd(0x01); // 清屏
}
/*********************************************************/
// 液晶光标定位函数
/*********************************************************/
void LcdGotoXY(uchar line,uchar column)
{
// 第一行
if(line==0)
LcdWriteCmd(0x80+column);
// 第二行
if(line==1)
LcdWriteCmd(0x80+0x40+column);
}
程序打开方法:采用keil5打开,公众号有软件安装包
原理图采用【AD】altium designer打开,公众号有安装包
下面是资料包里面包含的相关文件展示