|
Digole Display Driver
Display driver for Digole Serial OLED/LCD displays
|
00001 00051 #ifndef __DIGOLE_DISPLAY_H 00052 #define __DIGOLE_DISPLAY_H 00053 00054 /* Need to implement writen() in io.c and print_com() in digole.c */ 00055 00063 /* Change for your Display */ 00064 #define DISP_W (160) 00065 #define DISP_H (128) 00067 /* IO delay routines - will need to be provided by your platform */ 00068 00077 void us_delay(unsigned int usecs); 00078 00087 void ms_delay(unsigned int usecs); 00092 #define delay ms_delay 00093 00094 #define INTERNAL_DELAY (800) 00095 00097 #define USE_DIGOLE_SERIAL_SPI 00098 00103 #define print(x) print_com(com_fd, (x)) 00104 #define preprint() print("TT") 00105 00110 #define dd_set_rot90() print("SD1") 00111 00116 #define dd_set_rot180() print("SD2") 00117 00122 #define dd_set_rot_270() print("SD3") 00123 00127 #define dd_undo_rot() print("SD0") 00128 00129 00138 void dd_println(unsigned char* v) ; 00139 00145 void dd_disable_cursor(void) ; 00151 void dd_enable_cursor(void) ; 00152 00165 void dd_draw_str(unsigned char x, unsigned char y, unsigned char *s) ; 00166 00179 void dd_set_printpos(unsigned char x, unsigned char y, unsigned char graph); 00180 00186 void dd_clear_screen(void) ; 00187 00197 void dd_set_lcd_colrow(unsigned char col, unsigned char row) ; 00198 00208 void dd_display_config(unsigned char v) ; 00218 void dd_display_startscreen(unsigned char m) ; 00219 00245 void dd_set_mode(unsigned char m); 00246 00252 void dd_set_text_pos_back(void); 00263 void dd_set_text_pos_offset(unsigned char xoffset, unsigned char yoffset); 00264 00273 void dd_set_text_pos_abs(unsigned char x, unsigned char y); 00274 00291 void dd_set_line_pattern(unsigned char pattern); 00292 00301 void dd_digital_output(unsigned char x); 00302 00322 void draw_bitmap(unsigned char x, unsigned char y,unsigned char w, unsigned char h, unsigned char* bitmap) ; 00323 00338 void dd_set_rot(unsigned char d) ; 00339 00348 void dd_set_contrast(unsigned char c) ; 00349 00363 void dd_draw_box(unsigned char x, unsigned char y, unsigned char w, unsigned char h) ; 00375 void dd_draw_circle(int8_t x, unsigned char y, unsigned char r, unsigned char f); 00376 00388 void dd_draw_frame(unsigned char x, unsigned char y, unsigned char w, unsigned char h) ; 00389 00400 void dd_setpixel(unsigned char x, unsigned char y, unsigned char color) ; 00401 00414 void dd_drawline(unsigned char x, unsigned char y, unsigned char x1, unsigned char y1) ; 00415 00427 void dd_lineto(unsigned char x, unsigned char y); 00428 00440 void dd_hline(unsigned char x, unsigned char y, unsigned char w); 00441 00453 void dd_vline(unsigned char x, unsigned char y, unsigned char h); 00459 void dd_next_text_line(void) ; 00469 void dd_setfont(unsigned char font) ; 00481 void dd_setcolor(unsigned char color) ; 00493 void dd_setbgcolor(unsigned char color) ; 00494 00498 void dd_backlight_on(void) ; 00502 void dd_backlight_off(void); 00506 void dd_set_screen_on(void) ; 00510 void dd_set_screen_off(void) ; 00511 00518 void dd_direct_command(unsigned char d) ; 00519 00520 00527 void dd_direct_data(unsigned char d) ; 00541 void dd_move_area(unsigned char x0, unsigned char y0, unsigned char w, unsigned char h, unsigned char xoffset, unsigned char yoffset); 00550 void dd_upload_start_screen(int lon, unsigned char *data) ; 00560 void dd_upload_user_font(int lon, unsigned char *data, unsigned char sect) ; 00561 00579 void dd_draw_bitmap256(unsigned char x, unsigned char y, unsigned char w, unsigned char h, unsigned char *bitmap) ; 00580 00598 void dd_draw_bitmap262K(unsigned char x, unsigned char y, unsigned char w, unsigned char h, unsigned char *bitmap) ; 00608 void dd_set_truecolor(unsigned char r, unsigned char g, unsigned char b) ; 00614 void dd_reset_draw_win(void); 00620 void dd_clean_win(void); 00633 void dd_define_win(unsigned char x, unsigned char y, unsigned char h, unsigned char w); 00634 00635 00636 00637 #endif /* !__DIGOLE_DISPLAY_H */ 00638
1.7.6.1