調試嵌入式系統(tǒng)設計中的串行總線-DPO3000示波器
日期:2025-04-20 12:38
瀏覽次數(shù):1988
摘要:
調試嵌入式系統(tǒng)設計中的串行總線-DPO3000示波器
如果不是,您需要在下一條消息上重新開始這一麻煩的、容易出錯的過程。*好只觸發(fā)查找的消息內容,但多年來示波器的邏輯分析儀上使用的狀態(tài)觸發(fā)和碼型觸發(fā)并不能發(fā)揮作

調試嵌入式系統(tǒng)設計中的串行總線應用指南
用。它們是為了考察多條通道中同時發(fā)生的問題設計的。為處理串行總線,其觸發(fā)引擎深度必需有幾千種狀態(tài)(每個bit位一個狀態(tài))。即使存在這種觸發(fā)功能,但為所有這些bit位逐個狀態(tài)編程也不是件好玩的事。必須找到一種更好的方式!
通過MSO/DO系列-MSO/DPO4000、MSO/DPO3000和MSO/DPO2000 系列示波器,現(xiàn)在可以有一種更好的方式。下面幾節(jié)重點介紹了可以怎樣在嵌入式系統(tǒng)設計*常用的低速串行標準中采用MSO/DPO系列。
調試嵌入式系統(tǒng)設計中的串行總線I2C背景知識
I2C 或“I squaredC”是指集成電路間總線。它*初是飛利浦公司在20 世紀80年代研制的,為把控制器連接到電視機上的外設芯片提供了一種低成本方式,但之后其已經(jīng)發(fā)展成為嵌入式系統(tǒng)設備之間通信的一項全球標準。它采用簡單的兩線設計,廣泛用于**芯片制造商生產(chǎn)的各種芯片中,如I/O、模數(shù)轉換器、數(shù)模轉換器、溫度傳感器、微控制器和微處理器,芯片制造商則包括:AnalogDevices, Atmel, Infineon, Cyprus, 英特爾, Maxim,飛利浦, SiliconLaboratories, ST Microelectronics, 德州儀器, Xicor 等等。
調試嵌入式系統(tǒng)設計中的串行總線工作方式
I2C的物理兩線接口由雙向串行時鐘(SCL)和數(shù)據(jù)(SDA)線組成。I2C支持總線上多個主從設備,但一次只能激活一個主設備。任何I2C設備可以連接到總線上,允許任何主設備與從設備交換信息。每臺設備都使用**的地址識別,它可以作為發(fā)射機或接收機操作,具體取決
于設備功能。在開始時,I2C 只使用7 位地址,但隨著時間推移,它演變成也支持10 位地址。它支持三種位速率:100 kb/s(標準模式), 400 kb/s (快速模式)和3.4Mb/s (高速模式)。*大設備數(shù)量取決于400 pf的*大容量,或大約支持20-30 臺設備。I2C 標準規(guī)定了下述格式,如圖4 所示:

Start - 表明設備控制總線,一條消息將開始傳送
Address - 7 位或10 位數(shù)字,表示將要讀取或寫入的設備地址
R/W Bit - 1 位,表明是否將從設備中讀取數(shù)據(jù)或向設備寫入數(shù)據(jù)
Ack - 1 位,來自從設備,確認主設備的操作。通常每個地址和數(shù)據(jù)字節(jié)有一個確認位,但不總是有確認位
Data - 從設備中讀取或寫入設備的字節(jié)的整數(shù)
Stop - 表明消息結束,主設備已經(jīng)釋放總線
有兩種方式對I2C分組、以進行解碼:7 位+ 讀或寫(R/W)位方案,8 位(1字節(jié))、其中作為地址的一部分包括R/W位。7位地址方案是固件和軟件設計工程師遵守的指定方案。但是,許多其它工程師使用8位地址方案。MSO/DPO系列示波器可以在任一方案中解碼數(shù)據(jù)。
調試嵌入式系統(tǒng)設計中的串行總線處理I2C
通過DPOxEMBD串行觸發(fā)和分析應用模塊,MSO/DPO系列示波器成為處理I2C總線的嵌入式系統(tǒng)設計人員的強大工具。前面板有多個Bus按鈕,允許用戶把到示波器的輸入定義為一條總線。I2C 總線的設置菜單如圖5所示。通過簡單地定義時鐘和數(shù)據(jù)位于哪條通道上及用來確定邏輯1和0的門限,示波器可以理解通過總線傳輸?shù)膮f(xié)議。有了這些知識,示波器可以觸發(fā)任何指定的消息級信息,然后把得到的采集數(shù)據(jù)解碼成有意義的、容易理解的結果。邊沿觸發(fā)已經(jīng)過了好多天了,希望您已經(jīng)采集到感興趣的事件,然后逐條消息手動解碼消息,同時查找問題。
例如,考慮一下圖6 中的嵌入式系統(tǒng)。I2C 總線連接到
多臺設備上,包括CPU、EEPROM、風扇速度控制器、
調試嵌入式系統(tǒng)設計中的串行總線數(shù)模轉換器和大量的溫度傳感器。
這部儀器被退回工程部分析故障,該產(chǎn)品持續(xù)過熱,自動關機。要檢查的**件事是風扇控制器和風扇本身,但似乎一切正常。然后要檢查溫度傳感器是否有問題。風扇速度控制器定期輪詢兩個溫度傳感器(位于儀器中不同的區(qū)域),調節(jié)風扇速度,穩(wěn)定內部溫度。您懷疑其中一個或兩個溫度傳感器讀數(shù)不正確。為查看傳感器與風扇速度控制器之間的交互。我們只需連接到I2C時鐘和
數(shù)據(jù)線,在MSO/DPO 系列上設置總線。我們知道,兩個傳感器在I2C 總線上的地址分別是18和19,因此我們決定設置觸發(fā)事件,查找地址18 上的寫入操作(風扇速度控制器輪詢傳感器的當前溫度)。觸發(fā)的采集結果如
圖7 中的屏幕圖所示。