messing around with color values

This commit is contained in:
DefenderOfHyrule 2024-07-08 10:34:35 +02:00
parent 11191fbad3
commit 2a6119ed28
3 changed files with 8 additions and 17 deletions

2
main.c
View file

@ -34,7 +34,7 @@ void rewrite_payload()
{ {
put_pixel(PIX_whi); put_pixel(PIX_whi);
write_payload(); write_payload();
put_pixel(PIX_gre); put_pixel(PIX_red);
// used to automatically rewrite payload when eMMC/console changes // used to automatically rewrite payload when eMMC/console changes
init_config(cid_buf + 1); init_config(cid_buf + 1);
} }

10
misc.c
View file

@ -1,4 +1,3 @@
#include "misc.h"
#include "pico/stdlib.h" #include "pico/stdlib.h"
#include "hardware/pio.h" #include "hardware/pio.h"
#include "pins.h" #include "pins.h"
@ -6,6 +5,7 @@
#include "hardware/vreg.h" #include "hardware/vreg.h"
#include "ws2812.pio.h" #include "ws2812.pio.h"
#include "board_detect.h" #include "board_detect.h"
#include "misc.h"
#include "board_detect.h" #include "board_detect.h"
extern int ws_pio_offset; extern int ws_pio_offset;
@ -116,12 +116,7 @@ void put_pixel(uint32_t pixel_grb)
gpio_put(pwr_pin(), 1); gpio_put(pwr_pin(), 1);
sleep_us(200); sleep_us(200);
} }
pio_sm_put_blocking(pio0, 3, pixel_grb << 8u);
uint8_t green = (pixel_grb >> 8) & 0xFF;
uint8_t red = (pixel_grb >> 16) & 0xFF;
uint8_t blue = pixel_grb & 0xFF;
pio_sm_put_blocking(pio0, 3, (green << 16) | (red << 8) | blue);
sleep_us(50); sleep_us(50);
pio_sm_set_enabled(pio0, 3, false); pio_sm_set_enabled(pio0, 3, false);
gpio_init(led_pin()); gpio_init(led_pin());
@ -152,4 +147,3 @@ void reset_cpu() {
gpio_disable_pulls(PIN_RST); gpio_disable_pulls(PIN_RST);
gpio_disable_input_output(PIN_RST); gpio_disable_input_output(PIN_RST);
} }

13
misc.h
View file

@ -1,20 +1,17 @@
#ifndef MISC_H_
#define MISC_H_
#define PIX_gre 0x00FF00 #define PIX_gre 0x00FF00
#define PIX_red 0xFF0000 #define PIX_red 0xFF0000
#define PIX_whi 0x111111 #define PIX_whi 0x111111
#define PIX_g 0x008000 #define PIX_g 0x008000
#include <stdint.h>
void put_pixel(uint32_t pixel_grb); void put_pixel(uint32_t pixel_grb);
void halt_with_error(uint32_t err, uint32_t bits); void halt_with_error(uint32_t err, uint32_t bits);
void gpio_disable_input_output(int pin); void gpio_disable_input_output(int pin);
void gpio_enable_input_output(int pin); void gpio_enable_input_output(int pin);
void finish_pins_except_leds(); void finish_pins_except_leds();
void reset_cpu(); void reset_cpu();
#endif /* MISC_H_ */