打印
[STM32F0]

在中断清除某个变量,有时候清除不了

[复制链接]
797|23
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
spark周|  楼主 | 2021-5-6 22:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用的是stm32f030芯片

使用特权

评论回复
沙发
juventus9554| | 2021-5-6 22:48 | 只看该作者

楼主详细说说怎么回事啊,这么说太笼统了

使用特权

评论回复
板凳
spark周|  楼主 | 2021-5-6 22:54 | 只看该作者
问题是这样的,串口收数据,波特率9600,开始收数据时候,在主程序中就进入一等待程序,出现问题时候,等待程序还没收完全部数据就退出来了

使用特权

评论回复
地板
yszong| | 2021-5-6 22:57 | 只看该作者
原因就是在中断中

使用特权

评论回复
5
stly| | 2021-5-6 22:59 | 只看该作者
没有执行A=0;

使用特权

评论回复
6
xxrs| | 2021-5-6 23:02 | 只看该作者
或者执行了,没起作用。

使用特权

评论回复
7
spark周|  楼主 | 2021-5-6 23:04 | 只看该作者
这种情况并不是每次都出,是偶尔的

使用特权

评论回复
8
zhaoxqi| | 2021-5-6 23:06 | 只看该作者
每收一个字节都会进入中断程序?

使用特权

评论回复
9
spark周|  楼主 | 2021-5-6 23:08 | 只看该作者
嗯,变量A用Volatile修饰没有效果。

使用特权

评论回复
10
chuxh| | 2021-5-6 23:11 | 只看该作者
可能问题出在哪了呢?

使用特权

评论回复
11
spark周|  楼主 | 2021-5-6 23:14 | 只看该作者
A为什么赋值失败呢?

使用特权

评论回复
12
renyaq| | 2021-5-6 23:17 | 只看该作者

楼主程序可以公开吗?贴程序看下吧,这么说看不出什么原因

使用特权

评论回复
13
spark周|  楼主 | 2021-5-6 23:19 | 只看该作者

uint8_t  A=0;


while(A<=150){                //等待1.5mS
        IWDG_ReloadCounter();
        delay_us(10);
    A++;        
                     }                        




void USART1_IRQHandler(void)
{
        if(USART_GetITStatus(USART1, USART_IT_RXNE) == 1)
        {                                                                        
       A=0;         
            }                }

使用特权

评论回复
14
zhanghqi| | 2021-5-6 23:21 | 只看该作者
中断初始化哪里不对吧

使用特权

评论回复
15
wyjie| | 2021-5-6 23:23 | 只看该作者
是不是中断向量指向有问题呢

使用特权

评论回复
16
zwll| | 2021-5-6 23:29 | 只看该作者
开总中断了吗

使用特权

评论回复
17
chuxh| | 2021-5-6 23:31 | 只看该作者
程序的问题

使用特权

评论回复
18
spark周|  楼主 | 2021-5-6 23:34 | 只看该作者

其实还是不大明白,我再琢磨琢磨吧,多谢了哈先

使用特权

评论回复
19
keaibukelian| | 2021-6-1 21:16 | 只看该作者
有些变量是没办法手动改变的

使用特权

评论回复
20
labasi| | 2021-6-1 21:19 | 只看该作者
非常简单的代码啊

使用特权

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

本版积分规则

821

主题

10121

帖子

4

粉丝