打印
[其他ST产品]

中断向量重复定义怎么处理?

[复制链接]
559|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
stormwind123|  楼主 | 2022-3-3 09:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在MC中准备使用位置控制,配置了一个编码器 和HALL位置检测分别使用TIM4 和TIM3
在生成的工程文件中
/** AUXILIARY HALL TIMER MOTOR 1 *****/
define M1_HALL_TIM_PERIOD 65535define M1_HALL_IC_FILTER 14define SPD_TIM_M1_IRQHandler TIM4_IRQHandler
/** AUXILIARY ENCODER TIMER MOTOR 1 *****/
define M1_PULSE_NBR ( (4 * (M1_ENCODER_PPR)) - 1 )define M1_ENC_IC_FILTER 12define SPD_TIM_M1_IRQHandler TIM3_IRQHandler
这个SPD_TIM_M1_IRQHandler重复定义了。可以编译通过,但因为中断向量表有错,程序在SystemClock_Config();后 就跑飞了。
如果去除其中一个定义,则程序不会跑飞。请问遇到这种情况怎么处理?

使用特权

评论回复
沙发
sparrow054| | 2022-3-3 13:13 | 只看该作者
不会,帮顶

使用特权

评论回复
板凳
香水城| | 2022-3-3 17:41 | 只看该作者
中断矢量表就是一个,它在启动文件里面。

至于每个表项对应哪个函数的地址,启动文件都默认给我们安排好了。

我们只需针对性地准备相应中断服务函数即可。

对你所说的重复定义不是很理解,应该是该用哪个就用哪个。


使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

438

主题

2263

帖子

3

粉丝