# 自定义屏幕驱动 基于我司开发板重新画的板子,并使用我司屏幕,可参考如下示例进行添加支持 ## RGB屏幕 ### 编译 ```SHELL ./load.sh # 选择目前自己参考的开发板,参考示例对应ZX4D30NE01S_UR_4827 cd examples/demo_cus_rgb cp ../../sdkconfig . idf.py build idf.py flash ``` ### 说明 驱动实现在:demo_rgb_driver/main/driver.c,只需要实现qmsd_board_cus_init,然后在main里面掉用qmsd_set_board_init_cus(qmsd_board_cus_init); ``` shell extern void qmsd_board_cus_init(qmsd_screen_rotation_t dir); void app_main(void) { printf("version: %s\n", QMSD_VERSION); qmsd_storage_init(); qmsd_main_msgque_init(16); esp_event_loop_create_default(); qmsd_mod_init(); qmsd_set_init_cb(qmsd_ui_init_cb); qmsd_set_board_init_cus(qmsd_board_cus_init); qmsd_gui_init(0,DIR_INPUT); qmsd_control_init(); } ``` ### 开发 1. UI在8ms平台开发完之后 2. 从平台下载相关代码 3. 替换demo_cus_rgb/components/qmsd_ui 4. 编译烧录 ## MCU屏幕 ### 编译 ```SHELL ./load.sh # 选择目前自己参考的开发板,参考示例对应CONFIG_WT_86_32_3ZW1 cd examples/demo_cus_driver cp ../../sdkconfig . idf.py build idf.py flash ``` ### 说明 驱动实现在:demo_rgb_driver/main/driver.c,只需要实现qmsd_board_cus_init,然后在main里面掉用qmsd_set_board_init_cus(qmsd_board_cus_init); ``` shell extern void qmsd_board_cus_init(qmsd_screen_rotation_t dir); void app_main(void) { printf("version: %s\n", QMSD_VERSION); qmsd_storage_init(); qmsd_main_msgque_init(16); esp_event_loop_create_default(); qmsd_mod_init(); qmsd_set_init_cb(qmsd_ui_init_cb); qmsd_set_board_init_cus(qmsd_board_cus_init); qmsd_gui_init(0,DIR_INPUT); qmsd_control_init(); } ``` ### 开发 1. UI在8ms平台开发完之后 2. 从平台下载相关代码 3. 替换demo_cus_rgb/components/qmsd_ui 4. 编译烧录