51单片机光照温度检测蓝牙传输
51单片是一种低功耗、高性能CMOS-8位微控制器,拥有灵巧的8位CPU和可编程Flash,使得51单片机为众多嵌入式控制应用系统提供灵活、高效的解决方案。本设计所使用的芯片可兼容以下所有的51系列单片机(包括AT系列和STC系列)。
目录
具体实现功能
由51单片机+光敏电阻+DS18B20温度传感器+蓝牙模块+LCD1602液晶显示+电源等组成
具体功能:
(1)LCD1602液晶实时显示光照值和温度值;
(2)设定温度和光照报警值,超过报警值将光照值和温度通过蓝牙模块实时传到手机。

仿真/实物演示视频:
51单片机光照温度检测蓝牙传输
设计介绍

51单片机简介
51单片是一种低功耗、高性能CMOS-8位微控制器,拥有灵巧的8位CPU和可编程Flash,使得51单片机为众多嵌入式控制应用系统提供灵活、高效的解决方案。
本设计所使用的芯片可兼容以下所有的51系列单片机(包括AT系列和STC系列)。

资料内容
原理图(AD19)
本系统原理图设计采用Altium Designer19,具体如图。

注1:请使用Altium Designer19直接打开资料中的工程文件(资料中已说明打开方式)!
注2:此设计需按照原理图制作实物,不可直接烧录到任何开发板中运行(需要修改程序)!
程序(Keil5)
本设计利用KEIL5软件实现程序设计。
主函数如下:
////////////////
/*******************************************************************************
* 函数名 : main
* 函数功能 : 主函数
* 输入 : 无
* 输出 : 无
*******************************************************************************/
void main()
{
float tp;
float light;
uchar num=0,i;
LcdInit(); //初始化LCD1602
UsartConfiguration();
LcdWriteCom(0x80); //写地址 80表示初始地址
LcdWriteData('L');
LcdWriteCom(0x81); //写地址 81表示初始地址
LcdWriteData(':');
LcdWriteCom(0x89); //写地址 80表示初始地址
LcdWriteData(':');
LcdWriteCom(0x88); //写地址 80表示初始地址
LcdWriteData('C');
LcdWriteCom(0x80+0x40); //写地址 80表示初始地址
LcdWriteData('W');
LcdWriteCom(0x80+0x41); //写地址 81表示初始地址
LcdWriteData(':');
LcdWriteCom(0x80+0x49); //写地址 80表示初始地址
LcdWriteData(':');
LcdWriteCom(0x80+0x48); //写地址 80表示初始地址
LcdWriteData('H');
TH=1000;
while(1)
{
temp2=Ds18b20ReadTemp();
tp=temp2;
temp2=tp*0.0625*100+0.5;
for(i=0;i<50;i++)
{
light =light + ReadADC(0); //读取第1路电压值,范围是0-255.AIN2 光敏电阻
}
light=light/50;
LcdDisplay(light,50,temp2,200);
DelayMs(100);
}
}
程序运行结果如图:

注:请使用KEIL C51直接打开资料中的工程文件(资料中已说明打开方式)!
全部资料
全部资料包括原理图(AD19)、程序(Keil5)、protues仿真(protues8.7)、设计报告(仅供参考)、仿真视频、开发资料、仿真视频、单片机最小系统介绍等,全网最全!资料内容如下图所示!!

资料获取
https://docs.qq.com/doc/DT090bmZpeUphS1p4
更多推荐



所有评论(0)