硬件基础知识和典型应用-使用单片机串口高速率接收大文件时使用硬件流控CTS的记录

<p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/LearnHardware" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>

 

使用场景

电脑使用串口芯片发送数据给单片机, 如果速率很快,单片机缓存有限, 会来不及接收,就会导致数据丢失;

先说一下串口芯片的CTS引脚的作用; 如果串口上打开硬件数据流控,

CTS引脚拉低的时候,数据会正常发送给单片机;   CTS引脚拉高的时候,数据会暂停发送;

现在有个需求是单片机通过串口芯片以2M的速率接收一个文件数据;

我可以使用单片机的一个引脚连接串口芯片的CTS引脚;

正常情况下我拉低CTS引脚,让数据正常接收, 当我检测到缓存快满了, 我就拉高CTS引脚,

代我处理完当前的数据(比方说存储到flash), 我再拉低CTS引脚继续接收数据;

 

串口芯片需要选型,有些不支持硬件流控,而且支持的速率不一样

image

 

这边使用串口调试助手进行测试, 测试的时候把硬件流控打开

image

 

 同时注意 RTS 和 DTR 不要勾选

image

 

posted on 2025-11-25 14:49  杨奉武  阅读(11)  评论(0)    收藏  举报

导航

支付宝 QQ群