同步/异步 | 全双工/半双工

异步通信
图1


异步通信
图2


一、 同步和异步


1. 在cpu和外设通信时外设要和cpu同步,所有使用的时间频率的一致的。
   如:i2c总线中有scl时钟线、sda数据线。我们可以把它看成两个普通gpio
        接口,当时钟线为高时,数据寄存器读 或写。

2. 同步通信与异步通信:
   a. 同步(如上图1):
      1. 把许多字符组成一个信息组,字符可以一个接一个地传输,每一次是传送一组信息(信息帧),中间没有空隙
      2. 开始要加上同步字符,在没有信息要传输时,要填上空字符
      3. 发送方除了发送数据,还要有同步时钟信号(cpu),传输双方用同一时钟信号线,确定传输中每1位的节拍的位置

   b. 异步(如上图2):
      1. 一次发送一个字符,所发送的字符之间的时间间隔可以是任意的。
      2. 接收端必须时刻做好接收的准备,发送端可任意时刻开始发送字符
      3. 必须在每一个字符的开始和结束的地方加上标志,即加上开始位和停止位,确地将每一个字符接收下来
      4. 特性:通信设备简单、便宜,但传输效率较低(因为开始位和停止位的开销所占比例较大)。

   c. 同步、异步区别
       1. 同步通信时钟频率一致(同一条时钟线相连),发送端发送连续的比特流;异步通信时不要求
          接收端时钟和发送端时钟同步,发送端发送完一个字节后,可经过任意长的时间间隔再发送下一个字节。
       2. 同步通信效率高;异步通信效率较低。
       3. 同步通信较复杂,双方时钟的允许误差较小;异步通信简单,双方时钟可允许一定误差。
       4. 同步通信可用于点对多点;异步通信只适用于点对点。  

二、 全双工、半双工

1. 单工:简单的说就是一方只能发信息,另一方则只能收信息,通信是单向的。
2. 半双工:比单工先进一点,就是双方都能发信息,但同一时间则只能一方发信息。
3. 全双工:比半双工再先进一点,就是双方不仅都能发信息,而且能够同时发送。

三、 基本通信协议

1. uart: 全双工、异步通信
2. spi : 全双工、同步通信
3. i2c : 半双工、同步通信
  • 7
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值