关于理解dvpLCD1.24与2.4寸屏幕程序的问题

!1596467783270-ce22f321-b158-4afe-9f9f-7d072a5e0989-image.png
!


1.14寸的屏幕从原理图中看是用IIC串行来接收数据。2.4寸的屏幕则是用的并行D0到D7来接收数据,看前面的帖子,有解释sysctl_set_spi0_dvp_data(1);设置为1代表将DVP的所有数据引脚默认绑定芯片的DVP专用数据引脚DVP-D0~D7, SPI0的数据线同理绑定到芯片的SPI-D0~D7,在2.4寸并行接收数据的模式下可以理解,但在1.14寸串行接收情况下,也有sysctl_set_spi0_dvp_data(1);这一指令,不明白源程序哪里体现了串行通信时设置引脚SPI0_D0为SDA,LCD_WR为SCL,并进行数据传送的?谢谢谢谢,玫瑰,玫瑰*(–)*

@简单男孩 1.14是 240135分辨率, 2.4寸是320240
手中能找到的8080mcu接口就是320480,以及272480的。但还没测试完。

@mangogeek 握手握手

想问下1.24寸的屏和2.4寸的屏,分辨率都是320x240吗?有没有试着用别的分辨率的屏?

帮楼主上传了文档 : 1596596794946-小白看程序-歪朵拉1.14寸单摄屏幕驱动.pdf (393 KB)

感谢您的指导,在nt35310.c中找到了spi硬件初始化函数,spi_init(SPI_CHANNEL, SPI_WORK_MODE_0, SPI_FF_OCTAL, 32, 0);其中SPI_FF_STANDARD 标准(即为单线模式),对应1.14寸屏幕。SPI_FF_OCTAL为8线模型,对应8080接口的2.4寸屏幕,谢谢

1.14是SPI接口,2.4寸是8080接口。
两个LCD都可以用一个SPI驱动,只不过片选不同。
另外注意下物理位宽,1.14是1条数据线,而2.4寸是8条数据线。
所以对于初始化来说,区别就是片选,以及SPI初始化时的硬件数据宽度,sysctl_set_spi0_dvp_data(1)始终是需要的。