首页 文章

Arduino到期LED控制LED仍然亮着

提问于
浏览
0

我正在使用Arduino Due和4x MAX7219 IC来控制LEDs的16x16矩阵 . 它工作得很好,但是只有一个LED保持打开(在第0行第15行),即使我清除显示器,甚至手动将其关闭 .

我使用LED控制库found on the Arduino playground .

如何关闭那个?

3 回答

  • 0

    快速查看后,MAX7219由SPI bus控制 . 我很难解释如何在总线上正确通信芯片会给你这个问题 . 如果整个季度小组不起作用那么就会有所不同 .

    我敢打赌这是一个布线问题(我讨厌说,因为它没有帮助) .

    LedControl(int dataPin, int clkPin, int csPin, int numDevices);
    LedControl(int ?, int ?, int ?, int 4);
    

    只需检查numDevices应为4 .

    我要做的第一件事就是更换MAX7219芯片 . 如果你有任何备份,我会将它们交换为无效的备份 . 如果没有备份,请使用损坏的备份切换工作备份 .

    我的两个问题是:

    • Arduino“认为”LED是否开启?

    • MAX7219是否认为LED已打开

    要回答第一个问题,我将编辑LedControl类的.h文件 . 我会将数组调用状态[64]公开,以便您可以在客户端代码中查看它 .

    byte status[64];
    

    将第52行移到67以下 . 现在您可以在主代码中访问状态数组 . 它应该看起来像:

    LedControl lc=LedControl(12,11,10,1);
    for(int i; i <8 ; i++)
        Serial.println(lc.status[8*3+i])
    

    回答第二个问题会更加困难 .

  • 0

    原因可能是Arduino Due只接受3.3v而MAX7219需要5v这样可能是你遇到的问题需要google 5v逻辑到3.3v逻辑

  • 2

    Ow忘记发布答案了 . 显然当你连接led错误时它仍然存在,所以这就是问题:D

    因此,如果您的LED仍处于打开状态,请检查它是否正确连接xD

相关问题