IIC&SPI通信,“行走”在JHM140X中
在數字通信應用領域,IIC(Inter-Integrated Circuit)和SPI(Serial Peripheral Interface)的身影我們隨處可見,可以進行短距離的串行數據傳輸,是經常用到的數據傳輸標準。
IIC是一種兩線通信協議,它僅使用兩根線進行通信。其中一根線用于數據(SDA),另一根線用于時鐘(SCL),可以發送和接收數據,屬于半雙工同步通訊方式。
注:半雙工通訊:設備可以接收也可以發送,但是發送的時候不能接收,接收的時候不能發送。
IIC協議規定:
每一支IIC設備都有一個唯一的7位設備地址;
支持一主多從;
數據幀大小為8位的字節;
數據(幀)中的某些數據位,用于控制通信的開始、停止、方向(讀寫)和應答機制。
IIC通信過程大概如下。首先,主設備發送一個START信號,大喊 “大家注意,準備開始!”,通知從設備開始準備工作以接收數據。
IIC通信過程
當數據傳送完畢,主設備大喊“STOP!”,從設備就會放下工作,回到初始狀態。
主設備往從設備中寫數據
主設備往從設備中讀數據
SPI是全雙工同步串行總線,是微處理控制單元(MCU)和外圍設備之間進行通信的同步串行端口,主要應用在EEPROM、Flash、ASIC(專用集成芯片)等。
注:雙工通訊:設備在發送的同時也可以接收,接收的同時也能發送數據。
SPI總線需要使用四根線:串行時鐘輸入(SCK)、串行數據輸出(SDO)、串行數據輸入(SDI)和低電平有效的片選信號(CSB)。
SPI的通信原理很簡單,有一個主設備和一個從設備。 要開始SPI通信,主設備必須發送時鐘信號,并通過片選CS信號選擇從設備。當設備片選信號拉低之后,輸入到從設備的SCK開始有效,全雙工的數據傳輸過程開始。主設備輸出數據并被從設備讀取,從設備輸出數據并被主設備讀取。當片選信號拉高之后,從設備不再被選中,結束整個傳輸過程。
含主設備(Master)和從設備(Slave)的SPI配置
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協議。
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。
JHM140X部分應用