[原创] R7F0C80212套件试用之小项目--ADC控制PWM调光

yang_alex   2014-9-14 19:33 楼主
项目方案:
该项目采用控制模块+可PWM调光的脉冲恒流源模块+LED灯条,
1.JPG
项目MCU资源需求:
1、1个GPIO,该GPIO连接一个按钮,按钮每按下一次,LED灯条开关状态翻转一次。
2、1个ADC采样通道,连接一个旋转电位器,通过读取,电位器的可变端的相对位置(百分比)作为LED灯条PWM调光的占空比输入。
3、1个PWM通道,需要两个定时器资源,一个定时器设置PWM的周期,一个定时器设置PWM的占空比。
4、后续可增加SPI接口的RF遥控模块,需要CSI和2个GPIO。这样,R7F0C80212的资源就可得到充分利用。

项目优势:
一、LED灯具具有亮度高、功耗小、体积小、寿命长等优点
二、PWM调光的优点      
1.LED灯光不会产生任何色谱偏移。因为PWM调光时,LED电流始终在满幅度或0两者之中选择,要不就是开,要不就是关。
2.可以有极高的调光精确度。因为脉冲波形完全可以控制到很高的精度,所以很容易实现万分之一的精度。
3.可以和数字控制技术相结合来进行控制。因为任何数字都可以很容易变换成为一个PWM信号。因此,很容易升级成智能灯具。
4. 即使在很大范围内调光,也不会发生闪烁现象。因为调光PWM频率为1KHz以上,远高于25Hz,人眼不能识别闪烁,也不会像模拟调光,改变恒流源的工作条件(升压比或降压比),更不可能发生恒流源过热等问题。

       采用脉宽调制(PWM)来调光的原理:LED发光二极管是一个半导体器件,它可以实现快速开关。它的开关速度可以高达微秒以上。是任何发光器件所无法比拟的。因此,只要把电源改成脉冲恒流源,用改变脉冲宽度的方法,就可以改变其亮度。这种方法称为脉宽调制(PWM)调光法。在本项目中,脉冲恒流源模块采用采用了PT4115芯片,它是一款连续电感电流导通模式的降压恒流源,用于驱动一颗或多颗串联LED。PT4115芯片有一DIM 引脚,通过DIM 引脚可以接受模拟调光和很宽范围的PWM 调光。当DIM 的电压低于0.3V 时,PT4115芯片内的功率开关关断,LED断电,PT4115模块进入极低工耗的待机状态。
PT4115电流源模块:
2.jpg
PT4115电流源模块功能图:

ra.JPG




      PT4115模块可以模拟调光和PWM调光,之所以采用PWM调光,是因为PWM调光时LED始终工作在满幅度电流和0之间,不会产生任何色谱偏移,LED的亮度是通过PWM的占空比来调制PT4115电流源模块输出的脉冲式恒流源的占空比来实现的。在这里,我把PWM频率(即调光频率)设置在在1KHz 以上,这样可以避免人的眼睛可以看到LED 的闪烁。

      在这个应用中,R7F0C80212先读取板上电位器上的电压,在这里不需要转换成具体的电压值,读取值从0~0x03FF(10位采样),作为PWM的比较值来调节PWM的占空比。这里的PWM用R7F0C80212的定时器阵列单元实现。

  后续项目样机准备用旋钮电位器取代R7F0C80212评估板上电位器,再装入自制外壳。有空再通过CSI增加SPI接口的RF遥控模块(通过ZIGBEE模块),进一步可接入智能家居系统。
不知如何上载视频文件,就上个压缩文件吧,感兴趣的网友可以下载来看看。(请下载后去掉.rar)
VIDEO0009.mp4.rar (10.3 MB)
(下载次数: 184, 2014-9-14 19:29 上传)




  最后上代码。(请下载后去掉.pdf)
main.c.pdf (12.13 KB)
(下载次数: 98, 2014-9-14 19:32 上传)



回复评论 (19)

有空又对功能进行了更新。增加开关灯键。通过中断0实现,利用了评估板上的按键。有空再重新录像上传。 后续的工作是增加RF遥控。感觉有些难度啊! 代码如下:
main.rar (2.49 KB)
(下载次数: 14, 2014-9-20 14:18 上传)
回复一下就有芯币下载附件了。 本帖最后由 yang_alex 于 2014-9-20 06:21 编辑
点赞  2014-9-20 14:17
引用: yang_alex 发表于 2014-9-20 14:17
有空又对功能进行了更新。增加开关灯键。通过中断0实现,利用了评估板上的按键。有空再重新录像上传。
后 ...

期待啊
下载视频看着不爽哈,给你嵌入进去了

顺便科普一下EEworld视频嵌入方法——
将视频传到优酷上,点击论坛的视频按钮 QQ图片20141022104406.jpg ,输入视频的链接,点确定就好了
点赞  2014-10-22 10:52
谢谢!学习了!
点赞  2014-10-22 11:08

5楼 nmg 

引用: yang_alex 发表于 2014-10-22 11:08
谢谢!学习了!

楼主RF那块做出来就来论坛秀秀哈
点赞  2014-11-5 14:14
哥们, 跟我的差不多啊, 不过我不是用电位器做ADC输入, 而是光敏电阻, 哈哈, 可以根据环境光照强度自动调光的功能。
点赞  2014-11-9 13:15
光敏电阻离光源的远近会变化太多,此外台灯本身也是光源,会产生影响,所以光敏电阻不合适台灯。
点赞  2014-11-10 10:22
遥控这部分最初是准备用红外,但后来分析不合适-定时器被占用,无法解码。后来准备用NRF24L01,结果发现SPI引脚被占用。目前准备用蓝牙模块。
点赞  2014-11-10 10:25
学习一哈
点赞  2014-11-10 15:57
不错,强大
点赞  2014-11-14 11:01
看上去很不错啊,学习中。
点赞  2015-1-21 18:07
看看!
点赞  2015-1-22 21:05
谢谢~
点赞  2015-1-22 21:05
学习
点赞  2015-7-4 12:10
等更新。。。
点赞  2015-7-8 21:41
楼主厉害。。。。。。
点赞  2015-7-28 19:23

学习!赞

点赞  2020-7-17 13:39

下载下来先学习下

点赞  2020-9-1 10:38

谢谢分享,期待后面的更新。

点赞  2020-9-1 14:20

很久远的帖子了,来的太晚了 

点赞  2020-9-5 14:30
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复