From c114007ddb2f10fdbfc670361c5db006176ed613 Mon Sep 17 00:00:00 2001 From: radex Date: Thu, 20 Jun 2024 17:39:46 +0200 Subject: [PATCH] integration hell --- firmware/src/config.h | 18 +++++++++--------- firmware/src/leds.pio | 6 +++--- firmware/src/leds.pio.h | 14 +++++++------- firmware/src/main.cpp | 5 +++-- 4 files changed, 22 insertions(+), 21 deletions(-) diff --git a/firmware/src/config.h b/firmware/src/config.h index f29a9bf..337fed4 100644 --- a/firmware/src/config.h +++ b/firmware/src/config.h @@ -34,22 +34,22 @@ // #define COMMON_SER 21 // #define COMMON_RCLK 23 -#define COMMON_SRCLR 25 +// #define COMMON_SRCLR 25 -#define COL_SER 21 -#define COL_OE 22 -#define COL_RCLK 23 -#define COL_SRCLK 24 -// #define COL_SRCLR 25 +#define COL_SER 22 // orig: 21 +#define COL_OE 21 // orig: 22 +#define COL_RCLK 23 // orig: 23 +#define COL_SRCLK 24 // orig: 24 +#define COL_SRCLR 25 // orig: 25 #define ROW_SER 14 #define ROW_OE 19 #define ROW_RCLK 20 #define ROW_SRCLK 18 -// #define ROW_SRCLR 15 +#define ROW_SRCLR 15 -#define COL_SER_INVERTED true -#define COL_OE_INVERTED true +#define COL_SER_INVERTED false +#define COL_OE_INVERTED false #define COL_RCLK_INVERTED true #define COL_SRCLK_INVERTED true #define COL_SRCLR_INVERTED false diff --git a/firmware/src/leds.pio b/firmware/src/leds.pio index 4d95b18..3b7df67 100644 --- a/firmware/src/leds.pio +++ b/firmware/src/leds.pio @@ -3,12 +3,12 @@ .define public irq_rclk_sync 2 .define public irq_did_latch 3 -.define public rclk_1_delay 6 +.define public rclk_1_delay 3 .program leds_px_pusher .side_set 1 opt -.define public srclk_0_delay 3 -.define public srclk_1_delay 5 +.define public srclk_0_delay 2 +.define public srclk_1_delay 3 entry_point: .wrap_target ; get 32 bits from fifo (not required with autopull, useful for debug) diff --git a/firmware/src/leds.pio.h b/firmware/src/leds.pio.h index 8ca9089..b52901c 100644 --- a/firmware/src/leds.pio.h +++ b/firmware/src/leds.pio.h @@ -12,7 +12,7 @@ #define irq_px_pushed 1 #define irq_rclk_sync 2 #define irq_did_latch 3 -#define rclk_1_delay 6 +#define rclk_1_delay 3 // -------------- // // leds_px_pusher // @@ -21,20 +21,20 @@ #define leds_px_pusher_wrap_target 0 #define leds_px_pusher_wrap 9 -#define leds_px_pusher_srclk_0_delay 3 -#define leds_px_pusher_srclk_1_delay 5 +#define leds_px_pusher_srclk_0_delay 2 +#define leds_px_pusher_srclk_1_delay 3 static const uint16_t leds_px_pusher_program_instructions[] = { // .wrap_target 0xf037, // 0: set x, 23 side 0 - 0x7301, // 1: out pins, 1 side 0 [3] - 0x1d41, // 2: jmp x--, 1 side 1 [5] + 0x7201, // 1: out pins, 1 side 0 [2] + 0x1b41, // 2: jmp x--, 1 side 1 [3] 0x7028, // 3: out x, 8 side 0 0x0020, // 4: jmp !x, 0 0xc001, // 5: irq nowait 1 0x2040, // 6: wait 0 irq, 0 0x20c2, // 7: wait 1 irq, 2 - 0xe601, // 8: set pins, 1 [6] + 0xe301, // 8: set pins, 1 [3] 0xe000, // 9: set pins, 0 // .wrap }; @@ -73,7 +73,7 @@ static const uint16_t leds_row_selector_program_instructions[] = { 0xb003, // 4: mov pins, null side 0 0x0043, // 5: jmp x--, 3 0xc022, // 6: irq wait 2 - 0xe601, // 7: set pins, 1 [6] + 0xe301, // 7: set pins, 1 [3] 0xe000, // 8: set pins, 0 0xc003, // 9: irq nowait 3 // .wrap diff --git a/firmware/src/main.cpp b/firmware/src/main.cpp index 8fa152b..2d161b2 100644 --- a/firmware/src/main.cpp +++ b/firmware/src/main.cpp @@ -18,13 +18,14 @@ void setup() { Serial.begin(115200); Serial.println("Hello worldd!"); - init_audio(); - leds_initRenderer(); if (CPU_CLOCK_HZ != rp2040.f_cpu()) { Serial.println("CPU clock speed is not set correctly!"); while (true) {} } + init_audio(); + leds_initRenderer(); + #if CAN_ENABLED canbus_setup(); #endif