打印
[PIC32/SAM]

ATSAME5X 双bank flash 的OTA例程

[复制链接]
12997|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
GYGD|  楼主 | 2020-1-31 10:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
求ATSAME5X 双bank flash 的OTA例程,哪位大侠能否支持下,学习下。

使用特权

评论回复
沙发
xuanhuanzi| | 2020-1-31 17:24 | 只看该作者
先找个官方的OTA参考啊。

使用特权

评论回复
板凳
zhuomuniao110| | 2020-1-31 22:08 | 只看该作者
没玩过这种方法。

使用特权

评论回复
地板
zlzilla| | 2020-2-4 11:21 | 只看该作者
OTA设计1)固件下载流程,2)Flash分区/读写/切换,对于Flash的操作,SAMD5x/E5x的Dual Bank实现起来是非常简单的,可以参考一下AliOS-Things的Demo:
1. Flash划分https://github.com/alibaba/AliOS-Things/blob/rel_3.0.0/board/atsame54-xpro/board.c,此Demo将1MBytes的Flash分成了480K*2作为AB分区切换使用,4K+8*3K做为参数保存使用,当然还要调整相应Link文件 https://github.com/alibaba/AliOS-Things/blob/rel_3.0.0/platform/mcu/atsamd5x_e5x/Drivers/gcc/gcc/same54p20a_flash.ld
2. Flash读写,参考https://github.com/alibaba/AliOS-Things/blob/rel_3.0.0/platform/mcu/atsamd5x_e5x/hal/hal_flash_port.c
3. BANK切换其实就一条寄存器设置:https://github.com/alibaba/AliOS-Things/blob/rel_3.0.0/platform/mcu/atsamd5x_e5x/hal/misc.c#L47,参考这个Reboot函数就好了,主要判断是否需要切换BANK,如果是就调用Bank Swap寄存器设置
所以对于Flash的操作(规划分区/读写/切换)只要参考上面的设置就好了。

最主要是OTA的下载的部分,这部分属于应用层的设计,只能根据你们实际需求来做了,当然也可以参考AliOS-Things的流程,不过这个demo由于用到了阿里的IoT服务,所以里面还牵扯了很多登录认证,传输加密,MQTT消息传输,WIFI连接,TCP/IP协议栈等流程。有点小复杂,主要看你们的需求了。2018的Master里有介绍ATSAME54+ATWILC1000跑通OTA的步骤(https://bbs.21ic.com/icview-2524156-1-1.html),里面有用到阿里的云服务,可以参考一下。

使用特权

评论回复
5
GYGD|  楼主 | 2020-2-4 13:36 | 只看该作者
zlzilla 发表于 2020-2-4 11:21
OTA设计1)固件下载流程,2)Flash分区/读写/切换,对于Flash的操作,SAMD5x/E5x的Dual Bank实现起来是非常 ...

TKS,先学习下

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

22

主题

110

帖子

0

粉丝