EDA365电子论坛网
标题:
210x 的各功能均试验完毕,想知道是否可以远程更新
[打印本页]
作者:
Dollche
时间:
2023-2-27 10:18
标题:
210x 的各功能均试验完毕,想知道是否可以远程更新
目前 210x 的各功能均试验完毕,现在想知道的是其 IAP 功能是否可以向 PSD 产品那样实现远程的程序更新 如果可以,那么当程序代码写入 FLASH 后如何让程序转到更新后的
8 [3 u* W) O( |2 T1 m* ~: I
程序 PSD 是通过寄存器来完成转换的,那么 210x 如何实现呢 比如 210x 的程序是从 0
/ x! S, y4 j Y: D1 q4 m
地址开始执行的,假如原代码长 2FFFH,现在更新后的程序长 3500H,那么在 IAP 时只能
+ j+ R5 [$ M4 s4 j4 v" V
将代码写到非 00000000~00002FFFH 区域 FLASH 中,写完后该如何让当前程序停止而转到
+ ~( n; o# t/ }# v9 V
更新后的程序呢 PSD 产品是因为有 2 块存储器,在执行当前存储器中程序时可对另块
2 o# ? G- v5 J* l$ A0 _$ i! I6 P
存储器写操作,写完后在将执行权交给另块存储器.
* U( C6 M" _$ i$ F( V
: M5 X: [9 \) l
作者:
Ele_insect
时间:
2023-2-27 11:01
如果,你的程序较小(64k),你就把它当作两块独立的 FLASH(多个扇区).
# K- O1 D& L+ z* m
写入其中一块,另一块空着...
; X" p/ U ^4 D) a0 X# g
程序开始执行的时候,判断哪一块是最新的,跳转过去就行了!
% R! l4 S' ?$ V3 A3 S# M0 K. G9 m
一旦从外界收到"更新程序"的命令,检验数据,更新另外一块,就行了!
1 y6 J: X, ~6 K$ j
接收完毕,烧写结束,写入最新程序标志.立即跳过去.
! J8 o6 @, w5 L8 }" W* _
下一次开机,执行最新的.
0 |7 f4 Y' y3 F2 s! l
这个方法,比较安全.可以防止中途通讯结束,复位等.
! `' @. }1 _* A. w' f2 \2 k8 h4 X8 r
如果你的程序比较大,有点悬……至少,在某些干扰环境下,不要那么做.
作者:
tick_tock
时间:
2023-2-27 13:47
远程更新允许将许可间隔更改为数月、数周或数天
欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/)
Powered by Discuz! X3.2