硬汉嵌入式论坛

 找回密码
 立即注册
查看: 5364|回复: 7
收起左侧

[UART] 使用STM32H743的USART2,进入一次以后,就再也进不了中断了

[复制链接]

5

主题

11

回帖

26

积分

新手上路

积分
26
发表于 2019-3-14 21:50:47 | 显示全部楼层 |阅读模式
使用STM32H743的USART2,在接收中断里设置断点,能进入中断。进入一次以后,就再也进不了中断了。有人遇到过这样的问题么?
问题表现
1、全速运行USART2通过中断能够接收到正确的串口数据。
2、运行一段时间后,就接收不到数据了。
3、在接收中断里设置断点,能够进入。之后全速运行,就再也进不了中断了。

用的HAL库
回复

使用道具 举报

36

主题

2040

回帖

2148

积分

至尊会员

积分
2148
发表于 2019-3-14 22:31:23 来自手机 | 显示全部楼层
如果自己管理中断的话,各种开启的中断标志别忘了清除。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106978
QQ
发表于 2019-3-15 01:57:20 | 显示全部楼层
等我们的V7教程和配套例子发布,有一个8串口FIFO的,都做支持了。

ps:帮你修改了下题目,题目有点长
回复

使用道具 举报

5

主题

11

回帖

26

积分

新手上路

积分
26
 楼主| 发表于 2019-3-15 07:45:01 | 显示全部楼层
eric2013 发表于 2019-3-15 01:57
等我们的V7教程和配套例子发布,有一个8串口FIFO的,都做支持了。

ps:帮你修改了下题目,题目有点长:han ...

快点能呀,弄好了,买一块来做验证用。谢谢了
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106978
QQ
发表于 2019-3-15 09:57:53 | 显示全部楼层
hover_sky 发表于 2019-3-15 07:45
快点能呀,弄好了,买一块来做验证用。谢谢了

25号
回复

使用道具 举报

0

主题

1

回帖

1

积分

新手上路

积分
1
发表于 2020-11-19 09:47:43 | 显示全部楼层

Eric你好,能否请教一个问题,就是串口在波特率200K以上的时候会出现串口溢出中断,导致程序一直在中断里,查了资料发现要清除溢出中断,但是清除之后虽然不会卡死在中断里,但是会丢失数据,随着波特率的提高丢失会越来越严重,目前我测试到160K就不行了,请问这是什么原因导致的呢?是软件中断里处理函数的问题还是硬件不支持的问题?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106978
QQ
发表于 2020-11-19 13:58:24 | 显示全部楼层
夏虫不言 发表于 2020-11-19 09:47
Eric你好,能否请教一个问题,就是串口在波特率200K以上的时候会出现串口溢出中断,导致程序一直在中断里 ...

大概率是程序设计问题,你看看是不是哪里设置不合理。可以用我们的bsp_uart_fifo.c搞下
回复

使用道具 举报

5

主题

192

回帖

212

积分

高级会员

积分
212
发表于 2020-11-19 14:13:27 | 显示全部楼层
夏虫不言 发表于 2020-11-19 09:47
Eric你好,能否请教一个问题,就是串口在波特率200K以上的时候会出现串口溢出中断,导致程序一直在中断里 ...

你是什么应用,需要200K的波特率?串口常用的也就115200,200K波特率这么大如果你是IT模式的话串口中断优先级不高的话被其他中断打断比如定时器,ADC等处理其他中断程序导致你的串口RXNE触发数据没有及时取走,ORE错误,如果你的缓冲区足够大,像这么大波特率的串口数据应该是连续持续采样?还是走协议的?连续采集可以设置DMA模式,而且DMA支持双缓冲区。如果是走协议,建议你把串口的中断优先级提到最高,把其他中断的优先级降低
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-13 00:02 , Processed in 0.169535 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表