1045|8

7815

帖子

57

TA的资源

裸片初长成(中级)

楼主
 

【自制DA14531手环开发套件】配套教程 之五:48K(32K ROM+16K RAM)的MCU用什么gui库 [复制链接]

本帖最后由 辛昕 于 2024-3-2 15:06 编辑

ce3169b275330c8bee3025d7376e373a

    上面传了个视频,一会才能看。不过其实也没什么。就是个刷屏。

    而且因为板子SMT还没完成,所以也是用我原来买的那块官方的USB EVB板子。

    

    发这个只是向你们证明,第一步,ST7789的驱动显示,是可用的。另外,其实它遗留了一个问题,只是刷个屏,这速度,也太慢了。其实,我也试过简单提升SPI的速度和ST7789的0xC6命令,然而未见有效。后续还需要继续研究一下如何提升。

 

    这时,我还想到有一个在找GUI库过程中看到的 ARM-2D,也需要了解一下,这个东西按道理是一个ARM的官方2D加速器。

最新回复

华为的手表,好象是STM32U5xx的芯片,不过价格就上去了。   详情 回复 发表于 2024-3-13 07:33
点赞 关注
个人签名

强者为尊,弱者,死无葬身之地

 

回复
举报

7815

帖子

57

TA的资源

裸片初长成(中级)

沙发
 

代码,当然,仍然在我此前提到的gitee上,为了方便,这里再发一次repo地址

https://gitee.com/DarberLinCC/DA14531.git

当前,和这个手环开发套件相关的代码,都在 BAND 分支里

 

而要搞显示,搞GUI库,首先,要解决的是显示屏的显示。

而这个,当然很简单。就是一个针对显示驱动芯片而已。要提驱动程序,当然首先必须要有原理图。

不过,如前所述,因为目前我还没拿到SMT的首批5个样品,所以此前,我是用洞洞板焊接转接板做的——

后续,需要根据我们的手环开发套件的引脚定义来修改(当然,这个很简单就是了)

这是我目前使用的转接板。

这个板子甚至没把CS引出来,所以,为了适应板子上还有spi flash,所以我把CS从显示屏的软排线(用蓝色细导线)引出来了。

目前,根据这个转接板来说,引脚定义可以在 lcd_st7789的注释中看到。

 

而这个 lcd7789.c 和 其相关的 头文件 lcd.h 则放在根目录下的 lcd/ 文件夹

 

这个驱动代码,大体上包括两部分:

1、io初始化;

2、基础的画点、画线、画块、显示图片

并不支持图片文件格式解析,只是显示转换成数组的图片数据——

毕竟,这只是一个基础的底层显示驱动

个人签名

强者为尊,弱者,死无葬身之地

 
 

回复

7815

帖子

57

TA的资源

裸片初长成(中级)

板凳
 

LVGL——很遗憾,not-enough-mem

接下来就是主题GUI库的了,相信也是你们最感兴趣的。

原本,我都没多想,就是准备用LVGL的。

很遗憾的是——

LVGL的ROM RAM消耗量,相对于 DA14531来说,还是太大了。

 

LVGL是啥,多强,不提了,可以自己百度——

在2017年以前,百度上,连搜索都没见到有谁在用——

当时,它在github上已经存在,看起来就是一个开源项目,很少有人关注。

然而,今天,它基本成为最知名的一个MCU上应用的GUI库。

 

想详细了解LVGL,这里是LVGL官方文档:https://docs.lvgl.io/master/

往下拉,点开其中的 Requirement

 

应该说,2K RAM的最低要求不过分——以往我们一般都首先关心 RAM

然而,这一次,针对DA14531(它在SysRAM里运行,所以,本质上模糊了ROM和RAM的边界)

我们这一次反而要关心ROM大小,一看,倒吸一口凉气,最小64K!

 

然而,在感叹了半天后,我决定,还是试试——试什么呢?

也许,做得少,占用的ROM可以少一点——当然,其实人家都说了最低要求.......

 

但是,等了这么久,怎么可能不试试就跑呢?

所以我决定小马过河,搞一搞。

 

这里,顺带讲一个如何用 git 拉取 远程分支到本地的 命令

——因为这个东西我是过年在家里,用笔记本做的,因此我这台台式机上的项目工程没有这部分代码。

因此,需要把我上传到gitee的这个 LVGL分支拉取到本地

 

 

当然,LVGL的移植——其实,绝大多数GUI库都一样,基础的移植都非常简单——

无非是画点、画块函数(这里没使用触摸屏)

 

然后,我尚且还没去搞移植,我就想试试调用最基础的初始化

 

  从这里可以看出——

DA14531的SysRAM为48KB,默认的分配是 32K ROM,16K RAM

从这里可以看到,即使是调用一个初始化,其ROM都达到了——

 

为了对比,其实很简单,只要去掉 lv_init,我们就可以看到原来的代码大小

 

如此一算,

ROM 40072 - (5468 + 236 + 8) = 34360,已经33.55KB了

RAM 就更大了

RAM 52840 - (8 + 3376) = 49456,已经 48.29KB

(对于这个事实,其实我也挺好奇,我这不还做啥么,怎么就48KB RAM了?)

不过无论如何,单纯连ROM都不够使,也没啥可说的。

 

所以这个尝试,我只单纯了做了一个分支 LVGL-not-enough-mem。

后面,我将考察其他可能的gui库

个人签名

强者为尊,弱者,死无葬身之地

 
 
 

回复

6841

帖子

11

TA的资源

版主

4
 
ARM2D,如果你是用SPI的1线,估计也好不哪里去。

点评

嗯?有什么讲究吗? 我去搞1.14寸驱动了,这个事情还没继续,有什么特别的SPI对ARM2D  详情 回复 发表于 2024-3-12 13:24
 
 
 

回复

6069

帖子

4

TA的资源

版主

5
 

一下子就整到 第五篇了。

 
 
 

回复

7815

帖子

57

TA的资源

裸片初长成(中级)

6
 
lugl4313820 发表于 2024-3-11 23:09 ARM2D,如果你是用SPI的1线,估计也好不哪里去。

嗯?有什么讲究吗?

我去搞1.14寸驱动了,这个事情还没继续,有什么特别的SPI对ARM2D

点评

SPI有很多通信方式吧,你这没有触摸,也就是只用spi的MOSI就可以了,如果要加快速度,可以选择一次传4个bit的,也就是有4线数据线。要想更快就用8线或者16线的。  详情 回复 发表于 2024-3-12 14:44
个人签名

强者为尊,弱者,死无葬身之地

 
 
 

回复

6841

帖子

11

TA的资源

版主

7
 
辛昕 发表于 2024-3-12 13:24 嗯?有什么讲究吗? 我去搞1.14寸驱动了,这个事情还没继续,有什么特别的SPI对ARM2D

SPI有很多通信方式吧,你这没有触摸,也就是只用spi的MOSI就可以了,如果要加快速度,可以选择一次传4个bit的,也就是有4线数据线。要想更快就用8线或者16线的。

点评

知道你的意思了,所以还是这个MCU型号的封装小,IO口也少,所以没法用多线——实际上,这个MCU目前我的所有IO已经用完了。 所以我正在考虑换一款新MCU,放开一些体积的限制,我就直接上8080 16线了  详情 回复 发表于 2024-3-13 01:19
 
 
 

回复

7815

帖子

57

TA的资源

裸片初长成(中级)

8
 
lugl4313820 发表于 2024-3-12 14:44 SPI有很多通信方式吧,你这没有触摸,也就是只用spi的MOSI就可以了,如果要加快速度,可以选择一次传4个b ...

知道你的意思了,所以还是这个MCU型号的封装小,IO口也少,所以没法用多线——实际上,这个MCU目前我的所有IO已经用完了。

所以我正在考虑换一款新MCU,放开一些体积的限制,我就直接上8080 16线了

点评

华为的手表,好象是STM32U5xx的芯片,不过价格就上去了。  详情 回复 发表于 2024-3-13 07:33
个人签名

强者为尊,弱者,死无葬身之地

 
 
 

回复

6841

帖子

11

TA的资源

版主

9
 
辛昕 发表于 2024-3-13 01:19 知道你的意思了,所以还是这个MCU型号的封装小,IO口也少,所以没法用多线——实际上,这个MCU ...

华为的手表,好象是STM32U5xx的芯片,不过价格就上去了。

 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表