你好,我正试图启动SDK 5.0.4 ble_app_peripheral示例代码使用UART协议进入DA14580设备。我遵循以下步骤:DA1458x从串行接口文件启动。引导失败是因为示例代码大小(十六进制文件)是58KB,而DA14580 RAM大小大约是43KB。例如,当我发送LEN_LSB和LEN_MSB(这是58187)我从设备接收NACK。
为什么代码示例的大小不适合组件的大小?对于这个问题有什么变通方法吗?
嗨ezza,
您检查的是十六进制文件而不是二进制文件,当您使用Kyle编译代码时,会生成一个。hex文件,这个文件不会放到M0中,而是放到。bin文件中。这个过程可以从智能代码片段收费(转换十六进制到二进制),当您浏览文件时自动。
BR,
STS_Dialog。
你好,
谢谢你的回复。
我已经使用Intel HEX to BINARY File Converter Utility将. HEX转换为.bin,创建的文件甚至比HEX文件更大。
请尝试它从hex2bin.exe位于suota tools zip。从文档中的教程选项卡。
谢谢你好的。
hex2bin.exe提供与intel工具相同的输出。请见附件的截图。
bin文件的大小非常大。它无法装入设备的RAM。如果我遗漏了什么,请纠正我,这是我的psaudo代码:
1.发送重置请求。2.从设备(0x02)读取响应。3.Send SOH = 0x01 to设备。4.发送代码的长度(LSB然后MSB)。5.从设备接收ACK或NACK(在我的情况下,因为长度太大,我得到NACK,我尝试减少它,我得到了ACK)。6.将代码的字节发送到设备。7.从设备接收CRC。9.向设备发送ACK。
我已经测试过了,大约21KB,你在代码中添加了什么吗?
STS_Dialog
嗨ezza,
您检查的是十六进制文件而不是二进制文件,当您使用Kyle编译代码时,会生成一个。hex文件,这个文件不会放到M0中,而是放到。bin文件中。这个过程可以从智能代码片段收费(转换十六进制到二进制),当您浏览文件时自动。
BR,
STS_Dialog。
你好,
谢谢你的回复。
我已经使用Intel HEX to BINARY File Converter Utility将. HEX转换为.bin,创建的文件甚至比HEX文件更大。
你好,
请尝试它从hex2bin.exe位于suota tools zip。从文档中的教程选项卡。
BR,
STS_Dialog。
谢谢你好的。
hex2bin.exe提供与intel工具相同的输出。
请见附件的截图。
bin文件的大小非常大。它无法装入设备的RAM。
如果我遗漏了什么,请纠正我,这是我的psaudo代码:
1.发送重置请求。
2.从设备(0x02)读取响应。
3.Send SOH = 0x01 to设备。
4.发送代码的长度(LSB然后MSB)。
5.从设备接收ACK或NACK(在我的情况下,因为长度太大,我得到NACK,我尝试减少它,我得到了ACK)。
6.将代码的字节发送到设备。
7.从设备接收CRC。
9.向设备发送ACK。
你好,
我已经测试过了,大约21KB,你在代码中添加了什么吗?
BR,
STS_Dialog