打印
[STM8]

中断嵌套

[复制链接]
553|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
dalong168|  楼主 | 2020-12-7 22:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式


#pragma vector=0x14//串口1接收中断
__interrupt void UART1_RX_IRQHandler(void)
{   
  str=UART1_DR;
}


#pragma vector=0x19//TIM4计数溢出更新事件中断响应函数
__interrupt void TIM4_UPD_OVF_IRQHandler(void)
{
    num++;
    TIM4_SR = 0;
    while(1)//在定时器中设置死循环
         ;
}


main()
{................................
  ITC_SPR4=0xcf;//串口1中断软件优先级  次高
  ITC_SPR5=0x7f;//定时器4中断软件优先级 次低

...................................
}

为了提高串口的实时性,做了一个测试,进入TIM4中断死循环后,即使串口1的软件中断优先级高,也不能进入串口1中断,不知什么原因

使用特权

评论回复
沙发
香水城| | 2020-12-9 15:27 | 只看该作者
1、首先你UART中断能不能进;
2、你实际测试代码 跟你贴出的 是一样的吗?

使用特权

评论回复
板凳
643757107| | 2020-12-9 16:36 | 只看该作者
先确保单独的中断没问题。

使用特权

评论回复
地板
wiba| | 2021-1-5 12:35 | 只看该作者
停掉time4可以进入串口中断吗

使用特权

评论回复
5
zljiu| | 2021-1-5 12:36 | 只看该作者
在tim中的中断加一点延迟试试呢

使用特权

评论回复
6
coshi| | 2021-1-5 12:38 | 只看该作者
是说的在中断里边有一个死循环吗

使用特权

评论回复
7
aoyi| | 2021-1-5 12:39 | 只看该作者
为什么要在中断里边有一个死循环呢

使用特权

评论回复
8
drer| | 2021-1-5 12:40 | 只看该作者
首选确认串口中断使能了没有

使用特权

评论回复
9
gwsan| | 2021-1-5 12:41 | 只看该作者
试试加不同长度的延时

使用特权

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

本版积分规则

58

主题

183

帖子

2

粉丝