STM32之串口通信

在不同的设备之间需要传输数据进行通信,就像我们人类交流需要语言一样,既然交流,我们也需要给不同 的设备之间规定好通信协议,规定好什么信号是什么意思,从而能实现交流沟通。

串口通信,就是单片机常用的一种通信协议。

通信呢,分为好多类型的模式,主要的可以分为同步模式和异步模式,同步模式就是指通信的双方在一个约定好的时间里进行数据的传输,而异步模式就你啥时候法就啥时候发,其实,同步模式就是比异步模式多了时钟的通信线。

还有点对点的通信,串口通信正是属于点对点的通信,除此之外还有一对多的

还有全双工模式,半双模式和单工模式,全双工模式就是指两个设备可以相互同时进行数据传输。半双模式就是在某一时间只能是一台设备向另一台设备单向传输,      单工模式就是只能沿着特定方向进行数据传输。                                                                                   

RD为接收端口

TD为输出端口

它是怎么实现数据的传输呢,首先它默认输出的是高电平,等它要发送数据就下拉到低电平,就相当于发送一个信号,告诉另一个设备,要发送数据了,它的数据位你是可以设置的,你可以设置成八位或者九位,还有校验位,可以设置偶检验位和奇校验位,这个检验位就是防止数据传输的过程中数据出错的,比如说你设置成偶检验位,在输出数据时,就会通过改变偶检验位是0是1来保证在一组数据中1的个数为偶数个,这样接收的时候如果发现这一组数据中有奇数个0就知道数据传输中改变了,置一个标志位,你就知道了。之后还有一个停止位,为低电平,你可以设置它是长度比如说0.5,1,1.5等。等到过了停止位之后,就会自动成高电平,成为等待数据传输的状态。

对了,要想实现双方数据传输,还有一个很重要的东西,那就是波特率,它规定了单位时间内传输的码元个数。这样你才可以在接受的时候知道一位是多长时间然后接受下一位。

总体的思路就是这样了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值