单片机教程网

电脑版
提示:原网页已由神马搜索转码, 内容由www.51hei.com提供.
查看:4783|回复:5

PWM控制流水灯代码

[复制链接]
ID:395819发表于 2018-10-21 18:08|显示全部楼层
制作出来的实物图如下:
1540116111745.jpeg


LED灯接PWM输出功能的IO口3,5,6,9,10,11.
调速电位器中间抽头接A0口,用于控制流水灯的流动速度。

代码如下:
  1. int i, j, vol;
  2. unsigned char pin[] = {3, 5, 6, 9, 10, 11};
  3. unsigned int light[] = {0, 60, 120, 200, 255, 160, 50};
  4. void setup() {}
  5. void loop() {
  6.   vol = analogRead(0);
  7.   for (i = 0; i< 6; i++) {
  8.    analogWrite(pin[i], light[j]);
  9.    j++; if (j > 6) j = 0;
  10.    delay(vol / 5);
  11.   }
  12. }
复制代码


评分

黑币 +50
收起理由
+ 50
共享资料的黑币奖励!

查看全部评分

ID:395819发表于 2018-10-23 23:54|显示全部楼层
我是新人,发的这程序是完全本人原创。
代码很短,却是完全实现LED渐亮渐灭的流水循环。
可惜没人回复,是什么原因呢?
ID:328014发表于 2018-10-24 00:14|显示全部楼层
确实代码很短,这里是analogRead函数的介绍:https://www.arduino.cc/reference ... log-io/analogwrite/
ID:343850发表于 2018-11-22 00:22来自手机|显示全部楼层
好东西,必须支持
ID:712979发表于 2020-3-21 17:57|显示全部楼层
我按照你的代码,没有结果。 而且你的代码只有六个灯,为什么接线接了12个灯?
ID:35955发表于 2020-3-23 15:21|显示全部楼层
看了一下,这个连线是有些乱,应该是连6个灯就可以了,其实要实现流水灯,直接用数字控制就行了,由于视觉暂留现象和余辉效应,没必要用PWM作出渐亮渐灭的效果,快了现象是一样的,高低电平直接控制亮灭不香么

手机版|小黑屋|51黑电子论坛|51黑电子论坛6群QQ管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网