IIC&SPI通信,“行走”在JHM140X中

2023-06-02 10:08:27 74

在数字通信应用领域,IIC(Inter-Integrated Circuit)和SPI(Serial Peripheral Interface)的身影我们随处可见,可以进行短距离的串行数据传输,是经常用到的数据传输标准。


IIC总线介绍

IIC是一种两线通信协议,它仅使用两根线进行通信。其中一根线用于数据(SDA),另一根线用于时钟(SCL),可以发送和接收数据,属于半双工同步通讯方式。

注:半双工通讯:设备可以接收也可以发送,但是发送的时候不能接收,接收的时候不能发送。


IIC协议规定:

  • 每一支IIC设备都有一个唯一的7位设备地址;

  • 支持一主多从;

  • 数据帧大小为8位的字节;

  • 数据(帧)中的某些数据位,用于控制通信的开始、停止、方向(读写)和应答机制。


IIC通信过程大概如下。首先,主设备发送一个START信号,大喊 “大家注意,准备开始!”,通知从设备开始准备工作以接收数据。


传感器|信号调理芯片|集成电路设计|芯片

IIC通信过程


当数据传送完毕,主设备大喊“STOP!”,从设备就会放下工作,回到初始状态。


主设备往从设备中写数据

image.png

主设备往从设备中读数据

image.png



SPI总线介绍

SPI是全双工同步串行总线,是微处理控制单元(MCU)和外围设备之间进行通信的同步串行端口,主要应用在EEPROM、Flash、ASIC(专用集成芯片)等。

注:双工通讯:设备在发送的同时也可以接收,接收的同时也能发送数据。


SPI总线需要使用四根线:串行时钟输入(SCK)、串行数据输出(SDO)、串行数据输入(SDI)和低电平有效的片选信号(CSB)。


SPI的通信原理很简单,有一个主设备和一个从设备。 要开始SPI通信,主设备必须发送时钟信号,并通过片选CS信号选择从设备。当设备片选信号拉低之后,输入到从设备的SCK开始有效,全双工的数据传输过程开始。主设备输出数据并被从设备读取,从设备输出数据并被主设备读取。当片选信号拉高之后,从设备不再被选中,结束整个传输过程。


image.png

含主设备(Master)和从设备(Slave)的SPI配置


JHM140X数字接口

JHM140X支持IIC和四线SPI接口协议。在这两种协议中,JHM140X都作为从设备。IIC协议支持standard、fast和high speed mode三种速率模式,SPI协议支持任意的CPOL(时钟极性)和CPHA(时钟相位)设置四线配置。


接口的选择是通过CSB引脚上的电平自动完成的。若上电时,CSB引脚接VDD电平,则JHM140X使用IIC通信协议。如果CSB被下拉至低电平,则使用SPI协议。系统上电后任意时刻,只要CSB被下拉一次,则IIC协议被禁用,启用SPI协议,直到下一次VDD上电,且POR发生动作后才可能重新选择IIC协议。


image.png


JHM140X模块框图



JHM140X

JHM140X是一款为差分电阻桥式传感器信号设计的高精度信号调理芯片。电桥传感器输出的差分电压信号可以高精度地转换为数字信号,然后由JHM140X进行数字补偿,最终可通过 IIC或SPI接口读取测量值。


对于桥式传感器信号,JHM140X可以进行高精度放大和 24-bit精度的模数转换,其放大器的增益和ADC输入电压的偏移范围是可设置的。转换后的数字输入信号在数字域中补偿了偏移和增益的热漂移以及非线性。来自片上传感器的温度信号也被数字化并馈送到补偿电路,补偿系数可以写入片上可编程非易失性存储器(MTP)。


JHM140X 支持自动周期工作模式。在此模式下可以启用集成IIR低通滤波器和 32级FIFO,这有助于低功耗应用,并大大减少了外部MCU的工作负荷。

关键特性:

  • 前置放大器的可编程增益4.4x~504x;

  • 高分辨率 24-bit Σ-Δ ADC;

  • 传感器偏移的数字补偿;传感器增益的最高二阶数字补偿;

  • 增益和偏移的一阶和二阶温度漂移的数字补偿;

  • 典型的传感器元件可实现精度 ±0.1%FSO@-40~+85℃;

  • 内置 IIR低通滤波器和周期性工作(CYC模式)下的32级FIFO;

  • 平均电流消耗~ 4μA @ 1Hz ODR;

  • 待机电流< 0.1μA。


image.png

JHM140X部分应用