首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >LibOpenCM3向量表都是阻塞处理程序。

LibOpenCM3向量表都是阻塞处理程序。
EN

Stack Overflow用户
提问于 2016-12-21 07:21:03
回答 1查看 1.1K关注 0票数 1

这个问题的答案在这里

基于Libopencm3的STM32F4中断表

很好地解释了整个机制,但我得到的是包含阻塞处理程序的整个向量表。

我之所以知道这一点,是因为我在调试器中看到了它(除了所有不起作用的事情):显示向量表的反汇编屏幕截图

这就好像链接器忽略了我定义得很好的中断处理程序函数,例如:

代码语言:javascript
复制
void sys_tick_handler(void)
{
...
}

void tim1_up_isr(void)
{
...
}

我正在使用EmBitz IDE,并遵循本教程这里使libopencm3工作(除了这个问题外,它确实有效)。

我已经检查了函数名n-折叠,并尝试了几个在线例子,包括那些来自libopencm3 3-示例项目。

所有的东西都是在没有故障的情况下编译的,并加载到目标板(STM32F103C8)中,并且运行良好--除非没有调用ISRs (我确实得到中断,但它们被阻塞处理程序卡住了)。

,有人知道为什么会这样吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-09 10:51:56

它看起来像与标准向量表(来自ST的SPL或HAL)的链接。

要检查这一点,请尝试将sys_tick_handler()重命名为SysTick_Handler(),将tim1_up_isr()重命名为TIM1_UP_IRQHandler()

如果它有效,使用此SysTick_HandlerTIM1_UP_IRQHandler查找文件(我认为,这将是startup*.s)并将其从项目中删除。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41257183

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档