求助!!HC32L136 无法进入外部中断

[复制链接]
4393|7
手机看帖
扫描二维码
随时随地手机跟帖
longggggg|  楼主 | 2021-6-24 16:58 | 显示全部楼层 |阅读模式
求助!!!各位大哥们!!!同一份工程文件在Keil IDE下,编译后,能够正常运行,但是通过 ARM DS-5编译后,无法正常进入外部中断

1. 通过查看配置的中断相关寄存器,寄存器是配置成功的

使用特权

评论回复
martinhu| | 2021-6-24 18:48 | 显示全部楼层
ARM DS-5是啥?

使用特权

评论回复
毛毛虫小可爱| | 2021-6-25 08:53 | 显示全部楼层
你是非主流啊

使用特权

评论回复
longggggg|  楼主 | 2021-6-25 10:46 | 显示全部楼层

eclipse DS-5 IDE

使用特权

评论回复
longggggg|  楼主 | 2021-6-25 10:50 | 显示全部楼层
问题解决了,eclipse 的工程配置下,默认编译时会移除没有使用部分,导致中断回调函数被移除,无法正常进入中断回调函数中,去掉该选项配置,就可以正常使用,但明明重写了中断函数,却被认为时没有使用的部分,这个还有待研究。
5193260d54463ede32.png

使用特权

评论回复
评论
longggggg 2021-6-25 11:31 回复TA
@longggggg :补充一点,官方系统库用weak定义没问题,只需要在实现中断函数的位置,重新用extern定义就可以了 
longggggg 2021-6-25 11:17 回复TA
@martinhu :刚刚弄懂,是这样的,官方系统库提供的自定义中断函数采用了weak定义,而不是extern,导致外部重写时,并不是重写该中断函数,而是仅仅定义一个普通函数。 在中断回调中,无法正常调用,那么重写函数也就没有被使用,所以被编译器优化去掉了 
martinhu 2021-6-25 11:13 回复TA
是不是因为有week? 
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

5

帖子

0

粉丝