硬汉嵌入式论坛

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

[MDK] Keil5_disp_size_bar V1.1

  [复制链接]

3

主题

50

回帖

59

积分

初级会员

一个极客ageek

积分
59
发表于 2024-9-26 16:58:54 | 显示全部楼层 |阅读模式
本帖最后由 nikola 于 2024-9-26 17:05 编辑

Keil5_disp_size_bar: [Keil5_disp_size_bar]:以进度条百分比来显示keil编译后代码对芯片的内存ram和存储flash的占用情况。 原理是使用C语言遍历目录找到keil工程生成出的.map文件,然后找到对应的ram和flash的总大和占用大小,然后以进度条和百分比的直观格式输出来,以便嵌入式软件工程师方便调试,知道芯片占用情况,进行裁剪和优化。 (gitee.com)
keil5_disp_size_bar_v1.1.zip (221.86 KB, 下载次数: 77)
Keil5_disp_size_bar V1.1
版本更新日志
. 更新到v1.1
版本1.1 由于1.0版本为了使用表格库来画图,依赖于libxlsxwriter,而libxlsxwriter又依赖于zlib。
所有出现了有部分网友因为没有64位的zlib1.dll导致运行后什么反应都没有或者提示缺少dll动态库。
当时因为我mingw编译环境自带了zlib所以我的电脑并不会报错,虽然后面知道是因为依赖dll动态库需要下载动态库,而如果是静态库就可以直接打包到exe内。
当时完全不清楚zlib怎么编译.a静态库打包到exe。
直到现在换了电脑发现缺少dll就用不了,于是再次找了些方法通过cmake来编译了libzlibstatic.a
现在这个版本内容,没有什么改动,只是可以不再依赖zlib1.dll来运行并且输出表格了。
实测我的新电脑没有zlib1.dll库运行Keil5_disp_size_bar V1.0后会出现错误
9581a90ccafff12e4efa0b559688d4f.png
但是使用Keil5_disp_size_bar V1.1就可以直接正常运行,不需要自己去下载64位的zlib1.dll。


然后最近想把开发环境尝试都换到vscode这里来,想给vscode也做点自己的软件工具集成。
但是发现vscode的插件全是用JavaScript和typescript这些语言来写,感觉平时开发都用不到就不想花时间在这上面。
于是开始找C/C++的方案,最后发现一个C++的终端界面库叫
FTXUI(ArthurSonzogni/FTXUI: :computer: C++ Functional Terminal User Interface. :heart: (github.com))
通过这个库可以直接在任意终端上来做一下控件界面交互,cmd.exe或者vscode的底部终端运行一个带控件的终端。
1727339771916.png

这实在是太棒了,这样我可以使用C++写一下能集成到vscode的工具,但是这个库的资料不多目前还在研究怎么去用。

但是我发现我离开了QT的UI编辑工具和信号与槽后,使用C++去做界面和控件回调真的不简单。

有些时候写着写着编译报错了,却真的不知道为什么报错。
(有时候都开始怀疑我和这个库写的C++是不是同一个C++)

到底还是我的C++的底子还是太弱了,当初就是为了做Qt界面学一部分C++,来应付些上位机开发的需求,没有很系统去学。
9581a90ccafff12e4efa0b559688d4f.png

评分

参与人数 3金币 +130 收起 理由
fyyxxm + 10 赞一个!
eric2013 + 100
morning_enr6U + 20 很给力!

查看全部评分

回复

使用道具 举报

5

主题

206

回帖

221

积分

高级会员

积分
221
发表于 2024-9-26 18:22:15 | 显示全部楼层
不错不错,楼主的这个小工具,现在已经集成到我的每个工程里面去了(MDK下)
回复

使用道具 举报

12

主题

47

回帖

83

积分

初级会员

积分
83
发表于 2024-9-27 08:13:49 | 显示全部楼层
楼主,能研究一下再IAR平台下怎么用这个工具
回复

使用道具 举报

5

主题

336

回帖

351

积分

高级会员

积分
351
发表于 2024-9-27 08:24:17 | 显示全部楼层
以前,我从论坛上下载过相同功能的软件,是不是也是楼主的大作呀?
回复

使用道具 举报

4

主题

1449

回帖

1461

积分

至尊会员

积分
1461
发表于 2024-9-27 08:38:25 | 显示全部楼层
回复

使用道具 举报

12

主题

47

回帖

83

积分

初级会员

积分
83
发表于 2024-9-27 08:41:44 | 显示全部楼层
楼主,这个工具能继承到IAR上吗?两大主流IDE都覆盖就完美了
回复

使用道具 举报

3

主题

50

回帖

59

积分

初级会员

一个极客ageek

积分
59
 楼主| 发表于 2024-9-27 09:07:35 | 显示全部楼层
mexico007 发表于 2024-9-27 08:41
楼主,这个工具能继承到IAR上吗?两大主流IDE都覆盖就完美了

我工作上IAR基本没怎么用到。相同代码工程配置下KEIL和IAR输出的map信息格式是不一样的,而且IAR的map信息更少些好像,目前没有给IAR做map解析的打算,因为我打算研究一下用vscode做开发环境给vscode写些工具。
回复

使用道具 举报

3

主题

50

回帖

59

积分

初级会员

一个极客ageek

积分
59
 楼主| 发表于 2024-9-27 09:10:25 | 显示全部楼层
soyshell 发表于 2024-9-27 08:24
以前,我从论坛上下载过相同功能的软件,是不是也是楼主的大作呀?

以前在论坛发布过v0.1~0.4,v1.0,然后一直修改升级的。
回复

使用道具 举报

97

主题

537

回帖

843

积分

金牌会员

积分
843
发表于 2024-9-27 10:55:57 | 显示全部楼层
有一个keil-build-viewer我一直用那个的。

它可以知道每个文件大小的变化。
楼主可以把这个功能也加进去。
Snipaste_2024-09-27_10-53-57.png

然后双击可以跳转
2.gif
共产主义一定胜利!
回复

使用道具 举报

3

主题

50

回帖

59

积分

初级会员

一个极客ageek

积分
59
 楼主| 发表于 2024-9-27 11:36:54 | 显示全部楼层
会飞的猪_2020 发表于 2024-9-27 10:55
有一个keil-build-viewer我一直用那个的。

它可以知道每个文件大小的变化。

其实已经包含了每个文件大小的分析了就是从map提取的信息,只是我觉得输出到Bulid Output上 实在太占空间,所以放在表格文件里,需要再看,双击文件行信息跳转其实是keil自带的功能。我在gitee还看到一个使用rust写的类似工具,应该就是你使用的这个,keil-build-tools v1.0(https://gitee.com/xiaozh-development/keil_tools
回复

使用道具 举报

3

主题

50

回帖

59

积分

初级会员

一个极客ageek

积分
59
 楼主| 发表于 2024-9-27 11:39:39 | 显示全部楼层
会飞的猪_2020 发表于 2024-9-27 10:55
有一个keil-build-viewer我一直用那个的。

它可以知道每个文件大小的变化。

哦哦,好像还不是同一个,搜索了一下keil-build-viewer是(https://gitee.com/DinoHaw/keil-build-viewer),收藏关注一下。
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
116197
QQ
发表于 2024-9-28 09:07:21 | 显示全部楼层
谢谢楼主分享。
回复

使用道具 举报

80

主题

1333

回帖

1573

积分

至尊会员

积分
1573
发表于 2024-9-28 20:30:04 来自手机 | 显示全部楼层
谢谢分享。牛逼
回复

使用道具 举报

0

主题

1

回帖

1

积分

新手上路

积分
1
发表于 2024-10-23 16:16:05 | 显示全部楼层
谢谢分享
回复

使用道具 举报

0

主题

1

回帖

1

积分

新手上路

积分
1
发表于 2025-3-6 14:40:28 | 显示全部楼层
感谢感谢
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-10 04:29 , Processed in 0.320132 second(s), 29 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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