67#if (__GNUC__ * 100 + __GNUC_MINOR__) < 303
68# error "This library requires AVR-GCC 3.3 or later, update to newer AVR-GCC compiler !"
72#include <avr/pgmspace.h>
82#define FONT ssd1306oled_font
86#define OLED_I2C_ADR (0x3c)
96# define OLED_PORT PORTB
110#define OLED_DISP_OFF 0xAE
111#define OLED_DISP_ON 0xAF
116#define DISPLAY_WIDTH 128
117#define DISPLAY_HEIGHT 64
120void oled_command(uint8_t cmd[], uint8_t size);
121void oled_data(uint8_t data[], uint16_t size);
122void oled_init(uint8_t dispAttr);
124void oled_invert(uint8_t invert);
125void oled_sleep(uint8_t sleep);
126void oled_set_contrast(uint8_t contrast);
127void oled_puts(
const char* s);
129void oled_puts_p(
const char* progmem_s);
132void oled_clrscr(
void);
133void oled_gotoxy(uint8_t x, uint8_t y);
135void oled_goto_xpix_y(uint8_t x, uint8_t y);
137void oled_putc(
char c);
139void oled_charMode(uint8_t mode);
140void oled_flip(uint8_t flipping);
145#if defined GRAPHICMODE
146 uint8_t oled_drawPixel(uint8_t x, uint8_t y, uint8_t color);
147 uint8_t oled_drawLine(uint8_t x1, uint8_t y1, uint8_t x2, uint8_t y2, uint8_t color);
148 uint8_t oled_drawRect(uint8_t px1, uint8_t py1, uint8_t px2, uint8_t py2, uint8_t color);
149 uint8_t oled_fillRect(uint8_t px1, uint8_t py1, uint8_t px2, uint8_t py2, uint8_t color);
150 uint8_t oled_drawCircle(uint8_t center_x, uint8_t center_y, uint8_t radius, uint8_t color);
151 uint8_t oled_fillCircle(uint8_t center_x, uint8_t center_y, uint8_t radius, uint8_t color);
152 uint8_t oled_drawBitmap(uint8_t x, uint8_t y,
const uint8_t picture[], uint8_t width, uint8_t height, uint8_t color);
153 void oled_display(
void);
154 void oled_clear_buffer(
void);
155 uint8_t oled_check_buffer(uint8_t x, uint8_t y);
156 void oled_display_block(uint8_t x, uint8_t line, uint8_t width);