无代码项目规模缩减问题

⚠️
大家好. .感谢来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台的过程中,它将提供更好的功能,并包含在主对话网站。所有的帖子和账号已经迁移。我们现在只接受新论坛的流量-请发布任何新的帖子在//www.wsdof.com/support.我们会在接下来的几天修复bug /优化搜索和标记。
5个职位/ 0个新职位
最后发表
janosN
离线
最后看到:6个月1个星期前
加入:2020-11-16 14:59
无代码项目规模缩减问题

亲爱的对话框,

我想编译CODELESS项目而不需要修改。Keil链接器给出的代码大小错误,因为大小超过32768字节。我尝试了所有3种可能的目标设置:

  • 代码大小链接器错误:32804字节;
  • 代码大小链接器错误:32900字节;
  • 代码大小链接器错误:37068字节;

它们都比Keil-linker允许的最大值大。32768字节,没有额外的许可。

例如,我想移除SUOTA(减少尺寸)如果我注释掉CFG_PRF_SUOTARuser_profiles_config.h链接者报道35300字节;远远大于SUOTA左内。这是怎么回事,我删除了一些东西,而代码变得比以前更大,当我包括它?

从中删除一些AT命令也是一样user_at_commands.h;例如,注释掉AT_GAP_CONNECTAT_SLEEP结果在代码大小36780字节,如果它们在,则代码大小为32804

C/ c++选项我选择Level-3,最高的代码大小优化。

我按照说明进去了嗯- b - 057设置Keil-environment

这是链接器错误信息:

连接……

\ out_531 \ codeless_531_datapump。axf: error: L6050U: The code size of this image (32804 bytes) exceeded The maximum allowed for this version of The linker.这个图像的代码大小超过了这个版本的链接器所允许的最大值。

没有足够的信息来生成一个SYMDEFs文件。

完成:1个信息,0个警告,0个错误和1个致命错误消息。

”。\ out_531 \ codeless_531_datapump。axf" - 1错误(秒),0警告(秒)。

我有一张Keil发给我的30天有效期的驾照过期了1月2日.在这30天里我可以很好地编写上述项目

我不需要SUOTA只需要以下几点3.命令的无代码

在+ + ADVSTOP中央,+ GAPSCAN。我只想读出读出温度、湿度、压力和电池数据的遥测信标。

请建议我做什么来减少代码大小,我可以构建项目。

先谢谢你。

PM_Dialog
离线
最后看到:11小时17分钟前
工作人员
加入:2018-02-08 11:03
嗨janosN,

嗨janosN,

谢谢你的问题。

为了减小无代码图像的大小,您可以从user_at_commands.h头文件中取消定义应用程序中不会使用的AT命令。另外,在user_modules_config.h中,您可以排除或包含您需要的配置文件。

请记住,可以使用预编译的二进制文件,可以在DA145xx_CODELESS\6.380.12.6\ binary aries路径中找到。

由于您使用的是TINY模块,Flash Programmer工具也提供了预编译的二进制文件!

谢谢,PM_Dialog

janosN
离线
最后看到:6个月1个星期前
加入:2020-11-16 14:59
亲爱的对话框,

亲爱的对话框,

谢谢你的回答。

图像尺寸的缩小是可以通过禁用两个#定义user_at_commands:(其余的定义没有显著的尺寸缩减效果)

/ / #定义USE_AT_CONPAR/ / #定义USE_AT_BND是有效的,链接后,报告的代码大小为:27812(codeless_531_datapump)。所以,我现在可以编译项目没有额外的Keil许可证。

重建这个项目对我来说是必要的,因为原来的在+ GAPSCANCommand在扫描外围设备(比如发布遥测数据的信标)时遇到了严重的问题。最初,它只是扫描其他dialog外围设备,只列出了地址,没有广告的原始数据,所以我不得不修改功能:Void user_on_adv_report_ind(struct gapm_adv_report_ind const* param)user_codeless.c文件。但它现在起作用了。

非常感谢您的支持。

janos -

janosN
离线
最后看到:6个月1个星期前
加入:2020-11-16 14:59
亲爱的对话框,

亲爱的对话框,

谢谢你的回答。

图像尺寸的缩小是可以通过禁用两个#定义user_at_commands:(其余的定义没有显著的尺寸缩减效果)

/ / #定义USE_AT_CONPAR/ / #定义USE_AT_BND是有效的,链接后,报告的代码大小为:27812(codeless_531_datapump)。所以,我现在可以编译项目没有额外的Keil许可证。

重建这个项目对我来说是必要的,因为原来的在+ GAPSCANCommand在扫描外围设备(比如发布遥测数据的信标)时遇到了严重的问题。最初,它只是扫描其他dialog外围设备,只列出了地址,没有广告的原始数据,所以我不得不修改功能:Void user_on_adv_report_ind(struct gapm_adv_report_ind const* param)user_codeless.c文件。但它现在起作用了。

非常感谢您的支持。

janos -

PM_Dialog
离线
最后看到:11小时17分钟前
工作人员
加入:2018-02-08 11:03
嗨janosM,

嗨janosM,

很高兴你减少了代码大小,感谢分享。

谢谢,PM_Dialog