11 posts / 0 new
Last post
abc1724
Offline
Last seen:1 week 1 day ago
加入:2019-09-20 12:16
内存不足

我有个产品用IC是DA14580并且外挂一个FLASH。我想知道当我的程序代码量大于32KB时。我如何使用Keil在线调试。因为我现在的程序代码量超过了32Kb,编译报错内存不足。谢谢

Device:
CYibin
Offline
Last seen:7 months 2 days ago
工作人员
加入:2017-12-14 02:48
你好,

你好,

580 有 50KBytes 的 RAM 空间。

默认的分配方案是 32Kbytes code + 18Kbytes data。

如果 code 超过了 32Kytes,

有几种解决方式:

1.删除不必要的代码,使 code 空间减少到 32Kbytes 以内

2. 使用和 580 pin_to_pin 的 585 芯片替代

3. 重新分配 code/data 空间,如 38Kbytes + 12Kbytes 的组合方式

请问你现在的 code 的大小是多少?

abc1724
Offline
Last seen:1 week 1 day ago
加入:2019-09-20 12:16
我的程序现在已经超过32K,有些功能还没写

我的程序现在已经超过32K,有些功能还没写。估计写完代码要40K左右。重新分配代码/数据空间。请问有没有教程或例子。

comprends
Offline
Last seen:1 day 5 hours ago
加入:2019-06-21 07:31
请问是不是只有这三种办法,我现在用DA14531进行编程

请问是不是只有这三种办法,我现在用DA14531进行编程,但是代码量超过了总共的48KB,不能通过外挂flash来存储程序吗,只能缩减代码量了吗,是否有其他解决办法呢

CYibin
Offline
Last seen:7 months 2 days ago
工作人员
加入:2017-12-14 02:48
你好, 有的,请留下邮箱,我发给你

你好,

有的,请留下邮箱,我发给你

abc1724
Offline
Last seen:1 week 1 day ago
加入:2019-09-20 12:16
我的邮箱为 eng03@raycohk.com 谢谢

我的邮箱为

eng03@raycohk.com

谢谢

CYibin
Offline
Last seen:7 months 2 days ago
工作人员
加入:2017-12-14 02:48
你好, 已经邮件联系你。

你好,

已经邮件联系你。

wulinxing
Offline
Last seen:1 year 2 weeks ago
加入:2020-03-18 03:49
你好 CYbin

你好 CYbin

我也很想知道DA14531 代码空间如何才能超过48kb。 能把例子发给我一份么?

邮箱642860539@qq.com谢谢!

CYibin
Offline
Last seen:7 months 2 days ago
工作人员
加入:2017-12-14 02:48
当 DA14580 固件大小超过 RAM 空间

当 DA14580 固件大小超过 RAM 空间(50KBytes)时,只能通过删除用户代码空间来解决。

当 DA14531 固件大小超过 RAM 空间(48KBytes)时,并且无论如何无法优化空间时,可以把一部分代码放到 OTP 中。531 支持从 OTP 取指。

531 代码从 OTP 运行的特点是:

1.相对RAM 来说:取指速度慢,功耗高

2. 芯片供电电压在 Buck 模式下需要大于 1.65v, Bypass 模式下需大于 1.75v

3. OTP 部分的代码无法升级

在非必要情况下,还是尽量先从优化代码空间、这一手段入手,提供以下方式供参考:

1.删除不必要的 profile

2. 关闭 uart printf 功能

3. 关闭 develop debug 宏

4. 尝试调整 Keil 的编译优化选项,选择空间优先

5. 虽然 Keil IDE会将未调用的函数不对其加入链接,但最好还是开发者手动不需要的函数、文件从工程中剔除。

wulinxing
Offline
Last seen:1 year 2 weeks ago
加入:2020-03-18 03:49
谢谢你 CYbin,DA14531

谢谢你 CYbin,DA14531 看起来只能用来做一些简单的应用.

内部都没有cache,看来我是想多了

CYibin
Offline
Last seen:7 months 2 days ago
工作人员
加入:2017-12-14 02:48
是的,

是的,

531 在功耗、尺寸、成本上有比较强的竞争力,特别适合做数据泵(如数据透传模块)类产品

和简单应用的蓝牙低功耗外,如防丢器,beacon,电子标签,计步器,温度计等。