你好
我们正在使用WIRA 10.440.8.6 SDK的腕带项目的社交偏移标签1.0.6。
1.腕带具有加速度计,PIXART心率和SPO2,温度传感器和TFT LCD作为外围设备。LCD图像正在占用更多的文本段空间。
2.外部QSPI Flash是32mib - 4mbytes。其中503kbytes是代码/文本段.3。该项目已经在发布构建中使用了大约496kbytes。在调试构建中,我们越来越溢出。
4.调用:交叉臂GNU打印尺寸
文本数据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 / * BLE用于存储连接信息e.g.用于配对* /
#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表* /
#define nvms_partition_table_size 0x001000
6.此处固件零件和固件更新零件大小约为504kbytes。如何增加固件零件大小。?
7.这里的日志部分大约需要2MB。如何将日志零件大小降至1MB,并增加固件和固件更新部分。
8.在社交偏移项目中,Mypate_config_qspi.h最大代码大小限制为503kbytes。
#define dg_configqspi_code_size_aa(503 * 1024)/ * max bin大小,包括cmac固件
* 503是默认值的限制
* SDK和芯片复位值。
*更大的垃圾箱需要添加正确的
* OTP中CS中的配置设置并应用
*不同的闪存分区* /
9.如果有可能增加
1.如何增加固件和固件更新部分的分区大小?
2.这会影响社会疏远功能吗?
3.在增加FIMWA软件和固件更新部分后,SUOTA会工作吗?
谢谢
Jagath.
嗨Jagath52,
谢谢你的问题在线。
如果FW超过512KB,那么你应该跟随DA1469x支持大于512kb的图像教程。本教程旨在提供如何支持DA1469x上不同大小的FW图像的步骤。默认情况下,SDK和芯片配置都支持运行高达512 kB的应用程序图像。
>>>在调试版本中,我们得到了rom溢出。
你能分享一个截图吗?
谢谢,PM_DIALOG.
你好,pm_dialog谢谢你的回复。
1。
目前,我们的固件尺寸约为502kbytes,我们需要大约60到70kbytes额外。
在本教程中http://lpccs-docs.dialog-seminiondiond.com/tutorial_da1469x_supporting_f ...,DA1496X支持的下一个图像大小是1MBYTES。
是否有可能增加100千字节?
例如,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:/程序文件(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 space overflowed
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:区域`ROM'溢出144个字节
collect2.exe:错误:LD返回1个退出状态
make [1]:*** [makefile:82:ble_social_distance_tag.elf]错误1
制作:*** [makefile:73:全部]错误2
“make --silent -j4 all”终止退出代码2.构建可能是不完整的。
嗨Jagath52,
根据数据表,表988:cache_flash_reg(0x100c0040),Flash中的FW图像不能放置在任何随机地址。每个图像分区的地址必须是0.25,0.5,1,2,4,8,16或32 mby的倍数。
由于固件大约为572KB,因此您应该遵循教程并将图像尺寸增加到1MB。请按照教程遵循告诉我们。
谢谢,PM_DIALOG.
大家好,
这个问题的最可能原因是FW大于512KB。如果FW超过512KB,那么您应该按照DA1469x支持大于512kb的图像教程。本教程提供了如何支持DA1469x上不同大小的FW图像的步骤。默认情况下,SDK和芯片配置都支持运行高达512 kB的应用程序图像。
谢谢,PM_DIALOG.
你好PM_DIALOG.
我正在使用Smart Scippet Toolbox版本5.0.14
我跟随给定的教程支持超过512KB的FW图像,但我得到了以下警告。
我在教程中的第9页中获得此警告。
日志表示“没有写入OTP内存的字节”
我没有得到一个弹出窗口,如步骤10所示。
我已在zip文件中附上当前的OTP内存屏幕截图。
日志
[警告OTP标题@ 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内存刷新其内容。
[信息OTP标题@ 21-02-03 11:41:55]从OTP内存成功读取4096个字节。
是否需要刻录OTP值的额外步骤
谢谢
Jagath.
嗨Jagath52,
教程不会缺少任何步骤才能在Opt配置脚本中刻录新条目。你能否检查你是否遵守步骤3-10?
您是否能够连接到OTP标题并读取配置脚本?教程的哪一步导致警告?
谢谢,PM_DIALOG.
你好PM_DIALOG.
是的,我能够连接到OTP标题并读取配置脚本。
在按下烧伤后,我从1到9中完成步骤。
S.TEP 10.我没有得到任何弹出窗口(覆盖只读单词)
我在上一篇文章中附上了OTP内存的屏幕截图
谢谢
Jagath.
嗨Jagath52,
我刚刚在SmartSnippets Toolbox V5.0.14中运行了教程,但我无法复制它。
您是使用定制董事会,或我们的任何DKS吗?您是否能够连接和阅读OTP图像?你应该看到ff。
此外,如果使用UART / SPI来连接(图2),该工具将要求您在按“Connect”按钮后重置设备。
谢谢,PM_DIALOG.
你好PM_DIALOG.
我正在使用DA1469 USB开发板。
是的,我在步骤2中选择了DA1469x-00。
手术我跟随。
1.在步骤6中,首先我添加了停止命令2次。
2.只有我只能添加cache_flash_reg(0x100c0040)。这是正确的方法吗?
3.按刻录后,我在步骤10中没有收到一个弹出窗口。
4.我得到“无法覆盖地址:0x10080d1c。值0x00000000将用0xff替换为0xff,没有字节可以写入OTP内存:所选OTP内存区域已被刻录”错误。
我尝试了UART和JTAG方法。在这两种方法中,结果是相同的。
6.在OTP内存中可以写入多少个字节?
7.您如何在不添加stop命令的情况下添加命令号20?
请找到每个步骤的屏幕截图。
谢谢
Jagath.
你好PM_DIALOG.
我卸载了工具箱版本5.0.14并安装了5.0.16,现在我能够刻录OTP内存。
现在另一个问题是我从教程中复制了相同的分区表,并将DG_CONFIGQSPI_CODE_SIZE_AA更改为1000。
我闪过了董事会的ADV示例。
当我将板重新连接到工具箱并读取OTP内存以验证(如验证所示)。
分区表与教程中显示的不同。
遵循相同步骤后,请在同一步骤和复制宏后找到分区表的屏幕截图
谢谢
Jagath.
你好PM_DIALOG.
使用工具箱5.0.16工作正常。
感谢帮助
Jagath.
嗨Jagath52,
很高兴正在工作。我看到你提出了一个后续论坛票。让我们继续在新的讨论。
谢谢,PM_DIALOG.