跳到主要内容

社会疏散标签项目ROM /文本段满

da1469x.

6个月前

发布的Jagath52.75分 12回复
0的问题

你好

我们使用wia 10.440.8.6 SDK在我们的腕带项目中使用社交距离标签1.0.6。

1.这款腕带配备了加速计、pixart心率和SPO2、温度传感器和TFT液晶作为外设。LCD图像正在占用更多的文本段空间。
2.外部QSPI Flash是32mib - 4mbytes。其中503kbytes是代码/文本段.3。该项目已经在发布构建中使用了大约496kbytes。在调试构建中,我们越来越溢出。

4.调用:Cross ARM GNU Print Size
文本数据BSS dec十六进制文件名
508080 7640 443680 959400 ea3a8 ble_social_distance_tag.elf
完成建筑:BLE_SOCIAL_DISTANCE_TAG.SIZ

5.项目使用的默认分区表

#define nvms_product_header_part_start 0x000000 / *设备引导必需。0x00000000 * /
#define nvms_product_header_part_size 0x002000.

#define NVMS_FW_EXEC_PART_START 0x002000 /* 512KB对齐由默认的FLASH_REGION_SIZE决定。* /
#define nvms_fw_exec_part_size 0x07e000.

#define nvms_fw_update_part_start 0x080000 / *对齐至512kb是由默认flash_region_size指定的。* /
#define nvms_fw_update_part_size 0x07e000.

#define nvms_param_part_start 0x0fe000 / *设备的配置参数。批量生产书面的内容* /
#define nvms_param_part_size 0x001000

#define NVMS_GENERIC_PART_START 0x0FF000 /*用于存储连接信息,例如配对*/
#define nvms_generic_part_size 0x008000

#define nvms_log_part_start 0x107000 / * fat-fs为日志文件组织分区* /
#define nvms_log_part_size 0x278000.

#define nvms_partition_table_start 0x3ff000 / * partition表* /
#定义x001000 NVMS_PARTITION_TABLE_SIZE 0

6.这里固件部分和固件更新部分大小约为504KBytes。如何增加固件部件的尺寸?

7.这里日志部分占用大约2MB。如何将日志部分减小到1MB,并增加固件和固件更新部分。

8.在社交偏移项目中,Mypate_config_qspi.h最大代码大小限制为503kbytes。

#define dg_configQSPI_CODE_SIZE_AA(503 * 1024) /*最大BIN大小,包括CMAC固件
* 503是限制与默认的
* SDK和芯片复位值。
*较大的BIN需要添加适当的
*配置设置在CS在OTP和应用
*不同的闪存分区* /

9.如果有可能增加

1.如何增加固件和固件更新部分的分区大小?
2.这会影响社会疏远功能吗?
3.增加固件和固件更新部分后,SUOTA还能工作吗?

谢谢你!
Jagath

6个月前

PM_DIALOG.

嗨Jagath52,

谢谢你的在线问题。

如果FW超过512KB,则按照DA1469x支持大于512kB的图片教程。本教程旨在提供如何在DA1469x上支持不同大小的FW图像的步骤。默认情况下,SDK和芯片配置都支持运行高达512 kB的应用程序图像。

  1. 你的意思是如何增加表格而不是0x07e000?如果是,请遵循教程。
  2. 社会疏远功能不会受到影响。
  3. FW升级分区大小为0x07E000。你需要更大的吗?应该相应地更改SUOTA分区表。

在调试版本中,我们遇到了rom溢出。

你能分享一个截图吗?

谢谢,PM_DIALOG.

6个月前

Jagath52. 75分

你好,PM_Dialog谢谢您的回复。

1.

目前,我们的固件大小大约是502KBytes,我们需要大约60到70Kbytes额外。
在本教程中http://lpccs-docs.dialog-semiconductor.com/tutorial_da1469x_supporting_..。, da1496x支持的下一个图像大小是1mb。

有可能只增加100kbytes吗?
例如,512kbytes + 100kbytes = 612kbytes。

我们需要最大600Kbytes的代码内存。在512Kbytes之后的下一个最佳内存分配是什么?

2.在debug_qspi构建中,我们得到了rom溢出错误。
所以目前,我们正在使用Refoy_QSPI构建开发。

建筑目标:ble_social_distance_tag.elf
调用:交叉臂C链接器
C:/程序文件(x86)/diasemi/smartsnippetsstudio2.0.14/gcc/7-2018-q2/bin /../ lib / gcc / arm-none-eabi / 7.3.1 / ../../arm-none-eabi/bin/ld.exe:ble_social_distance_tag.elf部分`.text'不适合区域`ROM'
c:/program files (x86)/diasemi/smartsnippetsstudio2.0.14/gcc/7-2018-q2/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../ ../arm-none-eabi/bin/ld.exe: ROM空间溢出
c:/program files (x86)/diasemi/smartsnippetsstudio2.0.14/gcc/7-2018-q2/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/bin/ld.exe: region ' ROM'溢出144字节
Collect2.exe:错误:ld返回1退出状态
make [1]:*** [makefile:82:ble_social_distance_tag.elf]错误1
make: *** [makefile:73: all]错误2
“make --silent -j4 all”终止退出代码2.构建可能是不完整的。

6个月前

PM_DIALOG.

嗨Jagath52,

根据表988:CACHE_FLASH_REG (0x100C0040), FW Images在FLASH中不能放置在任何随机地址。每个镜像分区的地址必须为0.25、0.5、1、2、4、8、16或32mbytes的倍数。

由于固件大约是572Kb,那么您应该按照教程将图像大小增加到1MB。请跟随教程并让我们知道。

谢谢,PM_DIALOG.

6个月前

PM_DIALOG.

你好,

最可能的原因是FW的容量大于512KB。如果FW超过512KB,则按照DA1469x支持大于512kB的图片教程。本教程提供了如何支持DA1469x上不同大小的FW图像的步骤。默认情况下,SDK和芯片配置都支持运行高达512 kB的应用程序图像。

谢谢,PM_DIALOG.

6个月前

Jagath52. 75分

你好PM_Dialog

我正在使用Smart Scippet Toolbox版本5.0.14

我遵循了给定的教程,以支持超过512KB的fw图像,但我得到以下警告。
我在教程的第9步得到了这个警告。
日志显示“没有字节写入otp内存”
我没有得到一个弹出窗口,如步骤10所示。

我已在zip文件中附上当前的OTP内存屏幕截图。

日志

[WARNING OTP Header @21-02-03 11:41:55]不能覆盖地址:0x10080D18。0x40000C10将被替换为0xFF
[警告OTP标题@ 21-02-03 11:41:55]不能覆盖地址:0x10080d1c。值0x05000000将用0xFF替换
[info otp header @ 21-02-03 11:41:55]没有字节可以写入OTP内存:所选OTP内存区域已被刻录。
[信息OTP标题@ 21-02-03 11:41:55] OTP内存刻录成功完成。
[信息OTP图像@ 21-02-03 11:41:55]读取OTP内存刷新其内容。
[INFO OTP Header @21-02-03 11:41:55]成功从OTP内存中读取4096字节。

是否需要刻录OTP值的额外步骤

谢谢你!
Jagath

附件 尺寸
flash.zip 156.82 KB

6个月前

PM_DIALOG.

嗨Jagath52,

教程不会缺少任何步骤才能在Opt配置脚本中刻录新条目。你能否检查你是否遵守步骤3-10?

您是否能够连接到OTP头并读取配置脚本?本教程的哪个步骤导致了这些警告?

谢谢,PM_DIALOG.

6个月前

Jagath52. 75分

你好PM_Dialog

是的,我能够连接到OTP头并读取配置脚本。
在按下烧伤后,我从1到9中完成步骤。

S.TEP 10.我一点也没有弹出窗口(覆盖只读单词)

我在之前的帖子里附上了OTP内存的截图

谢谢
Jagath

5个月前

PM_DIALOG.

嗨Jagath52,

我刚刚在SmartSnippets工具箱v5.0.14中运行了本教程,但我无法复制它。

  • 在步骤#2中,是图2中的错误。2:请选择DA1469X-00而不是DA14681-01。
  • 在步骤#之后,您能在CS中看到一个新条目吗?——请看附呈。
  • 正如您可以看到的那样,我可以得到弹出窗口,如步骤#10 /图9所示。9

您是使用定制董事会,或我们的任何DKS吗?您是否能够连接和阅读OTP图像?你应该看到ff。

此外,如果使用UART / SPI来连接(图2),该工具将要求您在按“Connect”按钮后重置设备。

谢谢,PM_DIALOG.

附件 尺寸
sst.zip. 286.91 KB.

5个月前

Jagath52. 75分

你好PM_Dialog

我使用的是Da1469 USB开发板。

是的,我在步骤2中选择了DA1469x-00。

手术我跟随。
1.在步骤6中,首先我添加了停止命令2次。
2.然后只有我能够添加CACHE_FLASH_REG (0x100C0040)。这种方法正确吗?

3.我没有得到一个弹出窗口在步骤10后按烧伤。

4.我将得到“不能覆盖地址:0x10080D1C”。值0x00000000将被替换为0xFF无法向OTP内存写入字节:selected OTP memory region is already burn "错误。

我尝试了UART和JTAG方法。在这两种方法中,结果是相同的。

6.在OTP内存中可以写入多少个字节?
7.如何在不添加STOP命令的情况下添加命令号20 ?

请找到每个步骤的截屏和数字。

谢谢你!
Jagath

附件 尺寸
flash.zip 1.41 MB

5个月前

Jagath52. 75分

你好PM_Dialog

我卸载了工具箱版本5.0.14,安装了5.0.16,现在我可以烧录OTP内存。

现在,另一个问题是,我从教程中复制了相同的分区表,并将dg_configQSPI_CODE_SIZE_AA更改为1000。

我向董事会简要介绍了一个例子。

当我重新连接板到工具箱并读取OTP内存进行验证时(如验证中所示)。

分区表与教程中显示的不同。

遵循相同步骤后,请在同一步骤和复制宏后找到分区表的屏幕截图

谢谢你!
Jagath

附件 尺寸
otp.zip 385.03 KB.

5个月前

Jagath52. 75分

你好PM_Dialog

使用工具箱5.0.16工作正常。

感谢帮助
Jagath

5个月前

PM_DIALOG.

嗨Jagath52,

很高兴这起作用了。我看到你申请了后续论坛门票。让我们在新的一页继续讨论。

谢谢,PM_DIALOG.