欢迎光临
我们一直在努力

LabVIEW + Arduino之流水式呼吸灯

沛华LabVIEW基础课程|第6讲

『LabVIEW+Arduino』

流水式呼吸灯

咳咳,上期讲了欢快的(点击蓝字回顾),这期我们来看一下“缓慢又有点悲伤“(不接受反驳)的流水式呼吸灯效果怎么实现。

一般要改变一盏LED的亮度,我们首先会想到去改变施加在LED两端的电压,由于Arduino Uno没有真实的AO(模拟输出), 所以我们这里要通过PWM(脉冲宽度调制,具体原理直接百度啦)来达到“AO”的输出效果,进而调节LED的亮度。

Arduino Uno支持直接PWM输出的引脚有[3, 5, 6, 9, 10, 11]。Shania想玩一下流水式呼吸灯,所以接了6个LED,采用的是共阴极接法。

Duty cycle(占空比)的值需要在0-1范围内,我们程序初始化部分得到以下PWM曲线(0-1),进入While循环后,通过For循环的索引,将曲线的值一个个写入到对应的PWM通道中,从而实现流水“呼吸”灯的效果:

要是觉得呼吸灯的效果做出来不够平滑自然,还可以用正弦波函数来玩。

正弦波的曲线看起来就“优雅”很多了,做出来的呼吸效果也会更加自然。

最后优化一下程序,大功告成!

以上就是今天的内容,我是Shania,下期见!觉得还不错的话,给我点个赞吧~

微信又双叒叕改版

为了不失联&获取最新最好玩的信息

2.按右上方的【●●●】符号;

比你想象的更好玩!

写于:18.12.20

都看完了,不点个赞赞再走?

赞(6)
分享到: 更多

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址