关闭

串行通信基本原理

标签: STM32UART串口通信通信原理
823人阅读 评论(0) 收藏 举报
分类:

一,串行通信和并行通信

  这里写图片描述

并行通信:

数据各个位同时进行传输
优点:速度快
缺点:占用IO资源多

串行通信:

数据按位顺序进行传输
优点:占用IO资源少
缺点:速度较慢

二,三种串行传输方式

1,单工通信

  这里写图片描述
  
  只支持从发送方到接收方的单行传输,不支持反向传输
  
2,半双工通信

  这里写图片描述
  
  允许数据双向传输,单同一时刻只允许数据在一个方向传输
  相当于即可用于接收也可用于发送的单工传输
  
3,全双工通信

  这里写图片描述
  
  允许数据同时进行双向传输,发送和接收的双方都具有独立的发送和接收能力
  相当于具有两天相反方向的单工传输


三,串行通信的通信方式-同步通信和异步通信

同步通信:

  这里写图片描述

具有时钟同步信号的传输,具有两条线:数据线和时钟线
数据的每一位是按照时钟信号进行传输的
如 : IIC通信, SPI通信

异步通信:

  这里写图片描述

不具有时钟同步信号的传输
参与通信的双方需事先约定波特率(传输速度),发送方和接收方按照事先约定好的波特率发送和接收数据
如:UART通信,单总线(18B20)

四,STM32串行通信接口

UART:通用异步收发器
USART:通用同步异步收发器
STM32F10x包含3个USART和2个UART

五,UART异步通信和硬件连接

  UART通信的两个通信引脚RXD和TXD:
  
  RXD:数据输入引脚 数据接收(Reciver 接收端)
  TXD:数据发送引脚 数据发送(Transmiter 发射端)

硬件连接方式:

  这里写图片描述

两个单片机通信的连接方式:

  芯片A的Txd连接芯片B的Rxd,芯片A的Rxd连接芯片B的Txd
  即芯片A发送端连接芯片B的接收端,芯片A的接收端连接芯片B的发送端


六,UART框图

这里写图片描述

接收发送数据过程:

这里写图片描述

接收数据过程:

  由Rx接收数据,根据波特率按位写入”接收移位寄存器”,待接收完毕后一次性写入”接收输入寄存器(RDR)”,CPU读取寄存器获取传输的数据
  
发送数据过程:

  由CPU写数据到”发送数据寄存器(TDR)”,再由TDR一次性将要发送的数据写入”发送移位寄存器”,按照波特率逐位移出


模特率控制:

  这里写图片描述
  
如图:

  发送控制器和接收控制器分别控制发送移位寄存器和接收以为寄存器
  发送器时钟和接收器时来自同一个时钟单元
  发送和接收控制器的波特率公用波特率发生器


接收器时钟产生:

这里写图片描述

STM32F103共5个串口:
  串口1时钟来自PLCK2
  串口2-4时钟来自PLCK1

例如:串口1的时钟由PCLK2经过/USARTDIV(分频)得到
而分频由右侧波特率发生器控制,通过相关寄存器进行配置

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:141222次
    • 积分:2585
    • 等级:
    • 排名:第15885名
    • 原创:105篇
    • 转载:1篇
    • 译文:1篇
    • 评论:44条
    博客专栏
    最新评论