可以通过CAN总线来升级MCU的固件程序吗?

可以通过CAN总线来升级MCU的固件程序吗?,第1张

CAN 是Controller Area Network 的缩写,是ISO国际标准化的串行通信协议。MCU固件更新现在的各类设备中的固件更新手段多种多样:机顶盒和电视机多采用U盘和SD卡更新,手机和平板电脑采用OTA和网络方式更新,小型设备采用串口/USB下载更新。你是不是想用VB编制一个串口通讯程序,对一大批MCU固件来进行更新升级。VB 可以向计算机的串口发出需要的数据,就看外设的固件能不能接收。

       电信原IOT平台(180.101.147.115)已经不在推广,只维持老客户应用,许多应用已经进行了裁剪,比如历史数据存储只保留2天(19年的时候还保留7天)。现在(20年)电信只推广自己的AEP平台(www.ctwing.com,221.229.214.202),所有的应用&更新全部在该平台上,相对于IOT平台支持&功能有很大提升,如历史数据可存储30天。

       用户在实际应用中单独升级模组固件很少,因为系统一般稳定之后模组固件不会变更,更多的是用户MCU的程序升级。这里针对OpenCPU的应用做Fota升级测试。

       为了测试Fota是否成功,这里编写2个程序,分别打印V1.0和V2.0。

       V1.0功能:上电打印V1.0,AEP驻网、通信,模组不休眠

       V2.0功能:上电打印V2.0,无其他 *** 作

      V1.0版本的程序(原版本程序)需要连接AEP,才能进行AEP的FOTA升级。V2.0版本的程序只是打印,以为只作为测试是否成功,所以没有加入连接AEP的功能。

       参考文档《高新兴物联ME3616_WelinkOpen WeFOTA 接口开发指导_V1.3》第3章,制作差分包的工具是"IOTdeltaTool2.0_test.jar",制作方法文章中有详细步骤说明。

      参考文档《远程升级示例及详情说明》,不过该部分文档是针对模组厂商使用,是模组内部的交互流程,但普通用户可以查看对应界面上传差分包位置。

       "产品"-->"远程升级管理"-->" 固件管理 "-->"创建固件"

 "产品"-->"远程升级管理"-->"创建任务"

总觉得这些步骤在哪个文档上看到过,找不到了。

此时在"已选择设备"可以看到添加的模组

此时查看模组打印的信息

      V2.0的程序,不能上电立即驻网,因为模组升级成功后会自行重新驻网(内部设计问题,他怎么知道升级后要连接哪个平台呢,而且容易和用户的程序起冲突),如果用户重新驻网->注册平台会和模组内部固件冲突,导致无法上报"升级完成"信息,进而平台一直显示"升级中..."(不过根据刚刚测试,升级完成后与平台交互还是有些问题)

      IOT的差分包,按照刚刚的流程制作update.zip之后 ,还有修改名字为update.bin,然后通过signaltool进行签名,才是要上传的差分包(容易出错点)。

主板烧录和芯片烧录是两种不同的烧录方式。

主板烧录是指将固件(程序)写入主板芯片组中,如BIOS,部件固件等。主板烧录通常用于安装和更新 *** 作系统,安装驱动程序以及更新主板上用于运行硬件的BIOS。

芯片烧录是指将特定的固件(程序)写入某种类型的可编程芯片中,如FPGA,ePAL,MCU等。芯片烧录通常用于更新芯片的软件程序,或设计新的控制器程序。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11806279.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存