#ifndef HW_LIB_SIM_OLED_H #define HW_LIB_SIM_OLED_H #ifdef __cplusplus extern "C" { #endif #include "stdint.h" #define BLACK 0 #define BLUE 0xAA0000 #define GREEN 0x00AA00 #define CYAN 0xAAAA00 #define RED 0x0000AA #define MAGENTA 0xAA00AA #define BROWN 0x0055AA #define LIGHTGRAY 0xAAAAAA #define DARKGRAY 0x555555 #define LIGHTBLUE 0xFF5555 #define LIGHTGREEN 0x55FF55 #define LIGHTCYAN 0xFFFF55 #define LIGHTRED 0x5555FF #define LIGHTMAGENTA 0xFF55FF #define YELLOW 0x55FFFF #define WHITE 0xFFFFFF /** * @brief 初始化模拟 OLED 显示 * @param width: [输入] 显示宽度 * @param height: [输入] 显示高度 * @param pixcolor: [输入] 像素颜色 * @param backcolor: [输入] 背景颜色 * @param scale: [输入] 显示缩放比例 * @param border: [输入] 是否显示边框 * @return void * @example SIM_OLED_INIT(128, 64, 0xFFFF00, 0x000000, 10, 1); **/ void SIM_OLED_INIT(int width, int height, uint32_t pixcolor, uint32_t backcolor, int scale, uint8_t border); /** * @brief 开始模拟 OLED 显示 * @return void * @example SIM_OLED_START(); **/ void SIM_OLED_START(); /** * @brief 停止模拟 OLED 显示 * @return void * @example SIM_OLED_STOP(); **/ void SIM_OLED_STOP(); /** * @brief 从缓冲区绘制到模拟 OLED 显示 * @param buf: [输入] 缓冲区指针 * @param width: [输入] 图像宽度 * @param height: [输入] 图像高度 * @return void * @example SIM_OLED_DrawFromBuffer(buffer, 128, 64); **/ void SIM_OLED_DrawFromBuffer(uint8_t *buf, uint8_t width, uint8_t height); #ifdef __cplusplus } #endif #endif //HW_LIB_SIM_OLED_H