33#include <pico/stdlib.h>
34#include <hardware/i2c.h>
47 SET_DISP_START_LINE = 0x40,
50 SET_COM_OUT_DIR = 0xC0,
51 SET_DISP_OFFSET = 0xD3,
52 SET_COM_PIN_CFG = 0xDA,
53 SET_DISP_CLK_DIV = 0xD5,
55 SET_VCOM_DESEL = 0xDB,
56 SET_CHARGE_PUMP = 0x8D
void ssd1306_bmp_show_image_with_offset(ssd1306_t *p, const uint8_t *data, const long size, uint32_t x_offset, uint32_t y_offset)
draw monochrome bitmap with offset
void ssd1306_poweron(ssd1306_t *p)
turn on display
void ssd1306_invert(ssd1306_t *p, uint8_t inv)
set invert display
void ssd1306_draw_char_with_font(ssd1306_t *p, uint32_t x, uint32_t y, uint32_t scale, const uint8_t *font, char c)
draw char with given font
void ssd1306_draw_empty_square(ssd1306_t *p, uint32_t x, uint32_t y, uint32_t width, uint32_t height)
draw empty square at given position with given size
void ssd1306_draw_string(ssd1306_t *p, uint32_t x, uint32_t y, uint32_t scale, const char *s)
draw string with builtin font
bool ssd1306_init(ssd1306_t *p, uint16_t width, uint16_t height, uint8_t address, i2c_inst_t *i2c_instance)
initialize display
void ssd1306_draw_line(ssd1306_t *p, int32_t x1, int32_t y1, int32_t x2, int32_t y2)
draw line on buffer
void ssd1306_draw_char(ssd1306_t *p, uint32_t x, uint32_t y, uint32_t scale, char c)
draw char with builtin font
void ssd1306_draw_square(ssd1306_t *p, uint32_t x, uint32_t y, uint32_t width, uint32_t height)
draw filled square at given position with given size
void ssd1306_draw_pixel(ssd1306_t *p, uint32_t x, uint32_t y)
draw pixel on buffer
void ssd1306_clear(ssd1306_t *p)
clear display buffer
void ssd1306_bmp_show_image(ssd1306_t *p, const uint8_t *data, const long size)
draw monochrome bitmap
void ssd1306_deinit(ssd1306_t *p)
deinitialize display
void ssd1306_contrast(ssd1306_t *p, uint8_t val)
set contrast of display
void ssd1306_poweroff(ssd1306_t *p)
turn off display
void ssd1306_clear_square(ssd1306_t *p, uint32_t x, uint32_t y, uint32_t width, uint32_t height)
clear square at given position with given size
void ssd1306_clear_pixel(ssd1306_t *p, uint32_t x, uint32_t y)
clear pixel on buffer
ssd1306_command_t
defines commands used in ssd1306
void ssd1306_draw_string_with_font(ssd1306_t *p, uint32_t x, uint32_t y, uint32_t scale, const uint8_t *font, const char *s)
draw string with given font
void ssd1306_show(ssd1306_t *p)
display buffer, should be called on change