0

144 個の単一 LED 用の ISSI による IS31FL3732A LED ドライバーがあります。このダイバーは、オーディオ入力信号によって LED の明るさを変調できます。LED の 1 つのグループを静的にし、2 番目のグループをアニメーション化し、3 番目のグループをオーディオ IN で明るさを調整したいと考えています。最初の 2 つのグループの動作を行い、3 番目のグループに固執しました。オーディオ変調はすべての LED にしか適用できないようです。

私の考えは可能ですか?これはどのように実装できますか?

Raspberry pi pico + CircuitPython を使用して、i2c 接続でドライバーを制御します。IS31FL3732 データシート

ドライバーの初期化:

    write(0xFD, 0x0B)  # write function register
    write(0x0A, 0x00)  # enter software shutdown mode
    write(0x04, 0xff)  # global current=255
    for page in range(0, 8):
        write(0xFD, page)  # write frame
        for i in range(0, 0x12):
            write(i, 0xff)  # turn on all LED//Need to turn off the position where LED is not mounted
        for i in range(0x24, 0xB4):
            write(i, 0xff)  # write all PWM set 0x00//init all the PWM data to 0
    write(0xFD, 0x0B)  # write function register
    write(0x00, 0b00011000)  # audio frame play mode
    write(0x02, 0x00)  # endless frame play
    write(0x03, 0x18)  # frame delay 24 * 11 ms
    write(0x05, 0x00)  # display options: no blinking
    write(0x09, 0b00000000)  # breathing OFF
    write(0x06, 0x01)  # audio sync on
    write(0x01, 0x00)  # select first frame
    write(0x0A, 0x01)  # normal operation

次に、各フレームの LED の明るさを設定するだけです

for frame in range(0, 8):
    write(0xFD, frame)  # write frame
    for i in range(0, 0x12):
        write(i, 0xff)  # turn on all LED
    for i in range(0x24, 0x54):
        write(i, 0xff)  # write PWM
    for i in range(0x54, 0x56 + frame * 2):
        write(i, 0xff)  # write PWM
    for i in range(0x56 + frame * 2, 0x64):
        write(i, 0x00)  # write PWM
    for i in range(0x64, 0x66 + frame * 2):
        write(i, 0xff)  # write PWM
    for i in range(0x66 + frame * 2, 0x74):
        write(i, 0x00)  # write PWM
    for i in range(0x74, 0x76 + frame * 2):
        write(i, 0xff)  # write PWM
    for i in range(0x76 + frame * 2, 0x84):
        write(i, 0x00)  # write PWM
    for i in range(0x84, 0xb4):
        write(i, 0xff)  # write PWM

最後のグループの LED (0x84 から 0xb3 までの PWM レジスタ) のみをオーディオ IN で変調する方法について、アイデアをいただければ幸いです。

これが不可能な場合は、Raspberry pi pico ADC を使用してこのアニメーションを手動で作成しようとしていますが、最初に簡単な方法を確認したいと思います :)

4

0 に答える 0