本本针对Telink BLE MESH SDK  灯控的使用进行说明。
1、调整灯光的频率
默认情况下 SDK PWM波的频率是 600HZ的,有时我们需要将它调整频率,例如调整为4K,只需要更改参数 PMW_MAX_TICK_MULTI 为31 就好了。
计算 PWM 频率公式
freq = CLOCK_SYS_CLOCK_HZ / (PMW_MAX_TICK)
PMW_MAX_TICK=PMW_MAX_TICK_BASE*PMW_MAX_TICK_MULTI
PMW_MAX_TICK_BASE=255 为常量 不变化。
 
 
2、调整灯光的亮度,
SDK中,灯光的亮度范围5%~100%,但是发现设置亮度为50%, 实际亮度却不是50%,实际上对应的表格如下。你设置的亮度百分比只是一个 索引号,例如设置亮度为50%, 实际PWM频率为
rgb_lumen_map[50]=(75*256)/255=29.4%;设置亮度为10%,实际PWM频率为rgb_lumen_map[10]=(7*256)/255=2.75%;

以下为逻辑分析仪抓图。设置亮度为50%,
PWM波频率为4K,设置亮度为50%波形
 

PWM波频率为4K,设置亮度为10%波形
 
实际测试,某些灯具设置占空比太小时,会出现闪烁的情况,因此SDK中做了限制,亮度值设置为0~4时,认为是无效值。
 
3、色度与亮度的关系
有时为了渲染效果需要改变灯的颜色,本质其实是调整Red Green Blue 3路PWM波达到一个效果,每个灯厂商的灯珠的RGB与色温 都有对应的表格。具体可以去网上查找“常用色温对应RGB颜色表http://blog.csdn.net/vrix/article/details/44037737
色温的定义:以绝对温度K来表示。是将一标准黑体加热,温度升高至某一程度时,颜色开始由红—浅红-橙黄-白-蓝白-蓝,逐渐变化,利用这种光色变化的特性,某光源的光色与黑体在某一温度下呈现的光色相同时,我们将黑体当时的绝对温度称为该光源的相关色温。
3000K 黄色光,强穿透力 
4200K 白中带黄,原车配氙气灯 
5000K 光全白,欧规最高色温 
6000K 光全白,略带蓝色 
6500K 阳光下的白天 
7000??8000K白中明显带蓝 
8000K以上蓝光,穿透力极差推荐6000K左右的色温正好是最白略微开始转蓝的色温,人眼容易接受,不易疲劳,提高安全性,而卤素灯则较差。
   
 
 
4、色温的实现
为了方便测试,先将亮度百分比设置为100%,发送 指令 LGT_CMD_LIGHT_RC_SET_RGB,也是对应的索引值,例如说1,那么 R G B对应的占空比即为 ((8/255 )*lum)、((8/252 )*lum)、((8/132 )*lum),
 
因此如果需要微调整灯的颜色,只需修改这个表格即可。
 
 
 
 
 
 前期调试也可以通过命令LGT_CMD_SET_RGB_VALUE 来微调整,将值放入上面表格即可

 

Telink BLE MESH PWM波的小结的更多相关文章

  1. PWM波控制舵机总结

    文章转自:http://www.geek-workshop.com/thread-70-1-1.html 一.关于舵机: 舵机(英文叫Servo):它由直流电机.减速齿轮组.传感器和控制电路组成的一套 ...

  2. stm32cube--通用定时器--产生pwm波

    看了通用定时器的资料,发现内容挺多,挺难看懂,现在还是先掌握使用方法,以后再多看几遍吧. ① ② ③生成mdk工程后,在main.c的while(1)前面加上HAL_TIM_PWM_Start(&am ...

  3. 使用引脚模拟PWM波控制引脚

    /********************************* 代码功能:输出PWM波控制引脚 使用函数: 创作时间:2016*10*07 作者邮箱:jikexianfeng@outlook.c ...

  4. STM32F103定时器输出PWM波控制直流电机

    这个暑假没有回家,在学校准备九月份的电子设计竞赛.今天想给大家分享一下STM32高级定时器输出PWM波驱动直流电机的问题.. 要想用定时器输出的PWM控制直流电机,,首先要理解“通道”的概念..一个定 ...

  5. STM32 PWM波

    利用STM32产生占空比可以调节的PWM波 科普:pwm(Pulse Width Modulation)脉宽调制 关于pwm波的产生:1.首先来看一下代码: pwm波模式的相关配置(利用的是定时器TI ...

  6. STM32高级定时器TIM1产生两路互补的PWM波(带死区)

    测试环境:Keil 5.20.0.0 STM32F103RBT6 固件库版本:STM32F10x_StdPeriph_Lib_V3.5.0(2011) 本文使用TIM1的通道1,通道2,产生两路1kh ...

  7. 定时器同步+触发三ADC采样+输出6路PWM波

    为了熟悉定时器定时器和ADC 用STM32F407DIS做了一个简单的工程: 通过高级定时器TIM1溢出更新时间作为触发输出信号(TRGO),触发TIM8开始计数: 同时TIM1的通道1.2.3以及分 ...

  8. 进阶之路(基础篇) - 005 模拟PWM波控制引脚

    /********************************* 代码功能:输出PWM波控制引脚 使用函数: 创作时间:2016*10*07 作者邮箱:jikexianfeng@outlook.c ...

  9. STM8S003F3通过PWM波实现三基色呼吸灯(转)

    源: STM8S003F3通过PWM波实现三基色呼吸灯

随机推荐

  1. mongodb的聚合操作

    在mongodb中有时候我们需要对数据进行分析操作,比如一些统计操作,这个时候简单的查询操作(find)就搞不定这些需求,因此就需要使用  聚合框架(aggregation) 来完成.在mongodb ...

  2. Noip模拟30 2021.8.4

    T1 毛一琛 考场上打的稳定的$O((2^n)^2)$的暴力.其实再回忆一下上次那道用二进制枚举的题$y$ 就可以知道一样的道理,使用$\textit{Meet In the Middle}$, 按照 ...

  3. 华为HG255D挂卡中继专用旋风科技固件

    正的挂卡不掉线不掉速,稳定上网看上去好像很NB的样子 挂卡设置教程:http://picimg.lshou.com/pic/clou ... /6/t/1/30247515.mp4 固件链接: htt ...

  4. PCB设计中新手和老手都适用的七个基本技巧和策略

    本文将讨论新手和老手都适用的七个基本(而且重要的)技巧和策略.只要在设计过程中对这些技巧多加注意,就能减少设计回炉次数.设计时间和总体诊断难点. 技巧一:注重研究制造方法和代工厂化学处理过程 在这个无 ...

  5. 单片机入门stm32知识学习的先后顺序

    这里大概的罗列了一些学习STM32的内容,以及学习顺序.如果是新手的话,建议边看中文手册和学习视频;如果是已经入门的,个人建议自己做一个项目,不论项目大小,当然里面会涉及到自己已经学习过的,或者是自己 ...

  6. 文件上传漏洞Bypass总结

    文件上传漏洞Bypass总结 前端JS验证文件类型: 上传后缀jpg,抓包改为php后缀 ======================================================= ...

  7. (类)Program1.1

    1 class MyClass: 2 3 i = 12345 4 5 def __init__(self): 6 self.data = "WOOWOWOWO" 7 8 def f ...

  8. hdu 2955 Robberies(背包DP)

    题意: 小偷去抢银行,他母亲很担心. 他母亲希望他被抓的概率真不超过P.小偷打算去抢N个银行,每个银行有两个值Mi.Pi,Mi:抢第i个银行所获得的财产 Pi:抢第i个银行被抓的概率 求最多能抢得多少 ...

  9. Centos 7 端口聚合

    简单粗暴,直接复制命令就好了 还是先啰嗦一下,添加网卡之后,如果没有网卡配置文件,可以通过nmcli con show 先查看网卡的唯一ID,然后复制其他的网卡配置文件,修改device项,name项 ...

  10. python语法与pycharm的基本使用

    内容概要 pycharm基本使用 python注释语法 变量与常量 垃圾回收机制 数据类型 1. pycharm基本使用 pycharm安装完成后首次打开要注意: 文件路径(不要选择C盘) pytho ...