共2条
1/1 1 跳转至页
【求助】程序升级。在线等待!!!

问
我看这里以前的帖子,许多人多说,在升级的时候,要把通信和自编程部分放到ram中执行。
我不明白这是为什莫?清哪位给指点一下。谢谢。
我自己写了一个程序,我认为不用放到ram中执行也可以实现通信。
我的思路如下:
将flash分为两部分,一部分为主程序,一部分为通信程序。上电后,执行通信程序,如果要升级,就从上位机接收数据,等受到512后,就将flash中主程序部分擦出一块,将新数据写入。接受完之后,在执行新的升级的程序。
这样根本不用把通信部分放到ram中。
我不知道,我这样想是不是有什莫错误?清哪位给指点一下。谢谢。 答 1: 怎样生成txt文件.好象叫这个名字。我只知道,将文件数据放到flash中就可以执行。
好像是option,link,other 答 2: 帮帮忙,谢谢。 答 3: 用BSL就可以实现升级,请参见:http://www.lierda.com/fzq/left_main3.php#BOOTSTROP 答 4: 引用: 答 5:
引用:
答 6:
"将flash分为两部分,一部分为主程序,一部分为通信程序。上电后,执行通信程序,如果要升级,就从上位机接收数据"
我想问一下:你的程序是否这样子:上电看是否需要升级,如果有的话就升级,否则就运行主程序? 答 7: 但是通信程序刷新新的主程序后怎么跳转是个问题哎?直接跳转好象行不通,通过中断? 答 8: 可以通过对wdt进行错误操作使cpu*rst。 答 9: 我也有同样的思想,我正把自己的程序分成BIOS和OS 2部分呢
可以参考PC机在DOS时代的中断表跳转模式,建立一个启动流程调用顺序表,bios和os共享中断表都拥有访问和修改权限 答 10: 引用: 答 11: 好啊!大家再讨论一下!前些日子忙!没来这里! 答 12: maya_zhao_2004163.com
很高兴向大家学习。
我不明白这是为什莫?清哪位给指点一下。谢谢。
我自己写了一个程序,我认为不用放到ram中执行也可以实现通信。
我的思路如下:
将flash分为两部分,一部分为主程序,一部分为通信程序。上电后,执行通信程序,如果要升级,就从上位机接收数据,等受到512后,就将flash中主程序部分擦出一块,将新数据写入。接受完之后,在执行新的升级的程序。
这样根本不用把通信部分放到ram中。
我不知道,我这样想是不是有什莫错误?清哪位给指点一下。谢谢。 答 1: 怎样生成txt文件.好象叫这个名字。我只知道,将文件数据放到flash中就可以执行。
好像是option,link,other 答 2: 帮帮忙,谢谢。 答 3: 用BSL就可以实现升级,请参见:http://www.lierda.com/fzq/left_main3.php#BOOTSTROP 答 4: 引用: 答 5:

我想问一下:你的程序是否这样子:上电看是否需要升级,如果有的话就升级,否则就运行主程序? 答 7: 但是通信程序刷新新的主程序后怎么跳转是个问题哎?直接跳转好象行不通,通过中断? 答 8: 可以通过对wdt进行错误操作使cpu*rst。 答 9: 我也有同样的思想,我正把自己的程序分成BIOS和OS 2部分呢
可以参考PC机在DOS时代的中断表跳转模式,建立一个启动流程调用顺序表,bios和os共享中断表都拥有访问和修改权限 答 10: 引用: 答 11: 好啊!大家再讨论一下!前些日子忙!没来这里! 答 12: maya_zhao_2004163.com
很高兴向大家学习。
共2条
1/1 1 跳转至页
回复
打赏帖 | |
---|---|
嵌入式LinuxC语言程序调试和宏使用技巧被打赏50分 | |
让代码中包含最新的编译时间信息被打赏50分 | |
rtthread硬件加密--2crc加密分析被打赏10分 | |
【分享开发笔记,赚取电动螺丝刀】mcxa156使用低功耗定时器适配硬件RTC框架被打赏26分 | |
【STM32F769】AI之与本地deepseek对接被打赏50分 | |
Buck电路工作在CCM模式下电感电流的计算公式是什么?被打赏5分 | |
buck电路工作原理被打赏5分 | |
基于MSPM0L1306的MODBUS-RTU协议通讯实验被打赏100分 | |
我想要一部加热台+多合一调试工具被打赏18分 | |
每周了解几个硬件知识+485硬件知识分享被打赏10分 |