chenwenf75 发表于 2024-8-6 10:28

AT32F437尝试用qspi驱动普通spi接口液晶屏失败

at32f437用36MHz的spi驱动320*480的液晶跑lvgl,帧率也就不到30。想着用可以到90m的QSPI驱动提高帧率(我试了spi提升到70M工作好像显示也没问题,但毕竟超规格使用不放心),先来讲讲QSPI兼容方式的好处:1,规格书上的上限速率高,2,硬件cs实用并好用 3,检测完成就一个标记,不像spi又是发送完成罗又是不忙罗标记一大堆。 现在讲下坑点:1,命令帧必不可少,还好地址帧可有可无。 2,数据帧不支持16bit传输,像素点我不可能高低位交换了在DMA传吧,这个致命问题导致我直接放弃了此方案。 有用过GD的QSPI的伙伴没,它的兼容spi模式是否好用?

药无尘 发表于 2024-8-6 11:29

不支持16位吗。我记得是可以的啊

muyichuan2012 发表于 2024-8-6 11:33

换做用at32f437 XMC外设8080 16bit并口驱动LCD呢?唯一缺点就是占用脚位更多。

chenwenf75 发表于 2024-8-6 11:51

突然又燃起了希望:lv_display_set_color_format(disp, LV_COLOR_FORMAT_NATIVE_REVERSED),继续移植,看看行不行

chenwenf75 发表于 2024-8-6 11:55

药无尘 发表于 2024-8-6 11:29
不支持16位吗。我记得是可以的啊

麻烦你再看看,如行请告知我咋设置哦。我试了都是按字节传输的

084425 发表于 2024-8-6 17:46

支持8/16/32位传输的,库函数里有定义对应函数,可以参考

chenqianqian 发表于 2024-8-7 07:53

就只能当普通SPI来使用

chenqianqian 发表于 2024-8-7 07:53

本帖最后由 chenqianqian 于 2024-8-7 07:54 编辑

能跑到30帧也不错了,又不是做什么实时图像显示。

chenwenf75 发表于 2024-8-7 16:51

084425 发表于 2024-8-6 17:46
支持8/16/32位传输的,库函数里有定义对应函数,可以参考

你说的是qspi_byte_write/qspi_half_word_write这两函数吧,早试过没用的! 比如你要发0x1234, tft液晶spi 16bit模式放送先后应该是:0x12,0x34;但at的qspi不管怎么都是按0x34,0x12先后发的,就是按内存中的字节顺序发送的。
页: [1]
查看完整版本: AT32F437尝试用qspi驱动普通spi接口液晶屏失败