基于蓝牙控制的的灯光控制系统第一章 功能描述1、本设计采纳蓝牙作为上位机和下位机之间的通信方式,本设计使用手机 APP作为上位机控制下位机(单片机)
2、采纳 DS1302 时钟芯片,通过开发板上的数码管显示时分秒,即使断开电源,DS1302 芯片中的时间也会正常走,不需要重复写入时间
3、手机连接蓝牙后,手机 APP 可以控制 LED 灯显示红绿蓝三种颜色,还可以向单片机发送 LED 灯亮的时间以及灯灭的时间
4、当灯亮的时候,可以通过按键调节占空比调节灯光亮度也就是 PWM 调光
在灯光开启之前以及灯灭之后 PWM 调光按键无效
第二章 下位机软件设计思路以及原理本设计使用了 STC12C5A60S2 单片机、数码管、HC-05 蓝牙模块、LED 彩灯、DS1302 时钟模块
1 单片机程序设计单片机部分程序设计主要包括定时器 0 和定时器 1 以及串口部分程序设计2
1 定时器以及 PWM 调光部分程序设计定时器主要用到了定时器 0 以及定时器 1,在本设计中有一项功能是 PWM调光功能,由于单片机没有 PWM 模块,所以在本设计中我们采纳定时器 0 来模拟实现 PWM 的功能,其中定时器 0 的初始化程序如下所示
void Timer0Init(){TMOD = 0x02; //定时器 0,工作模式 2,8 位定时模式TH0=210; //写入预置初值(取值 1-255,数越大 PWM 频率越高)TL0=210; //写入预置值 (取值 1-255,数越大 PWM 频率越高)TR0=1; //启动定时器 0PWM_T=0;}void timer0() interrupt 1 { t++; //每次定时器溢出加 1 if(t==250) //PWM 周期 100 个单位 { t=0; //使 t=0,开始新的 PWM 周期 P1=0x07&P1; //输出端口