1 2 /* 3 * Copyright (c) 2006-2021, RT-Thread Development Team 4 * 5 * SPDX-License-Identifier: Apache-2.0 6 * 7 * Change Logs: 8 * Date Author Notes 9 * 2020-11-09 bigmagic first version 10 */ 11 #ifndef __LCD_CONSOLE_H__ 12 #define __LCD_CONSOLE_H__ 13 14 #include <rtthread.h> 15 16 #define RGB(r, g, b) ((((r))<<16) | (((g))<<8) | ((b))) 17 #define COLOR_BLACK RGB(0, 0, 0) 18 #define COLOR_GREEN RGB(0, 255, 0) 19 #define COLOR_CYAN RGB(0, 255, 255) 20 #define COLOR_RED RGB(255, 0, 0) 21 #define COLOR_YELLOW RGB(255, 255, 0) 22 #define COLOR_WHITE RGB(255, 255, 255) 23 24 #define CONSOLE_WHITE_32 COLOR_WHITE 25 #define CONSOLE_BLACK_32 COLOR_BLACK 26 #define CONSOLE_GREEN_32 COLOR_GREEN 27 #define CONSOLE_CYAN_32 COLOR_CYAN 28 #define CONSOLE_RED_32 COLOR_RED 29 30 31 #define RGB16(r, g, b) ((((r))<<11) | (((g))<<5) | ((b))) 32 #define CONSOLE_YELLOW_16 RGB16(0x1f,0x3f,0) 33 #define CONSOLE_WHITE_16 RGB16(0x1f,0x3f,0x1f) 34 #define CONSOLE_BLACK_16 RGB16(0,0,0) 35 #define CONSOLE_GREEN_16 RGB16(0,0x3f,0) 36 #define CONSOLE_CYAN_16 RGB16(0,0x3f,0x1f) 37 #define CONSOLE_RED_16 RGB16(0x1f,0,0) 38 39 typedef struct 40 { 41 rt_uint32_t width; 42 rt_uint32_t height; 43 rt_uint32_t vwidth; 44 rt_uint32_t vheight; 45 rt_uint32_t pitch; 46 rt_uint32_t depth; 47 rt_uint32_t fore; 48 rt_uint32_t back; 49 rt_uint32_t x; 50 rt_uint32_t y; 51 rt_uint32_t vaddr; 52 rt_uint32_t paddr; 53 rt_uint32_t size; 54 } fb_t; 55 56 void fb_print(char *s); 57 int lcd_console_init(void); 58 59 #endif//CONSOLE 60