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

紧急求助STM8S003定时器4中断

[复制链接]
爱随缘 提问时间:2018-8-28 21:30 /
本帖最后由 爱随缘 于 2018-8-29 13:49 编辑

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

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



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




感谢各位大神已经解决了附上解决图片:
3333.png
收藏 1 评论5 发布时间:2018-8-28 21:30

举报

5个回答
wenyangzeng 回答时间:2018-8-28 21:48:19
如果写在主函数中,这个stm8_interrupt_vector.c就应该卸载才是。

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

tyhjrwx2011 回答时间:2018-8-28 23:07:17
我猜楼主是想问C语言语法,怎么定义在另一个文件中?
最简单的方法,用extern声明...

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

feixiang20 回答时间:2018-8-29 02:36:44
既然看了很多资料,那中断可否尝试用语句引用呢,调用函数可以在stm8s_it.c里面写。主程序里写也可以

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

jyl_518 回答时间:2018-8-29 08:11:27
我是这么搞的,给你参考下

  1. INTERRUPT_HANDLER(TIM4_UPD_OVF_BRK_IRQHandler, 23)
  2. {
  3.   TIM4_ClearITPendingBit(TIM4_IT_UPDATE);
  4.   
  5. //代码
  6. }
复制代码

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

仙景 回答时间:2018-8-29 09:08:45
外部调用肯定用extern,这是c语言。@for是寻址,在中断只是声明而已,其他地方调用要extern

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版