嵌入式知识总结

1.SPI和IIC 

串行外设接口(Serial Peripheral Interface,SPI)是一种高速的,全双工,同步的通信总线,并且SPI通常由一个主模块和一个或多个从模块组成,是一个环形结构,在芯片的管脚上占用四根线 — 片选信号SS,时钟SCLK,主输入从输出MISO,主输出从输入MOSI。

SPI有四种操作模式;主从设备必须使用相同的工作参数——SCLK\CPOL和CPHA;SPI不规定最大传输速率,没有地址方案;SPI并不关心物理接口的电气特性,例如信号的标准电压。

集成电路总线(Inter-Integrated Circuit,IIC)是一种串行通信总线,使用多主从架构,没有物理芯片选择信号线,没有仲裁逻辑电路,只用两条信号线——serial data(SDA)和serial clock(SCL)。由于只有两条线,共用数据线,所以是半双工通信,通信速度慢。

IIC协议规定:

  • 每一支IIC设备都有一个唯一的七位设备地址。
  • 数据帧大小为8位的字节。
  • 数据(帧)中的某些数据位,用于控制通信的开始、停止、方向(读写)和应答机制。

SPI和IIC的对比

(1) SPI协议可以用在主控周围的flash通信中,比如常用的W25Q64或者W25Q128,分别是64K和128K的flash,支持SPI通信。

IIC协议可以用在主控和EEPROM flash通信中,如P24C64E。

(2) 总线拓扑结构\信号路由\硬件资源耗费

(3) 数据吞吐\传输速度

(4) 优雅性

2. 数据接收处理

如何处理不连续的数据;如何判断数据是否连续;在未知数据大小的情况下,如何存储多个不连续的数据:
定义一个存储数据,大小,偏移量三个元素的链表,在数据不连续的时候,将数据插入到链表中,形成一个有序链表,然后在数据连续之后,遍历链表,一次性的将链表的数据发送给用户,然后清除链表,只保留最后一个节点的信息。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值