2021-01-16 15:18:39 +00:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "hardware/pio.h"
|
|
|
|
|
|
|
|
namespace pimoroni {
|
|
|
|
|
|
|
|
class PicoUnicorn {
|
2021-01-19 18:46:53 +00:00
|
|
|
public:
|
|
|
|
static const int WIDTH = 16;
|
|
|
|
static const int HEIGHT = 7;
|
|
|
|
static const uint8_t A = 12;
|
|
|
|
static const uint8_t B = 13;
|
|
|
|
static const uint8_t X = 14;
|
|
|
|
static const uint8_t Y = 15;
|
|
|
|
private:
|
2021-01-16 15:18:39 +00:00
|
|
|
PIO bitstream_pio = pio0;
|
2021-01-19 07:09:58 +00:00
|
|
|
uint bitstream_sm = 0;
|
2021-08-26 20:58:37 +00:00
|
|
|
uint sm_offset = 0;
|
2021-01-16 15:18:39 +00:00
|
|
|
public:
|
2021-01-23 16:46:15 +00:00
|
|
|
~PicoUnicorn();
|
|
|
|
|
2021-01-16 15:18:39 +00:00
|
|
|
void init();
|
2021-01-18 08:59:13 +00:00
|
|
|
|
|
|
|
void clear();
|
2021-01-16 15:18:39 +00:00
|
|
|
void set_pixel(uint8_t x, uint8_t y, uint8_t r, uint8_t g, uint8_t b);
|
2021-01-18 08:59:13 +00:00
|
|
|
void set_pixel(uint8_t x, uint8_t y, uint8_t v);
|
|
|
|
|
|
|
|
bool is_pressed(uint8_t button);
|
2021-01-16 15:18:39 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
}
|