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

STM32F407 USB upgrade问题

[复制链接]
shiyang1212 提问时间:2014-1-10 11:58 /
 大家好,请教下关于stm32f407 软件升级问题
设备:1、官方的discovry的开发板MB997B
             2、官方提供的STM32F4-Discovery_FW_V1.1.0\Project\FW_upgrade 开发包
             3、编译环境使用KEIL MDK
问题:1、利用该程序将自己编译生成的systick的二进制文件下载到0x08008000地址,程序执行COMMAND_JUMP() 后无法启动
            2、使用官方提供的.bin文件就可以,就可以正常运行
            3、我编译的systick的二进制文件时,同时生成的hex文件,利用STM32 ST-LINK Utility 下载到0x0800 0000地址是可以运行的。(侧面论证了用于编译的原程序无任何问题)
            4、编译生成的二进制文件使用的是KEIL自带的二进制生成器来生成的
            5、二进制文件是通过单步仿真下载到0x0800 8000 地址,可以确认二进制.bin文件时下载到片内flash内
            6、大概问题应该是出在自己编译的.bin文件和官方提供的.bin文件存在差异导致(仅个人推断)
 
各位大牛如有遇到过该问题的,请指点指点,谢谢!
 
收藏 评论5 发布时间:2014-1-10 11:58

举报

5个回答
dzc2001 回答时间:2014-1-11 00:28:38

RE:STM32F407 USB upgrade问题

编出来的一样大么?会不会是优化的问题
有缘于你 回答时间:2014-1-11 10:06:55

RE:STM32F407 USB upgrade问题

0x08008000
0x08000000
??
wkuang 回答时间:2014-1-11 23:10:30

RE:STM32F407 USB upgrade问题

问题:1、利用该程序将自己编译生成的systick的二进制文件下载到0x08008000地址,程序执行COMMAND_JUMP() 后无法启动
2、使用官方提供的.bin文件就可以,就可以正常运行
3、我编译的systick的二进制文件时,同时生成的hex文件,利用STM32 ST-LINK Utility 下载到0x0800 0000地址是可以运行的。(侧面论证了用于编译的原程序无任何问题)
---------------------------------------------------------------------------------------------
1、我猜这是笔误。因为0x0800 0000是cortex M3的复位起始地址,用来存放IAP的 ,APP是存放在Boot跳转的位置, 如0x08008000。
2、我猜你的代码无法运行的原因是没有修改中断向量表的映射,在APP的main函数中需要新增一条语句,
void NVIC_SetVectorTable(0x8000000, 0x8000); 用来表示复位/中断发生后,IAP的中断可以映射到APP的 中断 向量表,即可以映射到地址0x08008000。
具体查看datasheet 和stm32的库函数NVIC_SetVectorTable 
 
 
 
wkuang 回答时间:2014-1-11 23:55:44

RE:STM32F407 USB upgrade问题

形象一点可以这么说, 中断发生后(复位也是一种中断) 硬件会自动跳转到0x08000000, 然后找到这个位置的中断向量表,在IAP的初始化中,将中断向量表设置为0x08000000,以后每次中断后, 系统都能找到对应的中断向量。
如果在APP中不重新设置中断向量表为0x08008000,以后发生中断后,中断又映射到地址0x08000000,导致APP的中断无法响应
如果设置了中断向量表,中断发射后映射到地址0x08000000,然后发生有设置的中断映射表在0x08008000,中断重新产生一次映射。
如果需要细究最好看看arm怎么启动的,中断怎么映射的
勒布朗 回答时间:2014-1-13 10:51:02

RE:STM32F407 USB upgrade问题

为啥不用hex呢

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版