概述 上位机使用Qt开发,计划整合多个工具为一体,用作以后的调试工具。 当前完成功能: 1、串口调试 支持hex和ascii 码发送,接受. 支持自动添加回车换行. 支持定时发送,最短间隔100ms,最大2000ms。 2、Ymodem IAP升级 选择文件,启动升级之后会间隔100ms 向下位机发 ...
分类:
其他好文 时间:
2019-08-27 23:05:01
阅读次数:
414
BootLoader大家应该都知道是干什么的,简单的来说就是程序开始运行前的一段程序。 在成熟的产品中,通常都是采用BootLoader方式来升级产品的程序。也就是IAP升级。在了解完基本的实现原理后,可以做到用上位机升级(一般的产品大多采用这种方式,显得非常专业有专用的升级软件,其实背后原理就是B ...
分类:
其他好文 时间:
2019-02-20 20:14:11
阅读次数:
703
网上很多关于Ymodem协议的,有部分是错误的,以下是经过本人亲自编写的程序,测试可用。目前单片机作为接受端,用于IAP升级,发送还没写。另外对于终止传送也还没写,正常情况接收是完全没问题的。 平台:stm32f101v8 超级终端 keil 首先超级终端中Ymodem协议是这样的,定义单片机位接受 ...
分类:
其他好文 时间:
2018-05-31 16:14:53
阅读次数:
3132
一、原理 1、在正常情况下,程序运行路流程: 和STM32类似,STM8内部闪存(FLASH)地址起始于 0x8000(STM32是0x08000000),一般情况下,程序文件就从此地 址开始写入,通过一张“中断向量表” 来响应中断,程序启动后,将首先从“中断向量表”取出复位中断向量,执行复位中断程 ...
分类:
其他好文 时间:
2017-06-29 19:24:11
阅读次数:
125
一、CRC校验的使用 STM32内置CRC计算单元,节约了软件计算的时间。在软件开发中,可以为firm追加4字节的CRC校验码到生成的BIN文件最后位置,这个CRC码就是全部代码区域数据的CRC校验值。 在代码执行之前,可以校验CRC是否通过,不通过则说明代码完整性出现错误。尤其在代码IAP升级应用 ...
分类:
其他好文 时间:
2017-03-28 22:57:14
阅读次数:
649
因为之前写个stm32的IAP升级程序,所以我总结了做IAP升级的三个主要的难点:
1、如何设置中断向量,也就是说中断向量的重定向
2、如何配置程序的起始地址
3、如何从IAP跳转到APP程序
4、使用库函数要注意的地方(防止被坑)
说文章的时候我已经完成了一个最简单的IAP升级程序,可以通过串口接收bin文件写入到flash里面,然后再运行。
1、如何设置中断向量,也就是说中断向量的...
分类:
移动开发 时间:
2016-05-07 10:29:31
阅读次数:
1204
IAP升级功能编写初期的一些困惑与疑问---完成功能后的总结
一,网上下载的例程,跳转部分的代码有差异,尤其是用的汇编那句
二,关于跳转部分的代码的理解(转)
三,关于跳转时能否不用按键,用软件标志位以及APP与IAP之间的互跳
四,关于APP与IAP互跳之间的中断处理问题...
分类:
其他好文 时间:
2014-06-22 16:44:41
阅读次数:
9566
编写IAP升级遇到的问题总结
一,串口通信问题
二,FLASH问题
三,数组越界问题
四,总结一下在IAP升级中APP程序的中断向量表的偏移...
分类:
其他好文 时间:
2014-06-21 23:28:33
阅读次数:
2274