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

相关推荐
左灯右行的爱情12 分钟前
ImportCandidates 类详细解析
java·spring boot
摇滚侠28 分钟前
Spring Boot 3零基础教程,WEB 开发 默认的自动配置,笔记25
前端·spring boot·笔记
老K的Java兵器库30 分钟前
Metaspace OOM 排查实录:一次 Spring 热部署爆掉 256 M 元空间
java·jvm·spring
报错小能手36 分钟前
linux学习笔记(35)C语言连接mysql
linux·笔记·学习
啦啦91171439 分钟前
提供一些准备Java八股文面试的建议
java·开发语言·面试
jjjxxxhhh1231 小时前
【学习】USB摄像头 -> FFmpeg -> H264 -> AI模型
人工智能·学习·ffmpeg
考虑考虑1 小时前
JDK25中的StableValue
java·后端·java ee
杯莫停丶1 小时前
设计模式之:简单工厂模式
java·设计模式·简单工厂模式
Lucky_Turtle1 小时前
【Java Xml】dom4j写入XML
xml·java·python
superlls1 小时前
(定时任务)接上篇:定时任务的分布式执行与分布式锁使用场景
java·分布式·后端