基于手机蓝牙控制的LED灯的设计

时间:2014-10-23来源:网络

  5.2 程序设计

  主函数流程图如图2所示,定义完相关变量和相关函数声明后,设计串口通信函数,设置定时器1中断,中断函数为占空比控制函数,然后设计数据接收函数,当串口服务函数接收到数据时,将数据发送到数据接收函数,然后将接受到的字符数据通过字符转型函数进行字符的转型,然后通过标志iCommdType判断控制哪一路信号,当无标志信号来时,一直循环检查,检查到相应的标志信号,然后执行占空比调节函数蓝牙模块与单片机之间的通信使用模拟串口实现的,串口为标准配置:波特率9600,编写一个串口初始化函数void UART_INIT(),初始化相关标志,和寄存器,然后编写中断接收函数void tm0()interrupt 1 using 1,接收串口发来的数据。设定定时器1中断并编写中断服务函数void tm1()interrupt 3 using1,实现P W M的占空比控制。编写数据接收函数char GetUartData(),将中断接收函数里接收到的数据发送这里,等待接收数据函数void WaitForChars(unsigned chariCount,char *Dest)通过调用数据接收函数char GetUartData(),将手机发送来的数据装载到定义好的变量数组,然后通过字符转型函数unsigned int GetCmdType(char*Commd),将字符型数据转成数字,通过标志判断,要控制哪一路PWM波,然后将相应的数据传到控制占空比的中断服务函数,改变其占空比的输出。

  

 

  图2 主函数流程图

  6.结果展示

  6.1 手机端界面

  如图3所示,其中W调节白光,从0到100R、B、G共有100万种组合,每一种组合对应一种颜色,通过改变RBG的组合,从而调节LED的颜色。

  

 

  图3

  6.2 PWM波输出效果

  如图4所示,这是其中一路PWM波的控制信号,通过手机端控制其占空比,用示波器测出其波形。

  

 

  图4

  6.3 实际调光调色效果

  选择几种组合调色效果如图5所示。

  

 

  图5

1 2

关键词: LED PWM 蓝牙模块

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版