打印
[STM8]

关于STM8 IAP的注意事项

[复制链接]
3112|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
qiujiahongde|  楼主 | 2013-4-5 22:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用ST官方固件做IAP主要要注意的问题是块操作,和64K以上地址访问;
1、使能块操作在RAM中运行,打开宏定义“#define RAM_EXECUTION  (1) ”;同时这里需要注意的是块操作数据源也必须在RAM中,如果不是,则先拷贝到RAM中再执行;
2、在库的FLASH操作函数中有如下代码:
*((PointerAttr uint8_t*) (uint16_t)startaddress + Count) = ((uint8_t)(Buffer[Count]));
这里(uint16_t)这个强制转换存在问题,因为如果地址值超过了64K,则16位无法表示;做如下修改:
*((PointerAttr uint8_t*) (uint32_t)startaddress + Count) = ((uint8_t)(Buffer[Count]));
我做IAP遇到就是这两个问题,记录下来,希望能对大家有所帮助。
沙发
iCreate| | 2013-4-5 22:07 | 只看该作者
做出来了吗IAP

使用特权

评论回复
板凳
qiujiahongde|  楼主 | 2013-4-5 22:42 | 只看该作者
做出来了,GPRS远程升级!!

使用特权

评论回复
地板
cjhk| | 2013-4-6 19:19 | 只看该作者
牛人   远程升级   呵呵  以前用430单片机时   玩过  呵呵   STM的芯片也能这样玩   不错   呵呵

使用特权

评论回复
5
cjhk| | 2013-4-6 19:19 | 只看该作者
有时间   楼主把项目共享一下   呵呵    顶一个   呵呵

使用特权

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

本版积分规则

个人签名:单片机技术交流群:142282597(入群请自觉修改网名,所在地+网名,如:深圳-Q)

4

主题

113

帖子

1

粉丝