• 资料介绍
    • 1、引言
    • 2、问题
    • 3、小结
  • 资料预览
  • 相关推荐
申请入驻 产业图谱

LAT1435 使用 GPDMA 进行 SPI LCD 整屏传输

03/06 15:59
1328
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

LAT1435 使用 GPDMA 进行 SPI LCD 整屏传输

481.18 KB

1、引言

客户需要评估 STM32U5+SPI LCD 整屏刷新时的显示效果。一般 SPI LCD 都内置了GRAM,在使用 TouchGFX 时都会选用部分帧缓冲以节省内存。客户需要整屏刷新,并尽量节省内存,则需要使用单帧缓冲的方式。

2、问题

本文使用 STM32U575 NUCLEO 板与 X-NUCLEO-GFX01M1 板上的 SPI LCD 进行了测试。此 LCD 分辨率为 320x240,16bpp 色深,整屏传输时数据量为 153600 字节。而U5 的 GPDMA 一次数据传输要小于 64K,因此 LCD 整屏传输需要由多次 DMA 传输完成。利用 U5 的 GPDMA 链表模式,可将帧缓冲的数据组织到一个链表中,由 DMA 一次性传输完成即可实现 LCD 的整屏刷新。

在实际调试中却发现,在准备好 GPDMA 链表后,调用 HAL_SPI_Transmit_DMA 函数启动链表传输后,屏幕显示不完整,也没有 DMA 传输完成回调

3、小结

在使用 STM32U5 的 GPDMA 链表模式进行 SPI 通信时,需要将 SPI 的 TSIZE 配置为0,才能使链表的多个节点配置逐个执行,完成所有数据的发送。

资料预览

点赞
收藏
评论
分享
加入交流群
举报

相关推荐

方案定制

去合作
方案开发定制化,2000+方案商即时响应!