Dialog的DA14531芯片支持通过通讯接口在BOOT中写入程序,然后加载在RAM中运行。
注意该启动方式是将程序加载到RAM里的,所以设备复位或者掉电后,程序都需要重新刷写一次。一般情况下,DA14531的程序在32K以下,UART方式刷写一般不超过3秒完成启动,SPI方式则会快很多。
之所以这么做,主要是考虑芯片本身只有OTP的FLASH,升级通常通过外挂SPI的FALSH完成。但是考虑到成本问题,如果条件满足,完全可以将程序放在外挂的MCU里,每次上电启动时将程序写入,也可以起到相同作用,同时BLE芯片的程序受控性更好,降低程序无法恢复的风险。
下面是DA14531的BOOT启动描述和使用方法:
1、启动方式
DA14531的BOOT启动写入程序到RAM的方式包含以下几种:
由表可以看出,可以通过SPI、单线串口、双线串口、I2C方式将应用程序在芯片处于BOOT中时通讯并写入到RAM里,加载程序并运行。这样,就可以通过外挂一个芯片(比如一个MCU),通过启动时通讯来随时更新BLE芯片的程序了。
二、启动时间
上图还描述了BOOT启动时通讯的顺序,6种启动方式依次进行,它们的启动时间如下:
三、通讯示例
下面以双线串口来举例,如何在BOOT中刷入程序:
首先根据上表,p0_0需要接MCU的RX,P0_1接MCUTX,用于程序写入RAM。
同时,如果DA14531的电源不受控,则我们无法通过控制供电让它进入BOOT,则需要通过复位方式完成这一点
假设我们完成了断电重启或者复位,此时,根据

本文介绍了Dialog的DA14531芯片BOOT启动方式,可通过通讯接口将程序写入RAM运行,复位或掉电后需重刷。阐述了多种启动方式、启动时间,以双线串口为例说明刷入程序流程,还给出解决复位问题的方法,这些方法也适用于其他启动方式。
最低0.47元/天 解锁文章
4625

被折叠的 条评论
为什么被折叠?



