首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Arduino Mini控制的adafruit TLC5947

使用Arduino Mini控制的adafruit TLC5947
EN

Stack Overflow用户
提问于 2014-09-20 21:34:45
回答 2查看 1.3K关注 0票数 1

我们目前正在做一个小项目,但我们遇到了一些问题。我们需要一个0-10V的PWM信号来控制一些LED。由于我们需要单独控制大约30个LED,我们决定使用两个由Arduino MINI控制的Adafruit 24-ch 12位LED驱动器。

我们将下一段代码上传到Arduino上,但adafruit板上没有电压输出。我们怀疑问题出在编程上,我们在网上搜索了解决方案,但没有找到任何解决方案。有人能帮帮我们吗?

代码语言:javascript
复制
#include "Adafruit_TLC5947.h"

#define NUM_TLC5974 1

#define data   4
#define clock   5
#define latch   6
#define oe  -1  // set to -1 to not use the enable pin (its optional)

Adafruit_TLC5947 tlc = Adafruit_TLC5947(NUM_TLC5974, clock, data, latch);

void setup() {

  Serial.begin(9600);

  pinMode(4, OUTPUT);
  pinMode(5, OUTPUT);
  pinMode(6, OUTPUT);

  tlc.begin();

  tlc.setPWM(0, 2000);
  tlc.write();

  tlc.setPWM(1, 4096);
  tlc.write();

  tlc.setPWM(2, 1000);
  tlc.write();


}

void loop() {
}
EN

回答 2

Stack Overflow用户

发布于 2019-06-18 16:51:04

如果你想在TLC5947的任何通道上获得电压,你必须在每个通道上添加一个上拉电阻。TLC5947的输出是集电极开路的,这就是为什么我们将阴极连接到通道,将阳极连接到源。

票数 1
EN

Stack Overflow用户

发布于 2014-09-22 13:56:07

你是否在IRef引脚和地上安装了值为~ 1k或2k的电阻?

  • 将东西放入空循环()中。原因-您不能将TLC内部的移位寄存器保持为浮点状态。

由于您是在setup()中执行操作,因此它将只在uC引脚上写入一次。如果您看到tlc.write()的代码,则锁存器引脚翻转,移位寄存器再次变为空。当代码到达void loop()时,它基本上什么也不做,并且在setup()中定义的状态已经通过tlc.write()语句消失了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25949351

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档