OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2222|回复: 2

Cube 串口中断

[复制链接]

24

主题

106

帖子

0

精华

高级会员

Rank: 4

积分
637
金钱
637
注册时间
2018-7-13
在线时间
197 小时
发表于 2018-11-9 09:57:04 | 显示全部楼层 |阅读模式
1金钱
本帖最后由 不學會32不改名 于 2018-11-9 14:38 编辑

最近在研究Cube时,做了一个串口接收中断的实验,发现无法进入中断。所以发此贴来寻求帮助。

读取SR寄存器状态时,接收非空中断标志被清0,导致在  这里无法进入中断 if(((isrflags & USART_SR_RXNE) != RESET) && ((cr1its & USART_CR1_RXNEIE) != RESET))    {
      UART_Receive_IT(huart);
      return;
    }


附上我的串口接收中断工程



串口中断函数

串口中断函数
HAL接收中断函数.PNG
HAL进入中断寄存器状态.PNG

读取到的SR寄存器的值

读取到的SR寄存器的值

官方手册

官方手册

HAL_UART.rar

8.18 MB, 下载次数: 7

最佳答案

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

24

主题

106

帖子

0

精华

高级会员

Rank: 4

积分
637
金钱
637
注册时间
2018-7-13
在线时间
197 小时
 楼主| 发表于 2018-11-9 09:57:05 | 显示全部楼层
回复

使用道具 举报

24

主题

106

帖子

0

精华

高级会员

Rank: 4

积分
637
金钱
637
注册时间
2018-7-13
在线时间
197 小时
 楼主| 发表于 2018-11-9 10:06:25 | 显示全部楼层
在手册里面,RXNE清0发生在 读取DR寄存器的值或者手动写0.但是在中断里,并没有读取DR寄存器的操作,它是如何把自己清0的?
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-21 21:16

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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