修改 Arduino 代码以读取串行以控制移位寄存器

Posted

技术标签:

【中文标题】修改 Arduino 代码以读取串行以控制移位寄存器【英文标题】:Modifying Arduino code to read serial to control shift register 【发布时间】:2011-10-02 15:25:43 【问题描述】:

我需要通过midi2serial converter 发送MIDI 信号。

我正在使用THIS 移位寄存器,以控制 32 个单独的 LED。

如何修改移位寄存器代码以接受 MIDI 串行信号来点亮矩阵中的特定 LED?

我希望修改http://arduino.cc/en/Tutorial/ShftOut12中的代码以满足我的需要。

我很困惑 a) 进入 MIDI 到串行转换器的 MIDI 信号如何从另一端出来。 (也就是说,每个 MIDI 消息是变成一个数组,还是什么?)

每个 MIDI 信号将类似于 (144, 60, 124) 和 b) 移位寄存器草图如何响应 MIDI 信号?

我需要类似的东西:

if ( First bit = 144) 
    if (second bit = 60) 
        ...light LED #1...
    
    if (second bit = 61) 
        ...light LED 2...
    

    etc., etc.

【问题讨论】:

我确定,我已经回答了您的类似问题。这个问题哪去了? 【参考方案1】:

可以尝试让 arduino 将原始串行数据从 midi2serial 发送到计算机,这样您就可以检查它的外观(请注意,如果您使用 arduino 串行监视器,它将被转换为 ASCII)。然后在 arduino 中使用 Serial.Read 命令将串口读入一个数组,然后在数组中搜索 144,然后使用移位寄存器代码点亮(下一个字节值 - 60)。

【讨论】:

以上是关于修改 Arduino 代码以读取串行以控制移位寄存器的主要内容,如果未能解决你的问题,请参考以下文章

Arduino 可以从控制台读取字节,但不能从 java

CCD移位寄存器 的工作原理是啥啊

数字电路实验 06 - | 移位寄存器及其应用

Note-01.arduino和74hc595的使用

寄存器

在线仿真Arduino UNO+74HC595流水灯 + 按键控制