D1上ST7701S RGB显示绿屏问题
-
有没有哪位大神遇到过这个问题?
-
检查一下初始化initcode对不对,然后硬件RGB连接对不对
-
@yuzukitsuru 接线没问题。
参考官方文档截屏,导出的图像是正常的echo 0 > /sys/class/disp/disp/attr/disp echo /data/filename.bmp > /sys/class/disp/disp/attr/capture_dump
使用colorbar,显示不正常
echo 0 > /sys/class/disp/disp/attr/disp echo 8 > /sys/class/disp/disp/attr/colorbar
重新对LCD初始化就正常了。
mount -t debugfs none /sys/kernel/debug; cd /sys/kernel/debug/dispdbg; echo suspend > command; echo disp0 > name; echo 1 > start echo resume > command; echo disp0 > name; echo 1 > start
-
@alvinlbl 检查uboot的屏幕初始化参数
-
@yuzukitsuru uboot和内核的st7701s驱动是一样的。dts也是一样的
-
brandy-2.0/u-boot-2018/configs/sun20iw1p1_defconfig 注释掉
#CONFIG_DISP2_SUNXI=y
,使用kernel初始化屏幕测试 -
@yteraa 关掉uboot的初始化,显示正常。但不清楚uboot哪里有问题
-
老铁,请问这个问题解决了么?
-
@ming899 uboot的屏幕 LCD_WRITE_COMMAND 初始化里加一个delay
//three line 9bit mode static void LCD_WRITE_DATA(u32 value) { u32 i; TL032FWV01_spi_cs_0; TL032FWV01_spi_sdi_1; TL032FWV01_spi_scl_0; sunxi_lcd_delay_us(10); TL032FWV01_spi_scl_1; for (i = 0; i < 8; i++) { sunxi_lcd_delay_us(10); if (value & 0x80) TL032FWV01_spi_sdi_1; else TL032FWV01_spi_sdi_0; value <<= 1; TL032FWV01_spi_scl_0; sunxi_lcd_delay_us(10); TL032FWV01_spi_scl_1; } sunxi_lcd_delay_us(10); TL032FWV01_spi_cs_1; } static void LCD_WRITE_COMMAND(u32 value) { u32 i; sunxi_lcd_delay_ms(10); // 延时一下 TL032FWV01_spi_cs_0; TL032FWV01_spi_sdi_0; TL032FWV01_spi_scl_0; sunxi_lcd_delay_us(10); TL032FWV01_spi_scl_1; for (i = 0; i < 8; i++) { sunxi_lcd_delay_us(10); if (value & 0x80) TL032FWV01_spi_sdi_1; else TL032FWV01_spi_sdi_0; TL032FWV01_spi_scl_0; sunxi_lcd_delay_us(10); TL032FWV01_spi_scl_1; value <<= 1; } sunxi_lcd_delay_us(10); TL032FWV01_spi_cs_1; }
Copyright © 2023 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号