你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32F0 APP回跳IAP串口中断问题

[复制链接]
qi夏天 提问时间:2017-9-14 10:56 /
本帖最后由 qi夏天 于 2017-9-14 10:57 编辑

最近在做F030的在线升级功能按照网上的资料目前已经完成IAP和APP互相跳转,但是我在APP增加了串口中断后,在APP运行过程中,中断确指向了IAP中,又有时没有中断产生,不知道什么问题,有没有大神遇到过类似问题,还望指教。
下面是相关配置和关键代码

IAP跳转代码

IAP跳转代码

中断向量表

中断向量表

APP配置

APP配置
收藏 2 评论10 发布时间:2017-9-14 10:56

举报

10个回答
回答时间:2017-9-14 11:32:04
有没有重设中断向量?NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x4000);
qi夏天 回答时间:2017-9-14 13:16:24
安 发表于 2017-9-14 11:32
有没有重设中断向量?NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x4000);

M0系列没有中断矢量表重定位寄存器,只能将APP的中断向量表拷贝到SRAM里面去,然后做存储地址的映射,把SRAM映射到代码执行区的地址0X00。就是我贴的第二张图那部分代码。
qi夏天 回答时间:2017-9-14 14:04:06
本帖最后由 qi夏天 于 2017-9-14 14:07 编辑

附件中是基于Stm32f030的demo

stm32-app.rar

下载

7.39 MB, 下载次数: 122, 下载积分: ST金币 -1

回答时间:2017-9-14 14:16:39
楼主,注意一下前几个应该是不能写入的。是不是应该写的地址0x0000 0040开始。我没用过这个芯片,楼主可以考虑先读取一下RAM中保存的向量地址,写入以后是多少。慢慢解决吧,可以考虑直接问ST的技术支持。
MrJiu 回答时间:2017-9-14 14:41:05
只能帮顶。。。。
qi夏天 回答时间:2017-9-14 14:52:07
安 发表于 2017-9-14 14:16
楼主,注意一下前几个应该是不能写入的。是不是应该写的地址0x0000 0040开始。我没用过这个芯片,楼主可以 ...

嗯  好的 谢谢
qi夏天 回答时间:2017-9-14 14:52:27
MrJiu 发表于 2017-9-14 14:41
只能帮顶。。。。

谢谢
chuan199 回答时间:2017-9-15 08:46:03
IAP_ExecuteApp和中斷向量偏移..看起來沒問題…且你也可更新程式
你試看看在boot不要使用中斷,用輪詢試看看

我在boot未使用中斷

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

qi夏天 回答时间:2017-9-18 08:50:07
chuan199 发表于 2017-9-15 08:46
IAP_ExecuteApp和中斷向量偏移 ..看起來沒問題…且你也可更新程式
你試看看在boot不要使用中斷,用輪詢試看 ...

嗯  弄好了 问题还是在跳转之前没有清理干净中断的原因。。谢谢你

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2 结贴奖励

查看全部评分

12下一页
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版