10 posts / 0 new
Last post
kiam
Offline
Last seen:8 months 6 days ago
加入:2019-07-25 08:44
DA14580 外部FLASH问题

I want to know wheather is supportable if I change the P0(p0_0 p0_3 p0_5 p0_6) to other ports as SPI when the chip power on?

就是上电检测是否从外部flash启动,作为SPI接口我可以修改flash_programmer.bin文件检查其他管脚吗

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

你好,

可以的。如果你是用电脑的 SmartSnippets 来烧录 flash,则直接在SmartSnippetsToolbox -> Layout -> Booter & Setup 中配置即可。

kiam
Offline
Last seen:8 months 6 days ago
加入:2019-07-25 08:44
你好:

你好:

请问SmartSnippets要求版本吗?我手中的没有找到对应的Booter&Setup选项,官方哪里有详细的说明文档吗

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

你好,

每个版本都有这个配置的,或许路径不一样;请仔细找一下。

最新的版本,在以下链接中找到并下载:

//www.xmece.com/products/connectivity/bluetooth-low...

网页打开有点慢,请耐心

kiam
Offline
Last seen:8 months 6 days ago
加入:2019-07-25 08:44
你好:

你好:

我刚接触这款芯片,具体情况是这样的,当初设计电路的时候,外接flash 的SPI放在了P1脚上,所以问一下从外部启动是否改变管脚,查除了P0脚以外的管脚,您的意思是对应的SmartSnippets软件中我可以配置成我自己想要的管脚,然后执行SPI flash将APP下载到外接flash中即可?

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

你好,

芯片的启动流程是这样的:

1. 上电,产生复位,芯片启动 boot 流程(boot 代码在芯片内部的 rom 中

2. boot 程序依次、循环地检测各个默认的端口(外部 spi flash 属于 spi slave 端口)是否有时序,然后与有效的端口通讯

3. 端口通讯成功后,会依照既定的协议,将用户的固件加载到芯片内部的 ram 中,然后软件复位,运行 ram 中的用户固件

使用 SmartSnippets toolbox,通过 580 给 flash 烧程序的流程如下:

1. 580 和SmartSnippets 通过串口(默认 P04 P05)通讯、握手成功

2.SmartSnippets通过串口,将 flash_programer.bin 这个固件加载到 580 的 ram 中并运行

3.flash_programer 运行之后,会通过串口,继续与SmartSnippets通讯,实现:配置闪光灯的spi 口,擦除 flash,接收SmartSnippets 发送的用户固件数据,烧录到 flash 中等。

回到你的问题,默认的 spi 口改变了之后,应该如何让 580 成功从定制的 spi 口加载 flash 中的代码?

方法如下:

1. 打开 sdk 中的 secondary bootloader 工程,找到 SPI_BOOTER 相关的代码,修改其中的 spi boot 引脚配置。

2. 将secondary bootloader 编译、烧录到 580 的 OTP 中

修改后,580 启动流程如下:

1. 580 上电,发现 OTP 中有程序(secondary bootloader),将其拷贝到 ram 中运行

2. secondary bootloader 运行后,从相应的 spi 接口中,将 flash 的固件拷贝到 ram 中,并运行

以上方法,建议你先接触、熟悉 SUOTA 的流程之后,再尝试使用。

修改默认 spi flash 接口会带来一些额外的工作,在开发阶段会造成一些麻烦,请尽量选用默认的接口。

kiam
Offline
Last seen:8 months 6 days ago
加入:2019-07-25 08:44
您好:

您好:

很详细了,谢谢。主要是现在板子硬件改动可能小,根据您的经验,如果修改SPI接口,对于后续产品化,包括工装设计,产线检测,OTA升级等方面会造成麻烦吗?方便说明造成的额外工作具体指哪些方面吗?现在的硬件如果使用默认的SPI,对于我们目前硬件设计来说,布线会影响信号。

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

你好,

额外的工作,即我上述所说之内容。

总而言之,改变默认 spi 引脚,就必须烧录 secondary bootloader 来进行适配,如果你的产品是支持 OTA 的,则这个不算额外的工作,因为 OTA 也必须烧录 secondary bootloader

kiam
Offline
Last seen:8 months 6 days ago
加入:2019-07-25 08:44
您好: 实验过了,太感谢了!!

您好:

实验过了,太感谢了!!

CYibin
Offline
Last seen:6 months 2 weeks ago
工作人员
加入:2017-12-14 02:48
不客气

不客气