[STM8] STVD + Cosmic 环境下如何看代码的实际长度

[复制链接]
 楼主| alanvi 发表于 2013-6-27 10:48 | 显示全部楼层 |阅读模式
在KEIL中编译完成后 会自动显示实际占用多少空间
但是STVD 似乎不提供这个功能

在论坛中搜索了多个帖子 与 置顶文件 都没找到解决办法
有查到过一个工具+size $(OutputPath)$(TargetSName).map
或者avr -size 两种方法 但是两个加入编译器中后都没有任何反映

请问有什么办法能实现这个功能
我的STVD 版本是4.3.3 Cosmic 版本是 4.3.4

新手上路 请多指教
 楼主| alanvi 发表于 2013-6-27 10:56 | 显示全部楼层
还有说是能从.map中计算实际大小
是否就是 start xxxxxxx end xxxxx length 12344 segment  中把length 后的数字 全部相加 单位为字节 ?
但是 我计算出来的结果和我的HEX文件大小一样  难道STVD的HEX文件大小 和 实际占用空间一致?

请指教
 楼主| alanvi 发表于 2013-6-27 14:47 | 显示全部楼层
..难道 无法实现?
hawksabre 发表于 2013-6-27 18:58 | 显示全部楼层
帮楼主   顶一个    应该是有办法解决的    顶一个  
lattice2008 发表于 2013-6-27 23:42 | 显示全部楼层
我这有个显示代码量的工具,是在别人那看到的,很不错,发上来大家瞧瞧
功能介绍:
1. 对cosmic编译器生成的map文件进行分析,显示ram flash eeprom stack的占用量
ps:ram仅指ram变量(全局+静态+局部变量),不包括栈(stack)
    eeprom仅能统计由@eeprom定义出的变量或常量

STVD显示代码量.rar

18.47 KB, 下载次数: 1131

评分

参与人数 1威望 +1 收起 理由
hyperlikn918 + 1 很给力!

查看全部评分

 楼主| alanvi 发表于 2013-6-28 08:45 | 显示全部楼层
非常感谢 提供的工具
但是按照解压说明与步骤 完成后 进过编译依旧不能看到flash,ram,eeprom占用字节数。
是否和我使用COSMIC 32**版有关?
lattice2008 发表于 2013-6-28 19:35 | 显示全部楼层
我用**版的可以呀,你肯定是方法不对,我试好几个版本的都没有问题。
 楼主| alanvi 发表于 2013-6-29 08:01 | 显示全部楼层
1. 将附件压缩包中的mapinfo.exe解压并解压到stvd的\安装路径\STMicroelectronics\st_toolset\stvd中
2. 用stvd打开你的工程文件,在工程上点右键选settings...
3. 右侧的选项卡选择Linker,将category的下拉框选成output,然后在Generate Map file前打勾
4. 再将选项卡上选择到Post-Build,在下方文本框中新粘贴一行内容 mapinfo $(OutputPath)$(TargetSName).map
5. 点OK按键确定,菜单File->save workspace,保存工程
6. 重新编译下,你就能看到flash,ram,eeprom占用字节数了

确实按照说明来做了 但是不知道为何失败
暂时就此结贴 如果这步骤有问题 麻烦联系下我

评分

参与人数 1威望 +1 收起 理由
mhb_electron + 1 赞一个!

查看全部评分

hkcj 发表于 2013-6-29 17:44 | 显示全部楼层
楼上上传的文档很有用    收藏一个    好好看看先   顶一个  
mcu8031 发表于 2013-10-3 09:48 | 显示全部楼层
stvd真恶心。。。
libin1009 发表于 2013-10-5 08:32 | 显示全部楼层
先收藏了,不知道好不好用?
wuxinxinggg 发表于 2013-10-18 16:31 | 显示全部楼层
测试可用,版本是4.3.1 非常感谢
hithms 发表于 2013-10-18 17:15 | 显示全部楼层
thank you
yanceyzou 发表于 2013-12-2 09:34 | 显示全部楼层
可以用哦,谢谢楼主!
hbzqk520 发表于 2014-6-28 16:08 | 显示全部楼层
这个准不准啊,是真正的使用量吗?是官方出的吗?把弄成进度条更好
hbzqk520 发表于 2014-6-28 16:16 | 显示全部楼层
对了,ram  100  flash  6717  eeprom 0  stack 85  ram是字节?flah是K字节? stack:是字节?
zhanghaigangly 发表于 2014-7-15 10:19 | 显示全部楼层
STVD显示代码量.rar  可以用,很好,谢谢
calvin0614 发表于 2014-7-24 22:05 | 显示全部楼层
你好 我的STVD4.2.1+COmic5.2.5 编译后总出现#error cpstm8 C:\Program Files\COSMIC\CXSTM8_32K\Hstm8\modsl.h:1 FlexLM No such feature exists.   这个问题请问怎么解决
769854714 发表于 2014-8-9 10:03 | 显示全部楼层
ram:66   flash:4868   eeprom:0   stack:51  这些单位是啥啊
xzh492891 发表于 2014-9-5 15:02 | 显示全部楼层

ram:146   flash:5353   eeprom:0   stack:69   unknown:770

bootloader.elf - 0 error(s), 0 warning(s)
成功,谢谢分享!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

7

主题

28

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部

7

主题

28

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部