完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
众所周知,DA14580内置OTP,如需要OTA(空中升级)功能,则必须外挂FLASH或者EEPROM。
芯片ROM中存有bootcode,在上电后,boot code会去检测OTP中的前两个字节,如果是特定标志,则直接从OTP中将代码拷贝到SysRAM中并运行程序,整个启动OVER;如果OTP中前两个字节为zero,则会从以下顺序启动芯片: SPI MASTER =》 UART =》 SPI SLAVE =》 I2C 其对应的IO口见下表: 检测OTP完毕后,会按照STEP1到6的顺序启动,一旦启动成功,则终止后续启动过程,如果失败,则进入到SETP7,然后是STEP8、9、10、11,如果都失败,则会重复STEP7-SETP11,重复5次失败,则只能通过JTAG启动。 关于启动的具体协议,可以查看官方对应的资料,内有详细说明,用户可以根据协议,选择合适的外部芯片,可以是市面上标准的FLASH、EEPROM,也可以是外部的MCU,只要遵循协议理论上都可以正常启动。 这边我们再来看看启动的功耗,启动时序见下图: 有上图可见,从上电到OTP启动到发出第一个广播,总耗时146ms,当然,如果从外部FLASH或者EEPROM启动,则情况会不一样。 我们再来看一下,不同启动方式在功耗、工作电压以及启动时间等方面的不同: 由上图可见,OTP在各方面表现都明显优于FLASH和EEPROM,但缺点也是很明显,不支持OTA;而FLASH的缺点就是电流最大,EEPROM的缺点就是启动时间慢。这些优缺点需要在设计硬件的时候提前考量。 从个人观点来看,FLASH在市面上的产品中应用是最多的,主要是针对需要OTA升级的产品,OTP其次,针对iBeacon等不需要升级的应用比较多,EEPROM再次之,还有一些通过外部CPU的boot方法也有使用。 总之,用哪种启动方法,取决于您对产品的定义,取决于成本限制以及功能需求。 最后要说明一点,虽然官方提供了不同的SPI、UART和I2C管脚供启动选择,但个人还是建议按照以下的参考设计去设计,这样会免去很多的麻烦,原因就不过多解释了。 |
|
|
|
只有小组成员才能发言,加入小组>>
798 浏览 1 评论
999 浏览 1 评论
12431 浏览 0 评论
5882 浏览 3 评论
17674 浏览 6 评论
996浏览 1评论
971浏览 1评论
801浏览 1评论
3834浏览 1评论
999浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-21 23:48 , Processed in 0.831511 second(s), Total 49, Slave 40 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号