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

相关推荐
二十七剑7 分钟前
jvm中各个参数的理解
java·jvm
东阳马生架构1 小时前
JUC并发—9.并发安全集合四
java·juc并发·并发安全的集合
计算机小白一个2 小时前
蓝桥杯 Java B 组之岛屿数量、二叉树路径和(区分DFS与回溯)
java·数据结构·算法·蓝桥杯
快下雨了L2 小时前
C++面试笔记(持续更新...)
笔记
菠菠萝宝2 小时前
【Java八股文】10-数据结构与算法面试篇
java·开发语言·面试·红黑树·跳表·排序·lru
不会Hello World的小苗2 小时前
Java——链表(LinkedList)
java·开发语言·链表
陈无左耳、2 小时前
HarmonyOS学习第3天: 环境搭建开启鸿蒙开发新世界
学习·华为·harmonyos
Allen Bright3 小时前
【Java基础-46.3】Java泛型通配符详解:解锁类型安全的灵活编程
java·开发语言
柃歌3 小时前
【UCB CS 61B SP24】Lecture 7 - Lists 4: Arrays and Lists学习笔记
java·数据结构·笔记·学习·算法
JANGHIGH3 小时前
c++ std::list使用笔记
c++·笔记·list