硬汉嵌入式论坛

 找回密码
 立即注册
查看: 822|回复: 10
收起左侧

[TouchGFX] STM32G030+spi屏幕+外部8Mb Flash跑TouchGFX的可行性

[复制链接]

2

主题

13

回帖

19

积分

新手上路

积分
19
发表于 2023-4-10 15:19:46 | 显示全部楼层 |阅读模式
最近了解了各种图形界面,硬件资源是这样的,STM32G030+spi屏幕(240*240 RGB565)+外部8Mb Flash,再加一些按键指示灯温湿度光照度传感器和继电器

刚好G030有两个SPI接口,可以一个用来驱动屏幕(已测试实现spi+dma的方式),另一个SPI用阿里读取外部flash(25q64),外部flash用模拟的方式试过,用硬件spi的方式还没试过。打算是一些图片,字库存放在外部flash里面。

看了下网上TouchGFX跑的一个071的例程,有几个不懂。
1,STM32G030是 64K Flash +8K SRAM,这个资源够不够跑起来?
2,看有些资料这种方案对屏幕驱动也有要求?
3,将图像字库素材放到外部flash,好像是要用什么算法去做,这个看了一些资料目前也是没看懂的。



回复

使用道具 举报

39

主题

928

回帖

1050

积分

至尊会员

积分
1050
发表于 2023-4-10 15:47:15 | 显示全部楼层
240*240 RGB565,不是得112.5KB的RAM吗?
回复

使用道具 举报

2

主题

13

回帖

19

积分

新手上路

积分
19
 楼主| 发表于 2023-4-10 16:07:09 | 显示全部楼层
ghslfgkkl88 发表于 2023-4-10 15:47
240*240 RGB565,不是得112.5KB的RAM吗?

这里我不是很懂他的方式,像屏幕显示,每次都要一整个屏幕来刷一遍吗?或者说整个屏幕都要缓存在ram里面?
回复

使用道具 举报

334

主题

2032

回帖

3039

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3039
发表于 2023-4-10 16:35:41 | 显示全部楼层
本帖最后由 caicaptain2 于 2023-4-10 16:37 编辑
蜗牛snail 发表于 2023-4-10 16:07
这里我不是很懂他的方式,像屏幕显示,每次都要一整个屏幕来刷一遍吗?或者说整个屏幕都要缓存在ram里面 ...

一般这种小屏幕,接口是SPI的或者80并口的,都是自带控制器IC,而且控制器IC内部自带RAM缓存至少一页的数据。
我们使用mcu控制屏幕的时候,只需要更改必要位置的颜色数据就可以了。 其他部分会自己保持不变的。

如果屏幕是RGB888模式的话,就需要mcu自己配置足够的RAM了,至少足够存储一个页面的全部点阵数据,就是下面的意思。
240*240 RGB565,不是得112.5KB的RAM吗?

回复

使用道具 举报

39

主题

928

回帖

1050

积分

至尊会员

积分
1050
发表于 2023-4-10 16:44:13 | 显示全部楼层
蜗牛snail 发表于 2023-4-10 16:07
这里我不是很懂他的方式,像屏幕显示,每次都要一整个屏幕来刷一遍吗?或者说整个屏幕都要缓存在ram里面 ...

对,整个屏幕的数据都在RAM里面,你画图什么的都在RAM里面进行,完成后把整个RAM数据通过SPI一次性送出去,而不是每画一部分就送一部分。

如果是RGB接口的,得2~3倍的RAM。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106826
QQ
发表于 2023-4-10 16:48:45 | 显示全部楼层
1  没问题,TouchGFX支持局部缓冲玩法,可以设置仅一行大小作为缓冲,不需要整个屏幕显存大小做缓冲。
2  你的这个LCD控制器是自带显存空间的,无需G0芯片再提供显存。
3  素材也没问题,存到外置Flash即可。这个做个外置算法就行了,此贴

【实战技能】任何支持SWD接口的单片机都可以方便移植的SPI Flash烧写算法制作,含视频说明(2022-05-30)
https://www.armbbs.cn/forum.php? ... 2600&fromuid=58
(出处: 硬汉嵌入式论坛)
回复

使用道具 举报

2

主题

13

回帖

19

积分

新手上路

积分
19
 楼主| 发表于 2023-4-10 17:32:18 | 显示全部楼层
eric2013 发表于 2023-4-10 16:48
1  没问题,TouchGFX支持局部缓冲玩法,可以设置仅一行大小作为缓冲,不需要整个屏幕显存大小做缓冲。
2   ...

好的,谢谢。
关于TouchGFX移植到G030这个,有教程吗
回复

使用道具 举报

0

主题

8

回帖

8

积分

新手上路

积分
8
发表于 2023-4-19 15:09:10 | 显示全部楼层
请问一下:1、这样的硬件资源能不能跑GUIX?  2、GUIX有没有局部缓冲的玩法?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106826
QQ
发表于 2023-4-20 01:09:09 | 显示全部楼层
欢快的萌新 发表于 2023-4-19 15:09
请问一下:1、这样的硬件资源能不能跑GUIX?  2、GUIX有没有局部缓冲的玩法?

有个直接驱动的玩法。

ThreadX GUIX直驱方案搞定,任何显示屏,低资源的MCU都可以跑了,不再需要画布,附工程下载
https://www.armbbs.cn/forum.php? ... 7202&fromuid=58
(出处: 硬汉嵌入式论坛)
回复

使用道具 举报

20

主题

30

回帖

90

积分

初级会员

积分
90
发表于 2023-4-21 14:36:36 | 显示全部楼层
TouchGFX和guix比较,显示效果哪个好,相差多大程度
回复

使用道具 举报

610

主题

3055

回帖

4905

积分

至尊会员

积分
4905
发表于 2023-4-23 17:23:20 | 显示全部楼层
估计应该是可以的, 可以一行一行的驱动,

一行 需要 240*2 个 byte,
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-6 05:35 , Processed in 0.222732 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表