TTK4155 Ping-pong project
oled_driver.h
Go to the documentation of this file.
1 
4 #ifndef OLED_DRIVER_H_
5 #define OLED_DRIVER_H_
6 
7 void write_c(uint8_t val);
8 void write_d(uint8_t data);
9 
10 uint8_t oled_init(void);
11 
12 int oled_print_char_small_buffer(char chr, int line, int col_start);
13 int oled_print_char_medium_buffer(char chr, int line, int col_start);
14 int oled_print_char_large_buffer(char chr, int line, int col_start);
15 
16 int oled_update_buffer(void);
17 void oled_page_select(int page);
18 void oled_col_start_end(int start, int end);
19 void oled_clear_line(int line);
20 void oled_reset_screen(void);
21 void oled_fill_screen(void);
22 /*void oled_print_arrow(uint8_t line);*/
23 
24 // int oled_print_small(char chr,FILE* file);
25 // int oled_print_medium(char chr, FILE* file);
26 // int oled_print_large(char chr,FILE* file);
27 // int oled_home(void);
28 
29 void set_cursor(int line, int col);
30 int oled_print_small_b(char ch, FILE* file);
31 int oled_print_medium_b(char ch, FILE* file);
32 int oled_print_large_b(char ch, FILE* file);
33 
34 //Circle drawing functions
35 // bool oled_draw_circle_buffer(int line, int col_start,int radius);
36 // void oled_draw_picture();
37 // void oled_draw_face();
38 // int oled_draw_man(void);
39 
40 void oled_adjust_brightness(uint8_t level);
41 int oled_set_last_brightness(void);
42 
43 static FILE oled_stdout_4 = FDEV_SETUP_STREAM(oled_print_small_b,NULL,_FDEV_SETUP_WRITE);
44 static FILE oled_stdout_5 = FDEV_SETUP_STREAM(oled_print_medium_b,NULL,_FDEV_SETUP_WRITE);
45 static FILE oled_stdout_8 = FDEV_SETUP_STREAM(oled_print_large_b,NULL,_FDEV_SETUP_WRITE);
46 
47 #define FONT4 (&oled_stdout_4)
48 #define FONT5 (&oled_stdout_5)
49 #define FONT8 (&oled_stdout_8)
50 #define EEPROM_BRIGHTNESS_ADR 0x70
51 
52 uint8_t LINE_POS;
53 uint8_t COL_POS;
54 
55 #endif /* OLED_DRIVER_H_ */
int oled_print_char_small_buffer(char chr, int line, int col_start)
Definition: oled_driver.c:111
uint8_t COL_POS
Definition: oled_driver.h:53
void oled_reset_screen(void)
Definition: oled_driver.c:212
void oled_fill_screen(void)
Definition: oled_driver.c:217
int oled_print_medium_b(char ch, FILE *file)
Print medium letters to SRAM buffer.
Definition: oled_driver.c:98
void write_d(uint8_t data)
Write to data register function.
Definition: oled_driver.c:36
int oled_set_last_brightness(void)
Definition: oled_driver.c:295
int oled_print_char_medium_buffer(char chr, int line, int col_start)
Definition: oled_driver.c:125
void oled_col_start_end(int start, int end)
Definition: oled_driver.c:189
void write_c(uint8_t val)
Write to controll register function.
Definition: oled_driver.c:28
int oled_print_char_large_buffer(char chr, int line, int col_start)
Definition: oled_driver.c:139
int oled_print_small_b(char ch, FILE *file)
Print small letters to SRAM buffer.
Definition: oled_driver.c:89
void oled_adjust_brightness(uint8_t level)
Definition: oled_driver.c:290
void set_cursor(int line, int col)
Set cursor on oled screen. To be used with dual-buffer setup.
Definition: oled_driver.c:75
uint8_t oled_init(void)
Initialize Oled.
Definition: oled_driver.c:43
void oled_clear_line(int line)
Definition: oled_driver.c:202
int oled_print_large_b(char ch, FILE *file)
Print large letters to SRAM buffer.
Definition: oled_driver.c:107
void oled_page_select(int page)
Definition: oled_driver.c:186
uint8_t LINE_POS
Definition: oled_driver.h:52
int oled_update_buffer(void)
Definition: oled_driver.c:152