STM32 USART串口外设

目录

1.不同通信协议

2.USART

3.串口参数及时序

4.

5.USART框图

6.数据帧

7.起始位侦测


1.不同通信协议

双工就是既可以从A到B,也可以从B到A ,全双工就是有两根数据线可以同时实现从A到B和从B到A。

异步就是没有时钟线,需要通信双方有相同波特率。

电平:单端则是与地比较,这种电平模式通常通讯双方需要接同一根地线。差分则是两根线相比较。

2.USART

3.串口参数及时序

波特率:串口通信的速率    每秒传输码元的个数   码元/s   二进制中波特率等于比特率

起始位:标志一个数据帧的开始,固定为低电平

数据位:数据帧的有效载荷,1为高电平,0为低电平,低位先行

校验位:用于数据验证,根据数据位计算得来   奇校验(奇数个1)偶校验    也可以用CRC校验

停止位:用于数据帧间隔,固定为高电平

4.

5.USART框图

TDR和RDR共用一个数据寄存器DR,发送数据和接收数据都是低位先行。

发送数据时,当往TR写入数据时,硬件会自动检查发送移位寄存器是否有数据正在移位,如果没有,数据会立刻全部发送到移位寄存器(自动的),准备发送,当数据从TDR移动到移位寄存器时,会置一个标志位TXE,我们检查这个标志位,如果置1了,就可以在TDR写入下一个数据了。

接收数据时,当接受移位寄存器在接收器控制的作用下接收完数据,会一下子把数据从接受移位寄存器转到RDR,此时会置RXNE为1,当检测到RXNE为1时,就可以把数据读走了。

硬件数据流控

nRTS (Request to send )  nCTS (Clear To Send)  n代表低电平有效 nRTS接到对方nCTS

唤醒单元 实现多设备通信

可以在USRAT给串口分配地址,当发送指定地址时,该串口唤醒,开始工作

波特率发生器  相当于一个分频器

fplck1=36MHz ,fplck2=72MHz   TE(TX Enable)为1,发送器使能发送部分的波特率就有效。

6.数据帧

9位一般都会设置成奇偶校验位,8位最好不校验

空闲帧和断开帧是局域网协议用的 

7.起始位侦测

当侦测到下降沿说明到起始位了,在起始位会进行连续16次采样,电路会在接收下降沿后的第3、5、7、8、9、10次进行采样,每三位至少有两个零,如果每三位检测到一个1,会在NE置1,如果检测到两个1,则系统会认为前面下降沿是噪声,变成空闲状态。

8.数据采样 

证明起始位后,接受数据时就会在8、9、10次进行采样,可以保证采样位置在最中间。(起始位侦测对齐了采样时钟)

8 9 10 全为1则为1 ,全为0则为0,如果不全为则按2:1规则,并且置1NE位。

9.波特率发生器

 

复用推挽输出 AF_PP : Alternaltive Function push pull

Ctrl+Alt+空格 可以联想代码

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值