关于STM32串口空闲中断的问题?这是芯片的bug吗?求解

2019-07-20 03:27发布

用台式电脑COM口(9针公头)连接F429传输文件(1M以上的文件)会不间断触发串口空闲中断,而采用USB转串口线传输文件却是等文件发完才触发一次串口空闲中断。程序很简单,有需要的可以下载进行验证。
程序是根据原子哥的串口例程改的,串口1作为调试串口,串口2作为接收空闲中断测试口。
用台式电脑COM口(9针公头)连接F429传输文件会不间断触发串口空闲中断:现象是当往串口2发文件时,串口1不间断打印串口2空闲中断的UsartReceive_IDLE !!
采用USB转串口线传输文件却是等文件发完才触发一次串口空闲中断:重复上面的操作,当串口2文件传输完成,等文件发送完毕,串口1才打印一句UsartReceive_IDLE !!
用的串口工具“XCOM”;
其中用到的线是
QQ图片20171218162326.png


DB9九针串口线(公对母) QQ截图20171218162354.jpg
串口转232串口
测试串口空闲中断_F4平台.rar (7.05 MB, 下载次数: 147) 2017-12-18 16:29 上传 点击文件名下载附件

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
13条回答
不玩恒心
1楼-- · 2019-07-20 05:27
 精彩回答 2  元偷偷看……
操作系统
2楼-- · 2019-07-20 08:58
空闲中断适合按贞来传输. 文件传输如果没有走协议如XMODE等协议.可能会出现 触发空闲中断吧.这个时候要判断一下接收长度..长度不对时.应该还没有接收完成.
不玩恒心
3楼-- · 2019-07-20 11:17
 精彩回答 2  元偷偷看……
操作系统
4楼-- · 2019-07-20 12:03
本帖最后由 操作系统 于 2017-12-18 17:55 编辑

USB速度比较快的原因吧,缓冲区大小..看有没有关系.
不玩恒心
5楼-- · 2019-07-20 16:54
操作系统 发表于 2017-12-18 17:53
USB速度比较快的原因吧,缓冲区大小..看有没有关系.

我还做了同样一个实验,再找一个单片机进行发送数据,同样类同于发文件的原理,用9针串口线(母头——母头)接入上面说提到的另外一台测试的设备(接收),现象是跟USB转串口线的现象一样。所以排除USB原因,而且你所说的USB的速度,最终还是要取决于波特率。
操作系统
6楼-- · 2019-07-20 17:49
 精彩回答 2  元偷偷看……

一周热门 更多>