首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 嵌入开发 >

startup_stm32f10x_md.s改换为startup_stm32f10x_hd.s的困惑

2012-12-17 
startup_stm32f10x_md.s更换为startup_stm32f10x_hd.s的困惑芯片由STM32F103v更换为STM32F103ZET后 启动文

startup_stm32f10x_md.s更换为startup_stm32f10x_hd.s的困惑
芯片由STM32F103v更换为STM32F103ZET后 启动文件由startup_stm32f10x_md.s替换为startup_stm32f10x_hd.s后,问题随之出现 
1 未更换启动文件即由startup_stm32f10x_md.s在芯片STM32F103ZET上也可以运行正常 
2 但更换为startup_stm32f10x_hd.s后反而工作出错了  
难道更改启动文件后还要做其他改动? 
程序是读写SD卡程序 
望高手点拨 谢了 
[最优解释]
中断向量表有没有改?估计你用到什么中断什么的以前改过,新版本忘记改了,比如: 
新版本 
__Vectors        DCD  __initial_sp              ; Top of Stack 
                 DCD  Reset_Handler 
                 DCD  NMIException 
                 DCD  HardFaultException 
                 DCD  MemManageException 
                 DCD  BusFaultException 
                 DCD  UsageFaultException 
                 DCD  0                 ; Reserved 
                 DCD  0                 ; Reserved 
                 DCD  0                 ; Reserved 
                 DCD  0                 ; Reserved 
                 DCD  SVCHandler 
                 DCD  DebugMonitor 
                 DCD  0                 ; Reserved 
                 DCD  PendSVC 
旧版本 
__Vectors        DCD  __initial_sp              ; Top of Stack 
                 DCD  Reset_Handler 
                 DCD  NMIException 
                 DCD  HardFaultException 
                 DCD  MemManageException 
                 DCD  BusFaultException 


                 DCD  UsageFaultException 
                 DCD  0                 ; Reserved 
                 DCD  0                 ; Reserved 
                 DCD  0                 ; Reserved 
                 DCD  0                 ; Reserved 
                 DCD  SVCHandler 
                 DCD  DebugMonitor 
                 DCD  0                 ; Reserved 
                 DCD  OS_CPU_PendSVHandler; 
对比最后一行,新版本自动生成,而旧版本用的是操作系统,中断向量不同。 
还有就是堆栈的大小需要自己改,看看是否忘记改了如: 
Stack_Size       EQU     0x00002b00 

以上问题是我自己碰到的,看看对你有没有帮助。 

[其他解释]
如果两个芯片的资源和FLASH大小是一样的,那个启动文件其实也可以不用变

热点排行