STM32:如何关联:“stm32f10x_vector.c”文件?

bobowoya   2007-11-15 12:15 楼主
在 STM32 Firmware library 目录:
...STM32F10xFWLibFWLibprojectRIDE  有一个
stm32f10x_vector.c  文件, 这个 ..._vector.c  就是跟
中断向量有关的吧。

对于 Ride7 编译环境, 这个 “stm32f10x_vector.c ”  是怎样 跟

其他 源程序 关联的呢?  好象没有 加入 Ride工程文件。 

我试过 把它加进去 , 但是 编译不能通过。

而 另外两个编译器 的工程 文件所在目录也有 “stm32f10x_vector”.

关于这个 stm32f10x_vector.c 文件, 是怎样处理的呢?

回复评论 (5)

请看那个目录里的readme.txt文件

以下是这个文件的内容:

/******************** (C) COPYRIGHT 2007 STMicroelectronics ********************
* File Name          : readme.txt
* Author             : MCD Application Team
* Version            : V1.0
* Date               : 10/08/2007
* Description        : This sub-directory contains all the user-modifiable files 
*                      needed to create a new project linked with the STM32F10x  
*                      Firmware Library and working with RIDE7(version:1.01.0002)
********************************************************************************
* THE PRESENT SOFTWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE
* CONTENT OF SUCH SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
*******************************************************************************/

Directory contents
===================
- project .rprj/.rapp: A pre-configured project file with the provided library 
                       structure that produces a debug elease executable image
                       with RIDE7.
                
- stm32f10x_vector.c: This file contains the vector table for STM32F10x.
                      
- cortexm3_macro.s: Instruction wrappers for special Cortex-M3 instructions. 

      
How to use it
=============
- Open the Project.rprj project.
- In the configuration toolbar(Project->properties) select the project config:
   - BOOT_FLASH: to load project image into FLASH
   - BOOT_RAM: to load project image into RAM
- Rebuild all files: Project->build project
- Load project image: Debug->start
- Run program: Debug->Run(ctrl+F9)   

******************* (C) COPYRIGHT 2007 STMicroelectronics *****END OF FILE******
点赞  2007-11-15 13:33

仍然不明白怎样关联中断处理函数的

在 readme.txt 文件里,关于 vector  只描述了一句: 
- stm32f10x_vector.c: This file contains the vector table for STM32F10x.
在工程属性设置里,也找不到 相关设置。

目前的 情况是, 我 把 Firmware library  下 examples 的  "systick"  
文件夹 的 源程序 拿过来 ,新建 一个 RIDE 工程,修改部分代码,可以在
Primer 上成功运行, 使用上了 SysTickHandler( ) 这个中断服务函数。
而,stm32f10x_vector.c 这个函数没有包含进去, 甚至 把这个文件 删除,仍然可以成功中断。

但是,只要 稍修改 SysTickHandler() 函数名,例如SysTickHandler00(),就不能 成功 中断,Primer 不能产生预期的运行效果。 
(这个SysTickHandler() 函数在stm32f10x_it.c 中定义,加入到了工程)。

  现在的问题是,怎样使“ SysTickHandler()”等stm32f10x_it.c 中定义的函数 成为中断服务函数? 
    
  (在Keil for arm 编译器里,是在 “Startup file ”里面定义的。)
   Ride 的 还 不明白。
  

点赞  2007-11-15 15:31

请使用提供的工程模板来修改,不要自己新建工程

我们没有用过RIDE,不能回答你的具体问题。

提供的工程模板中包含了相关文件的引用,你把工程模板拷贝到你自己的目录中再进行修改、添加文件即可。
点赞  2007-11-15 16:10

好的。谢谢。

 哈哈,已经有进展了。特别 感谢 浪大哥 的帮 忙。

  特别高兴的是,使用 ST 网站上的 
 “STMicroelectronics Flash Loader Demonstrator”工具可以升级我的Keil STM32评估板了。 
  原本以为要 买 ULINK 或 JLINK 呢。

   Primer 是使用 RIDE 编译的 , ST 评估板 是使用IAR EWARM 吧?

而 KEIL 评估板 是 使用 Keil for arm 的。

     

   

  
点赞  2007-11-15 16:38

是的,是 RVMDK。

它 的 IDE  是  uVision 环境。



点赞  2007-11-16 17:15
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复