OpenEdv-开源电子网

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

串口空闲中断是什么?

[复制链接]

38

主题

109

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
294
金钱
294
注册时间
2014-8-1
在线时间
6 小时
发表于 2015-7-2 20:58:06 | 显示全部楼层 |阅读模式
5金钱
莫非是串口线上没数据就一直进中断!

最佳答案

查看完整内容[请看2#楼]

回复【4楼】正点原子: ------------------------- 找到答案     IDLE该位由软件序列清零(读入 USART_SR 寄存器,然后读入 USART_DR 寄存器)。中文手册712页
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

38

主题

109

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
294
金钱
294
注册时间
2014-8-1
在线时间
6 小时
 楼主| 发表于 2015-7-2 20:58:07 | 显示全部楼层
回复【4楼】正点原子:
-------------------------
找到答案     IDLE该位由软件序列清零(读入 USART_SR 寄存器,然后读入 USART_DR 寄存器)。中文手册712页
回复

使用道具 举报

38

主题

109

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
294
金钱
294
注册时间
2014-8-1
在线时间
6 小时
 楼主| 发表于 2015-7-2 20:58:07 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
空闲中断是:检测到接收数据后,在数据总线上的一个字节时间内,没有接收到数据触发空闲中断。RXNE置位一次,空闲总线就检测一次!
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165475
金钱
165475
注册时间
2010-12-1
在线时间
2115 小时
发表于 2015-7-2 21:29:00 | 显示全部楼层
应该是要接受数据以后,首次进入空闲,才会产生空闲中断。
否则就乱了。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

38

主题

109

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
294
金钱
294
注册时间
2014-8-1
在线时间
6 小时
 楼主| 发表于 2015-7-2 21:37:43 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
不过原子哥,这个问题可以,不过不明白USART_ClearITPendingBit(USART6, USART_IT_IDLE); 这条清除空闲中断的语句与
                temp = USART6->SR;  
temp = USART6->DR;
效果不是一样的么,不过实验证明
                temp = USART6->SR;  
temp = USART6->DR; 起到了清除空闲中断标志的作用!不知道这两到底有啥区别! 原子哥,刚刚支持你4月份出版的新书!
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165475
金钱
165475
注册时间
2010-12-1
在线时间
2115 小时
发表于 2015-7-2 21:41:44 | 显示全部楼层
回复【3楼】静:
---------------------------------
一样的。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165475
金钱
165475
注册时间
2010-12-1
在线时间
2115 小时
发表于 2015-7-5 23:07:36 | 显示全部楼层
回复【6楼】静:
---------------------------------
谢谢分享
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

2

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
113
金钱
113
注册时间
2016-9-5
在线时间
21 小时
发表于 2016-10-7 13:45:54 | 显示全部楼层
3楼说的很好啊,谢谢了
回复

使用道具 举报

23

主题

292

帖子

0

精华

高级会员

Rank: 4

积分
501
金钱
501
注册时间
2013-9-17
在线时间
17 小时
发表于 2017-6-19 15:53:25 | 显示全部楼层
DMA接收,进入空闲中断,计算接收的字符长度?
闷鱼闷闷不乐吃焖鱼
回复

使用道具 举报

3

主题

36

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
336
金钱
336
注册时间
2016-9-19
在线时间
54 小时
发表于 2017-7-14 11:32:40 | 显示全部楼层
哇咔咔
回复

使用道具 举报

6

主题

58

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
249
金钱
249
注册时间
2015-10-7
在线时间
50 小时
发表于 2017-8-22 14:58:49 | 显示全部楼层
闷鱼 发表于 2017-6-19 15:53
DMA接收,进入空闲中断,计算接收的字符长度?

这样应该怎么计算啊。接收完一帧数据后触发空闲中断然后在这个中断时间内计算出来吗。时间非常短对吧。串口dma的时候经常用到。现在不会用这个中断了。
回复

使用道具 举报

6

主题

17

帖子

0

精华

初级会员

Rank: 2

积分
63
金钱
63
注册时间
2017-8-12
在线时间
13 小时
发表于 2017-11-24 15:14:18 | 显示全部楼层
说一下 我使用 串口空闲中断  遇到的问题
现象:串口接收数据时会出现硬件错误中断,仿真的方式发现不了问题
结论:我在空闲中断里面校验了数据,在这个时间里  又来了一组数据,此时就出现了硬件错误中断。
改成空闲中断里面 只改变标志位,问题解决。

此为个人分析,没有查找相关文档 作为印证  
回复

使用道具 举报

23

主题

292

帖子

0

精华

高级会员

Rank: 4

积分
501
金钱
501
注册时间
2013-9-17
在线时间
17 小时
发表于 2018-6-13 11:12:34 | 显示全部楼层
不会有你这种问题。
闷鱼闷闷不乐吃焖鱼
回复

使用道具 举报

0

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
101
金钱
101
注册时间
2019-5-9
在线时间
22 小时
发表于 2020-10-28 09:10:44 | 显示全部楼层
我测试过, 不开DMA, F1系列的单片机可以利用空闲帧中断来判断是否接收到一帧完整的数据, L1系列的单片机就不行
,这个是怎么回事
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-4-29 17:47

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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