1
0
Fork 0
mirror of https://github.com/radex/radmatrix.git synced 2024-10-04 03:37:46 +00:00

integration hell

This commit is contained in:
radex 2024-06-20 17:39:46 +02:00
parent 2007ba4e6b
commit c114007ddb
Signed by: radex
SSH key fingerprint: SHA256:hvqRXAGG1h89yqnS+cyFTLKQbzjWD4uXIqw7Y+0ws30
4 changed files with 22 additions and 21 deletions

View file

@ -34,22 +34,22 @@
// #define COMMON_SER 21 // #define COMMON_SER 21
// #define COMMON_RCLK 23 // #define COMMON_RCLK 23
#define COMMON_SRCLR 25 // #define COMMON_SRCLR 25
#define COL_SER 21 #define COL_SER 22 // orig: 21
#define COL_OE 22 #define COL_OE 21 // orig: 22
#define COL_RCLK 23 #define COL_RCLK 23 // orig: 23
#define COL_SRCLK 24 #define COL_SRCLK 24 // orig: 24
// #define COL_SRCLR 25 #define COL_SRCLR 25 // orig: 25
#define ROW_SER 14 #define ROW_SER 14
#define ROW_OE 19 #define ROW_OE 19
#define ROW_RCLK 20 #define ROW_RCLK 20
#define ROW_SRCLK 18 #define ROW_SRCLK 18
// #define ROW_SRCLR 15 #define ROW_SRCLR 15
#define COL_SER_INVERTED true #define COL_SER_INVERTED false
#define COL_OE_INVERTED true #define COL_OE_INVERTED false
#define COL_RCLK_INVERTED true #define COL_RCLK_INVERTED true
#define COL_SRCLK_INVERTED true #define COL_SRCLK_INVERTED true
#define COL_SRCLR_INVERTED false #define COL_SRCLR_INVERTED false

View file

@ -3,12 +3,12 @@
.define public irq_rclk_sync 2 .define public irq_rclk_sync 2
.define public irq_did_latch 3 .define public irq_did_latch 3
.define public rclk_1_delay 6 .define public rclk_1_delay 3
.program leds_px_pusher .program leds_px_pusher
.side_set 1 opt .side_set 1 opt
.define public srclk_0_delay 3 .define public srclk_0_delay 2
.define public srclk_1_delay 5 .define public srclk_1_delay 3
entry_point: entry_point:
.wrap_target .wrap_target
; get 32 bits from fifo (not required with autopull, useful for debug) ; get 32 bits from fifo (not required with autopull, useful for debug)

View file

@ -12,7 +12,7 @@
#define irq_px_pushed 1 #define irq_px_pushed 1
#define irq_rclk_sync 2 #define irq_rclk_sync 2
#define irq_did_latch 3 #define irq_did_latch 3
#define rclk_1_delay 6 #define rclk_1_delay 3
// -------------- // // -------------- //
// leds_px_pusher // // leds_px_pusher //
@ -21,20 +21,20 @@
#define leds_px_pusher_wrap_target 0 #define leds_px_pusher_wrap_target 0
#define leds_px_pusher_wrap 9 #define leds_px_pusher_wrap 9
#define leds_px_pusher_srclk_0_delay 3 #define leds_px_pusher_srclk_0_delay 2
#define leds_px_pusher_srclk_1_delay 5 #define leds_px_pusher_srclk_1_delay 3
static const uint16_t leds_px_pusher_program_instructions[] = { static const uint16_t leds_px_pusher_program_instructions[] = {
// .wrap_target // .wrap_target
0xf037, // 0: set x, 23 side 0 0xf037, // 0: set x, 23 side 0
0x7301, // 1: out pins, 1 side 0 [3] 0x7201, // 1: out pins, 1 side 0 [2]
0x1d41, // 2: jmp x--, 1 side 1 [5] 0x1b41, // 2: jmp x--, 1 side 1 [3]
0x7028, // 3: out x, 8 side 0 0x7028, // 3: out x, 8 side 0
0x0020, // 4: jmp !x, 0 0x0020, // 4: jmp !x, 0
0xc001, // 5: irq nowait 1 0xc001, // 5: irq nowait 1
0x2040, // 6: wait 0 irq, 0 0x2040, // 6: wait 0 irq, 0
0x20c2, // 7: wait 1 irq, 2 0x20c2, // 7: wait 1 irq, 2
0xe601, // 8: set pins, 1 [6] 0xe301, // 8: set pins, 1 [3]
0xe000, // 9: set pins, 0 0xe000, // 9: set pins, 0
// .wrap // .wrap
}; };
@ -73,7 +73,7 @@ static const uint16_t leds_row_selector_program_instructions[] = {
0xb003, // 4: mov pins, null side 0 0xb003, // 4: mov pins, null side 0
0x0043, // 5: jmp x--, 3 0x0043, // 5: jmp x--, 3
0xc022, // 6: irq wait 2 0xc022, // 6: irq wait 2
0xe601, // 7: set pins, 1 [6] 0xe301, // 7: set pins, 1 [3]
0xe000, // 8: set pins, 0 0xe000, // 8: set pins, 0
0xc003, // 9: irq nowait 3 0xc003, // 9: irq nowait 3
// .wrap // .wrap

View file

@ -18,13 +18,14 @@ void setup() {
Serial.begin(115200); Serial.begin(115200);
Serial.println("Hello worldd!"); Serial.println("Hello worldd!");
init_audio();
leds_initRenderer();
if (CPU_CLOCK_HZ != rp2040.f_cpu()) { if (CPU_CLOCK_HZ != rp2040.f_cpu()) {
Serial.println("CPU clock speed is not set correctly!"); Serial.println("CPU clock speed is not set correctly!");
while (true) {} while (true) {}
} }
init_audio();
leds_initRenderer();
#if CAN_ENABLED #if CAN_ENABLED
canbus_setup(); canbus_setup();
#endif #endif