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

如何添加一个中断服务函数?

[复制链接]
ltzzl 提问时间:2024-5-9 09:44 / 未解决

在hal库的core_cm0.h文件中找到两个函数

 #define NVIC_SetVector              __NVIC_SetVector
  #define NVIC_GetVector              __NVIC_GetVector

可以在中断向量表中添加中断通道号。但是没有找到绑定中断源和中断通道号的地方。用户是否能自己添加中断服务函数?

收藏 评论3 发布时间:2024-5-9 09:44

举报

3个回答
butterflyspring 回答时间:2024-5-9 10:11:08
中断向量表是根据硬件设计,一一相对的。如果楼主是想添加中断向量函数的话,可以参考库中例程,
重点看看 STM32XXX.S ;STM32XXX it.h;STM32XXXit.c
灰泥鳅 回答时间:2024-5-9 13:39:35

STM32的中断服务函数都是在.s文件中关联的,你可以在其中找到对应的名称。比如对于STM32F407这个芯片,它的启动文件是startup_stm32f407xx.s。以HardFault_Handler为例,可以看到它被定义为WEAK形式。

image.png

用户只需要在自己的.c文件,通常是xxxit.c文件对其重新定义即可:

image.png

ltzzl 回答时间:2024-6-4 09:21:21

butterflyspring 发表于 2024-5-9 10:11
中断向量表是根据硬件设计,一一相对的。如果楼主是想添加中断向量函数的话,可以参考库中例程,
重点看看  ...

所以是只能修改现有的中断函数,而不是添加新的,因为硬件已经固定住了。对吗?

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版