爱随缘 发表于 2018-8-28 21:30:31

紧急求助STM8S003定时器4中断

本帖最后由 爱随缘 于 2018-8-29 13:49 编辑

我用的是STVD,一直研究定时器4中断,网上找了很多资料,现在是定时器4中断可以正常工作,但是中断函数只能写在stm8_interrupt_vector.c这个里面,如果写到主函数就会报错,请各位大神帮忙看下如何调用才能放到主函数使用。


然后我附上定时器4无法工作的原因,是因为需要修改stm8_interrupt_vector.c里面的23号名称,修改成任意,然后在里面写中断函数就可以了,我现在问题就是这个函数怎么调用出来,感谢各位大神



我只要把中断函数直接写到主函数就会报错,以下是报错图片:





感谢各位大神已经解决了附上解决图片:

wenyangzeng 发表于 2018-8-28 21:48:19

如果写在主函数中,这个stm8_interrupt_vector.c就应该卸载才是。

tyhjrwx2011 发表于 2018-8-28 23:07:17

我猜楼主是想问C语言语法,怎么定义在另一个文件中?
最简单的方法,用extern声明...

feixiang20 发表于 2018-8-29 02:36:44

既然看了很多资料,那中断可否尝试用语句引用呢,调用函数可以在stm8s_it.c里面写。主程序里写也可以

jyl518-283289 发表于 2018-8-29 08:11:27

我是这么搞的,给你参考下

INTERRUPT_HANDLER(TIM4_UPD_OVF_BRK_IRQHandler, 23)
{
TIM4_ClearITPendingBit(TIM4_IT_UPDATE);

//代码
}

liu553824989 发表于 2018-8-29 09:08:45

外部调用肯定用extern,这是c语言。@for是寻址,在中断只是声明而已,其他地方调用要extern
页: [1]
查看完整版本: 紧急求助STM8S003定时器4中断