基于51单片机无线蓝牙APP控LED灯亮灭亮度设计
- 1、项目简介
- 1.1 系统构成
- 1.2 系统功能
- 2、部分电路设计
- 2.1 GSM SIM800A模块电路设计
- 2.2 蜂鸣器报警电路(低电平有效)设计
- 2.3 ADXL345倾角传感器模块电路设计
- 2.4 DS18B20温度传感器模块电路设计
- 3、部分代码展示
- 3.1 ds18b20初始化
- 3.1 ADXL345初始化
1、项目简介
- 选题指导,项目分享: https://gitee.com/lighter-z/embedded-base/tree/master
- 点击查看详细资料
1.1 系统构成
本设计由STC89C52单片机电路+ADXL345加速度传感器电路+按键电路+蜂鸣器报警电路+DS18B20温度传感器电路+LED灯电路+GSM模块电路+电源电路组成。
1.2 系统功能
- 1、板子竖直放置的时候,蜂鸣器不报警,板子歪倒一定角度,则蜂鸣器鸣叫报警。一段时间约15s未回复正确状态,GSM发送报警信息给手机:Help me!!。
- 2、如果温度超过38度,蜂鸣器报警,持续温度过高约15s左右,同时短信报警:has a cold
- 3、设计带有误报警按键,蜂鸣器报警的时候,如果老人认为是误报警,则按键按下,蜂鸣器停止报警,如果持续问题存在还会报警。
- 4、短信处理过程有指示灯显示。
- 5、GSM模块是SIM800A,该模块和SIM900A电路程序完全兼容外观外形一模一样。
2、部分电路设计
2.1 GSM SIM800A模块电路设计
GSM模块,是将GSM射频芯片、基带处理芯片、存储器、功放器件等集成在一块线路板上,具有独立的操作系统、GSM射频处理、基带处理并提供标准接口的功能模块。GSM模块具有发送SMS短信,语音通话,GPRS数据传输等基于GSM网络进行通信的所有基本功能。简单来讲,GSM模块加上键盘、显示屏和电池,就是一部手机。
模块应用领域:远程监控、远程智能抄表、智能家居和车载设备等远程通讯设备。
模块接口原理图如下图所示:
模块内部具体原理图如下图所示:
2.2 蜂鸣器报警电路(低电平有效)设计
电路中采用三极管9012来驱动,只要单片机控制引脚为低电平,蜂鸣器就会鸣叫报警,反之则不鸣叫,可以通过控制单片机引脚方波输出形式控制蜂鸣器的鸣叫方式。
2.3 ADXL345倾角传感器模块电路设计
本设计选择倾角传感器ADXL345模块实时检测相关的状态信息。ADXL345是一款小而薄的超低功耗3轴加速度计,分辨率高(13位),测量范围达± 16g。数字输出数据为16位二进制补码格式,可通过SPI(3线或4线)或I2C数字接口访问。
ADXL345模块接口图如下图所示:
2.4 DS18B20温度传感器模块电路设计
DS18B20是常用的数字温度传感器,其输出的是数字信号,具有体积小,硬件开销低,抗干扰能力强,精度高的特点。
DS18B20接口图如下图所示:
3、部分代码展示
3.1 ds18b20初始化
bit Init_DS18B20(void)
{
bit dat=0;
DQ = 1; //DQ复位
DelayUs2x(5); //稍做延时
DQ = 0; //单片机将DQ拉低
DelayUs2x(200); //精确延时 大于 480us 小于960us
DelayUs2x(200);
DQ = 1; //拉高总线
DelayUs2x(50); //15~60us 后 接收60-240us的存在脉冲
dat=DQ; //如果x=0则初始化成功, x=1则初始化失败
DelayUs2x(25); //稍作延时返回
return dat;
}
3.1 ADXL345初始化
void Init_ADXL345()
{
Single_Write_ADXL345(0x31,0x0B); //测量范围,正负16g,13位模式
Single_Write_ADXL345(0x2C,0x08); //速率设定为12.5 参考pdf13页
Single_Write_ADXL345(0x2D,0x08); //选择电源模式 参考pdf24页
Single_Write_ADXL345(0x2E,0x80); //使能 DATA_READY 中断
Single_Write_ADXL345(0x1E,0x00); //X 偏移量 根据测试传感器的状态写入pdf29页
Single_Write_ADXL345(0x1F,0x00); //Y 偏移量 根据测试传感器的状态写入pdf29页
Single_Write_ADXL345(0x20,0x05); //Z 偏移量 根据测试传感器的状态写入pdf29页
}