嵌入式常用协议总结


前言

https://blog.csdn.net/oqqHuTu12345678/article/details/65445338这个博客写的特别好,大家可以借鉴借鉴

平时开发中很多协议层的东西我们都没有关注过,我们常常是自己调用库函数或者是内核底层给我们做好了,我们可以不用去做底层的实现,但是我们需要对这些天天打交道的协议有一定了解。


提示:以下是本篇文章正文内容,下面案例可供参考

先简单聊聊单工,半双工,全双工,串行,并行,同步与异步

并行与串行
串行是一位一位的进行数据传输,并行是多位一起传输。

下面这些都是讨论的串行情况

单工:

是指数据传输仅能沿一个方向,不能实现反向传输。

半双工:

是指数据传输可以沿两个方向,但不能同时进行传输。

全双工:

是指数据可以同时进行双向传输。

同步与异步是指通信双方的时钟是否是统一的,统一即为同步,否则则为异步。这里聊一下,同步还好说,双方时钟同步,可以通过时钟信号确定每个信息位,但是异步信号及需要一些辅助信号,比如开始位,停止位,奇偶校验位。

一、USART串口通信(上面的看懂了,自然知道串口是什么通信)

波特率:每秒传输码元的位数。

比特率:每秒传输二进制的位数。

因为在串口传输中,码元就是一个二进制位,所以在数值上波特率等于比特率,但是其意义并不一样。

二、IIC通信(同理)

1.每个设备有自己的器件地址,通过器件地址选中设备。意味着SCL,SDA两根线上可以挂载多个设备。
2.通过边两个沿信号作为起始与终止,通过SCL时钟线去规定高电平读SDA数据,低电平SDA发生变化。
3.均为高时为空闲信号。
4.有应答信号,及数据传输后需要接受方去应答是否完成了接受。可以是硬件器件的应答,可以是单片机去发出应答,IIC作为通信协议不仅仅是控制设备,也可以双机通信。
5.串行的8位双向数据传输位速率再标准模式下可达100kbit/s,快速模式下可达400kbit/s,高速模式下可达3.4Mbit/s。通过传输速率可以看出IIC的传输速度并不高。

三、SPI通信

SPI---------同步通信;串行通信;全双工;主从通信(某一时刻可以出现多个从机,但只能存在一个主机,主机通过片选线来确定要通信的从机)。
同时只有一个master主机,从机通过CS片选信号确定,传输速度快,可以一位一位传输,然后关于各个信号的定义是可以自己配置的,
CPOL:时钟极性,表示SPI在空闲时,时钟信号是高电平还是低电平。

CPHA:时钟相位,表示SPI设备是在在时钟的上升沿采集还是下降沿采集。

则SPI数据传输就有四种可能—按照标准的说法,SPI数据传输就有四种模式。

全双工同步传输,速度约有50Mbps,即约5.9MB/s。

有SDO,SDI,所以可以做到全双工。


总结

这里仅仅是自己的一个回顾,如果大家想详细了解上面那篇博客是很不错的。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值