完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
用的是ESP32-S3-DevKitC-1开发板
代码如下 #include #include #include "unity.h" #include "test_utils.h" #include "esp_rgb_lcd_panel.h" #include "esp_lcd_panel_ops.h" #include "soc/soc_caps.h" #define TEST_LCD_H_RES (480) #define TEST_LCD_V_RES (272) #define TEST_LCD_VSYNC_GPIO (42) #define TEST_LCD_HSYNC_GPIO (4) #define TEST_LCD_DE_GPIO (2) #define TEST_LCD_PCLK_GPIO (5) #define TEST_LCD_DATA0_GPIO (37) // B0 #define TEST_LCD_DATA1_GPIO (16) // B1 #define TEST_LCD_DATA2_GPIO (38) // B2 #define TEST_LCD_DATA3_GPIO (15) // B3 #define TEST_LCD_DATA4_GPIO (39) // B4 #define TEST_LCD_DATA5_GPIO (45) // G0 #define TEST_LCD_DATA6_GPIO (3) // G1 #define TEST_LCD_DATA7_GPIO (0) // G2 #define TEST_LCD_DATA8_GPIO (8) // G3 #define TEST_LCD_DATA9_GPIO (35) // G4 #define TEST_LCD_DATA10_GPIO (18) // G5 #define TEST_LCD_DATA11_GPIO (20) // R0 #define TEST_LCD_DATA12_GPIO (14) // R1 #define TEST_LCD_DATA13_GPIO (21) // R2 #define TEST_LCD_DATA14_GPIO (13) // R3 #define TEST_LCD_DATA15_GPIO (47) // R4 #define TEST_LCD_DISP_EN_GPIO (41) void app_main() { #define TEST_IMG_SIZE (100 * 100 * sizeof(uint16_t)) uint8_t *img = malloc(TEST_IMG_SIZE); TEST_ASSERT_NOT_NULL(img); esp_lcd_panel_handle_t panel_handle = NULL; esp_lcd_rgb_panel_config_t panel_config = { .data_width = 16, .disp_gpio_num = TEST_LCD_DISP_EN_GPIO, .pclk_gpio_num = TEST_LCD_PCLK_GPIO, .vsync_gpio_num = TEST_LCD_VSYNC_GPIO, .hsync_gpio_num = TEST_LCD_HSYNC_GPIO, .de_gpio_num = TEST_LCD_DE_GPIO, .data_gpio_nums = { TEST_LCD_DATA0_GPIO, TEST_LCD_DATA1_GPIO, TEST_LCD_DATA2_GPIO, TEST_LCD_DATA3_GPIO, TEST_LCD_DATA4_GPIO, TEST_LCD_DATA5_GPIO, TEST_LCD_DATA6_GPIO, TEST_LCD_DATA7_GPIO, TEST_LCD_DATA8_GPIO, TEST_LCD_DATA9_GPIO, TEST_LCD_DATA10_GPIO, TEST_LCD_DATA11_GPIO, TEST_LCD_DATA12_GPIO, TEST_LCD_DATA13_GPIO, TEST_LCD_DATA14_GPIO, TEST_LCD_DATA15_GPIO, }, .timings = { .pclk_hz = 25000000, .h_res = TEST_LCD_H_RES, .v_res = TEST_LCD_V_RES, .hsync_back_porch = 43, .hsync_front_porch = 4, .hsync_pulse_width = 3, .vsync_back_porch = 12, .vsync_front_porch = 4, .vsync_pulse_width = 2, .flags.de_idle_high = 0, .flags.pclk_idle_low = 1, }, .flags.fb_in_psram = 1, .flags.disp_active_low = 0, }; // Test stream mode and one-off mode for (int i = 0; i < 2; i++) { panel_config.flags.relax_on_idle = i; TEST_ESP_OK(esp_lcd_new_rgb_panel(&panel_config, &panel_handle)); TEST_ESP_OK(esp_lcd_panel_reset(panel_handle)); TEST_ESP_OK(esp_lcd_panel_init(panel_handle)); for (int i = 0; i < 200; i++) { uint8_t color_byte = esp_random() & 0xff; int x_start = esp_random() % (TEST_LCD_H_RES - 100); int y_start = esp_random() % (TEST_LCD_V_RES - 100); memset(img, color_byte, TEST_IMG_SIZE); esp_lcd_panel_draw_bitmap(panel_handle, x_start, y_start, x_start + 100, y_start + 100, img); } TEST_ESP_OK(esp_lcd_panel_del(panel_handle)); } free(img); #undef TEST_IMG_SIZE } 然后是显示器驱动IC的调试文档 用的是IDF4.4,目前显示屏没有任何显示,查了两天没有查出原因,特来请教 |
|
相关推荐
1个回答
|
|
在使用ESP32-S3-DevKitC-1开发板进行RGB接口测试时,如果点屏没有任何效果,可能有以下几个原因:
1. 检查硬件连接:首先,请确保您的开发板与LCD屏幕之间的硬件连接正确。检查数据线、电源线和控制线是否连接正确,以及是否有任何损坏或松动的连接。 2. 检查电源:确保LCD屏幕的电源已经打开,并且电源电压和电流符合屏幕的要求。 3. 检查代码:检查您的代码是否正确配置了LCD屏幕的参数。例如,您需要确保已经正确设置了屏幕的分辨率、时序、颜色深度等参数。在您的代码中,您已经定义了分辨率,但可能还需要检查其他参数。 4. 检查驱动库:确保您使用的ESP-IDF版本支持ESP32-S3,并包含了适用于您的LCD屏幕的驱动库。您可以在ESP-IDF的组件管理器中查找和安装所需的驱动库。 5. 检查初始化代码:确保您的代码中包含了正确的初始化代码,以便在启动时正确配置和初始化LCD屏幕。这可能包括设置GPIO引脚、初始化SPI或I2C通信等。 6. 检查测试程序:检查您的测试程序是否正确地发送了显示数据到LCD屏幕。例如,您可能需要使用`esp_lcd_panel_draw_bitmap()`函数来绘制图像或使用其他函数来设置像素值。 7. 检查屏幕类型:确保您的LCD屏幕是RGB接口的,并且与您的开发板兼容。有些屏幕可能需要特定的驱动芯片或不同的接口方式。 8. 检查ESP32-S3的引脚分配:ESP32-S3的某些引脚可能有特殊的功能,例如用于WiFi或蓝牙的引脚。确保您没有将这些引脚用于LCD屏幕的连接。 9. 检查开发板固件:确保您的开发板固件是最新的,并且与您的ESP-IDF版本兼容。 10. 检查调试信息:在您的代码中添加调试信息,以便在出现问题时更容易找到问题所在。 |
|
|
|
只有小组成员才能发言,加入小组>>
545浏览 6评论
457浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
437浏览 5评论
441浏览 4评论
411浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 00:25 , Processed in 1.029305 second(s), Total 83, Slave 65 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号