MM32W无线MCU系列智能炫彩遥控灯方案MM32W系列是超低功耗的单模蓝牙芯片,射频采用2.4GHz ISM频段的频率,2MHz信道间隔,符合蓝牙规范。使用高性能的ARM®Cortex®-M3为内核的32位MCU,工作频率可高达96兆赫兹,内置高速Flash存储器,丰富的增强型I/O端口和外设连接到两条APB总线。工作电压为2.3V~3.9V,工作温度范围包含-40℃~ +85℃常规型。多种省电工作模式保证低功耗应用的要求。采用LQFP64和LQFP48的封装形式。
基于蓝牙技术的智能灯控方案是智能家居应用重要组成部分,通过连接手机APP可以控制灯的开关、亮度、设定开关时间、统计耗电量等功能。该方案具有控制方便,功能多样,操作迅速,设计开发简单等优势。
硬件资源: LED的驱动分别使用PA9/10/11输出PWM波形控制三极管来驱动RGB灯。通过控制灰度来实现视觉上的亮度和颜色变化,红、绿、蓝三个颜色通道每种颜色各分为255阶亮度,在0时"灯"最弱--是关掉的,而在255时"灯"最亮。当三色数值相同时为无色彩的灰度色,而三色都为255时为最亮的白色,都为0时为黑色控制频率。可以使用几百赫兹到几十K赫兹来进行调节不同色彩的灯光。驱动控制原理部分详见下图:
图1 RGB灯驱动原理图
软件资源: 1、PA9/10/11为TIM1的CH2、3、4的捕获比较输出通道,需要将三个IO工作模式的配置为复用推挽输出,同时配置AF寄存器为TIM1的CH2、3、4功能,TIM1需要配置CH2、3、4为脉冲宽度调制模式。
2、我们在UpdateLEDValueAll函数中调用Led_getInfo(data)来获取RGB的配置信息,data是一个数组指针,数组成员包含RGB三个LED的灰度值(0-255),而Led_getInfo(data)最终通过调用server_rd_rsp(u8 attOpcode, u16 attHandle, u8 pdu_type)函数来获取手机APP发送给我们的信息。根据data信息修改TIM1的CCR2、3、4的大小来调节CH2、3、4三路PWM输出的占空比,进而调节REB的三个LED的亮度,来实现我们对于不同色彩、亮度的需求。
我们选用一款通用APP做为控制端,操作流程如下: 1.手机打开App,会自动开始搜索蓝牙设备名(如MindMotionLED)并连接。 2.连接成功以后app出现RGB控制界面,可以在APP界面中点选不同区域来改变LED灯的颜色。 图2 APP界面
文章分类:
产品资讯
|