TouchGFX学习笔记(一)

一,显示配置

1.适当增加堆栈大小

这两个参数的设置需要根据具体的应用需求和硬件资源来确定。Heap Size(堆大小)主要影响动态内存分配,如果程序中动态内存分配的需求较大,则需要设置较大的Heap Size。然而,设置过大可能会浪费RAM资源。Stack Size(栈大小)则与程序的调用深度、局部变量的大小以及中断服务程序(ISR)的堆栈需求有关。调用深度越深、局部变量越大、ISR越多,所需的Stack Size就越大。但同样,Stack Size设置过大也会浪费RAM资源‌1。

因此,在实际应用中,需要通过分析程序需求、参考经验值以及实验调试等方法来确定合适的Heap Size和Stack Size,以确保程序的正确性和稳定性,同时避免不必要的资源浪费‌。

2.适当增大缓冲大小

双重缓冲消除了任何撕裂的风险,无论渲染下一帧需要多长时间,因为TfT控制器,例如,总是可以访问最新的完整帧数据。单个缓冲可以消除对外部存储器的需求(可能会发生撕裂)。部分缓冲消除了对外部内存的需求,同时仍然允许将大部分内部内存用于framebuffer之外的事情。

如果"Number of Blocks"设置为1,这意味着TouchGFX将只分配一个内存块用于帧缓冲区。这通常适用于简单的图形界面或显示需求不高的应用场景。在这种情况下,TouchGFX将使用一个单缓冲区方案来更新和显示图形数据。

然而,如果图形界面较为复杂或需要更高的刷新率,可能需要使用双缓冲或多缓冲方案来减少屏幕撕裂和闪烁现象。在这种情况下,"Number of Blocks"参数的值将相应增加,以允许TouchGFX分配更多的内存块用于帧缓冲区。

三,硬件配置

1.开启I2C1用于连接触摸芯片,(PB6,PB7)

2.开启SPI1(Transmit Only Master)用于LCD 串行数据传输,(PB3,PB5),开启DMA

开启SPI中断用于:!!!!!!!

3.开启QSPI 4线模式用于读写W25Q64

STM32CubeMx之QSPI配置详解_stm32cubemx qspi-CSDN博客

4.开启tim6 用于:!!!!!!!!

5.Do Not Generate Function Call

相关推荐
AI你一生一世3 小时前
不止于时序存储:DolphinDB 如何成为 AI 时代的工业智能底座
java·人工智能·struts·时序数据库·工业智能·dolphindb·ai基础设施
云-缩影3 小时前
拆解 AI 图像生成应用的后端架构:ECS、OSS 和大模型 API 怎么配合
java·spring boot·后端
瑞克-桑切斯3 小时前
7、MySQL 慢查询排查与优化实战指南
java·服务器·数据库
前进的李工5 小时前
Agent 学习笔记 05:系统提示词应该怎么写
笔记·学习·prompt·agent·个人开发·few-shot·ai应用开发
正在走向自律7 小时前
【3/5】人工智能训练师 三级/高级工 考证学习方向:从“独立执行”到“设计、归因与全链条负责”
人工智能·学习·人工智能训练师·注方案设计·数据质控负责人·模型评测与调优辅助·ai训练项目交付
蒸蒸yyyyzwd7 小时前
后端学习笔记三个知识
笔记·八股
海的透彻8 小时前
dockerfile如何快速构建容器(java服务)
java·开发语言
code2cat8 小时前
Java工具篇之Gradle:用任务图组织构建与交付
java·开发语言·单元测试·gradle
CCIE-Yasuo8 小时前
网络安全-学习数据库-Mysql-2
数据库·学习·mysql
La Pulga9 小时前
【FreeRTOS源码学习笔记】任务切换
单片机·mcu·学习·嵌入式·freertos·实时操作系统