STM32 中断实现到底是如何执行的

2019-03-23 19:09发布

NVIC_SetVectorTable  这个是STM32的库函数 实现的是 中断向量的重映射,这个东西是怎么访问的,
起始地址是0x08000000  这个是默认的中断向量起始地址, 那么我设置便宜0x1000 呢?
那么 中断 是不是先跳到默认的中断向量然后再跳到 新的中断向量,还是一步到位直接跳到 新的中断向量。网上看了下 就是本论坛的资料 发现 有点模糊,希望各位友人有空给鄙人讲解讲解,鄙人不甚感激! 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
8条回答
Study_Stellaris
2019-03-24 07:24
/**
  * @brief  Sets the vector table location and Offset.
  * @param  NVIC_VectTab: specifies if the vector table is in RAM or FLASH memory.
  *   This parameter can be one of the following values:
  *     @arg NVIC_VectTab_RAM
  *     @arg NVIC_VectTab_FLASH
  * @param  Offset: Vector Table base offset field. This value must be a multiple
  *         of 0x200.
  * @retval None

这个 API  在 stdperipherallib 中的 misc.c 中.
主要是设置 NVIC  的中断向量函数的位置和偏移量.
比如有些人想在 SRAM 中调试程序,就会用这个.
通常用不上.
我现在基本不在 SRAM 中调试程序了,麻烦,没什么太大的意义.

一周热门 更多>