blavince's BLOG

Giving is a reward in itself.

0%

Saleae Logic 8 邏輯分析儀

BSP, Firmware 或 HW 工程師在 debug 時如果要驗證訊號是否正確, 通常會用示波器做量測, 與此同時也可以用邏輯分析儀來分析訊號是否正確, 這裡紀錄一下用 Saleae Logic 8 做 SPI 訊號的分析.

Saleae Logic 8 規格

Saleae 官網有邏輯分析儀的介紹, 而 Logic 8 是這個系列裡面最低階的型號, 往上還有 Logic 8 ProLogic Pro 16. 但是 Logic 8 已經符合我最常見的應用場景了 (I2CSPI 的訊號分析).

Saleae Logic 8 Saleae Logic 8 Pro Saleae Logic 16 Pro
輸入端
多用途(類比/數位/兩者) 8 8 16
輸入電阻 1 MΩ 2 MΩ 2 MΩ
輸入電容 10 pF 10 pF 10 pF
輸入保護 ± 25V ± 25V ± 25V
數位
取樣率(最高) 100 MS/s 500 MS/s 500 MS/s
最快的數位訊號 25 MHz 100 MHz 100 MHz
取樣深度(典型) 10+ 十億 10+ 十億 10+ 十億
支援的Logic等級 1.8V - 5.5V 1.2V - 5.5V 1.2V - 5.5V
適用於 RS-232、422/3、 485 是,直接 是,直接 是,直接
臨界電壓 .6V 低/ 1.2V高 可選擇的.6V/ .9V/ 1.65V 可選擇的.6V/ .9V/ 1.65V
類比
取樣率(最高) 10 MS/s 50 MS/s 50 MS/s
頻寬 (-3dB) 1 MHz 5 MHz 5 MHz
位元數 10 位元 12 位元 12 位元
輸入電壓範圍 0 V to 5 V -10 V to 10 V -10 V to 10 V
衰減 @ Nyquist -50 dB或更好 -50 dB或更好 -50 dB或更好
通道對通道串擾 -50 dB或更好 -50 dB或更好 -50 dB或更好
內含
測試引線組 x2 x2 x4
測試夾八件組 x2 x2 x4
USB 傳輸線及攜帶盒
實體
尺寸 2.1” x 2.1” x .46”( 53 x 53 x 12 mm ) 2.1” x 2.1” x .46”( 53 x 53 x 12 mm ) 3.6” x 3.6” x .59”( 92 x 92 x 15 mm )
重量 2.1 oz ( 60 g ) 2.1 oz ( 60 g ) 7.8 oz ( 220 g )
USB
USB類型 USB 2.0 USB 3.0 USB 3.0

SPI (Serial Peripheral Interface Bus,串行外設介面)

晶片間的通訊最常見 I2CSPI, 而且各有優缺點;
SPI 不像 I2C 有嚴格訊號定義, Master 與 Slave 有 SCLK, MOSI, MISO 及 CS 的連接使 SPI 通訊可實現, 這裡我們用以下標準實現 (Master Ouput Slave Input, 反之亦然; CS 代表是否被選取, 如果 SPI BUS 上僅有一個裝置可忽略).

※採用 SPI MODE = 1 (CPOL=0, CPHA=1)

SPI Mode CPOL CPHA SCLK Idle State Sampling Edge
0 0 0 Low Rising edge SCLK
1 0 1 Low Falling Edge SCLK
2 1 0 High Falling Edge SCLK
3 1 1 High Rising edge SCLK
參考: https://www.corelis.com/education/tutorials/spi-tutorial/

※ Write/ Read Frame 介紹

Field Size Description
OP 4bits Write Frame: 0001 (dec=1), Read Frame: 0010 (dec=2) or more
BC 4bits Byte Count; ignored here, always 0
ADDR 8bits 8 bit address
WDATA 8bits Write Data
WSTATUS 8bits Write status (Dummy read, slave send write was successful =1)
RDATA 8bits Read Data
RSTATUS 8bits Read status: 1 menas slave is ready with data, 0 means slave is not ready with data.

Logic 2

官網下載 Logic 2 完成安裝後, 軟體會偵測插上去的 Saleae Logic 產品.

設置 SPI 訊號分析

連接 Logic 8 後,

  1. 開啟新 Session
  2. 設定分析
  3. 選擇 SPI 分析
  4. 設定對應的探針訊號 (我們用 CH0: SCLK, CH1: MISO, CH2: MOSI)
  5. SPI MODE = 1 (CPOL=0, CPHA=1)

完成後, 就可以進行量測分析訊號是否如我們預期運作.

量測實例

※位址 0x2B 寫入數值 0x11

※位址 0x00 讀取得到 0x20