基于I2C總線的大型開關(guān)矩陣設(shè)計與實現(xiàn)
發(fā)布時間:2008/8/16 0:00:00 訪問次數(shù):665
介紹了一種基于i2c總線的大型開關(guān)矩陣結(jié)構(gòu)及其功能,給出了其測試電路結(jié)構(gòu)組成及控制電路組成。
根據(jù)測試流程,給出了主機控制程序設(shè)計及部分實現(xiàn)代碼,井針對開關(guān)矩陣硬件構(gòu)成,分別給出了各個組成部分的固件程序代碼。該系統(tǒng)為低成本、便攜化、通用化、多通道測試方案提供了一種新的實現(xiàn)手段。
1 引言
自動測試設(shè)備在軍事及工業(yè)領(lǐng)域的應(yīng)用越來越廣泛,然而在電路單元尤其是電路板測試中,由于被測單元種類多,被測通道數(shù)量大,傳統(tǒng)的開關(guān)矩陣體積大、切換速度慢、電氣性能差。已不能滿足現(xiàn)代測試儀器高速、便攜的要求。本文介紹了一種采用usb接口,利用i2c總線傳輸數(shù)據(jù),由cpld控制多路復(fù)用器件的大型開關(guān)矩陣結(jié)構(gòu),具有較高的切換速度及較好的電氣性能,并滿足了小型化的要求。
2 系統(tǒng)結(jié)構(gòu)及功能
開關(guān)矩陣主要實現(xiàn)自動測試設(shè)備與被測電路單元之間的信息交換,功能如下:
(1)將程控電源系統(tǒng)輸出的電源自動加至被測電路單元要求的引腳上;
(2)將自動測試設(shè)備信號源分系統(tǒng)輸出的信號轉(zhuǎn)接至被測電路單元要求的引腳上;
(3)將被測電路單元輸出的信號轉(zhuǎn)接至自動測試設(shè)備的適當(dāng)測量通道上;
(4)為被測電路單元提供必要的外接元件,如負載、調(diào)整旋鈕、大體積器件等。
不同的被測電路單元其連接器定義不同,每個插針都可能被定義為電源、輸入信號、輸出信號、外接元件端子之一。并且現(xiàn)代電子設(shè)備的電路單元通道數(shù)很多,大量的信號通道對ate的開關(guān)矩陣設(shè)計提出了嚴(yán)峻的挑戰(zhàn)。本文所設(shè)計的開關(guān)矩陣采取針床連接方式,可有效連接多種接插件。通過單片機控制的多路復(fù)用器,可將信號加至所需的被測通道,系統(tǒng)結(jié)構(gòu)框圖如圖l所示。
3 硬件設(shè)計
3.1 測試電路結(jié)構(gòu)
測試電路結(jié)構(gòu)組成如圖2所示。系統(tǒng)采用上、下位機的結(jié)構(gòu),上位機由計算機及控制軟件組成,下位機由usb總線接口及控制板組成,usb模塊通過i2c總線將控制數(shù)據(jù)傳送給控制板上各個測試模塊?刂瓢迳细鳒y試模塊收到總線發(fā)送來的串行碼流,譯碼后提取地址值,控制模塊中的多路復(fù)用器選取相應(yīng)通道。i2c是一種串行總線的外設(shè)接口,它采用同步方式串行接收或發(fā)送信息,主從設(shè)備在同一個時鐘下工作,i2c由數(shù)據(jù)線sda和時鐘線scl構(gòu)成雙向串行總線,由于i2c只有一根數(shù)據(jù)線,因此信息的發(fā)送和接收只能分時進行。各模塊組件均并聯(lián)在總線上,每一個模塊都有唯一的地址。因此系統(tǒng)可在允許范圍內(nèi)增加或減少被測板數(shù)量,i2c總線上各節(jié)點模塊支持熱插拔,所以采取該方案可以有效減小測試系統(tǒng)體積,使用操作方便,可同時連接多個被測單元。
3.2 控制電路組成
本系統(tǒng)中,控制板上各測試模塊均通過i2c總線與測試主機進行通訊,各模塊地址由板上i2c芯片地址唯一確定,主機首先確定各板卡地址進行板選,與相應(yīng)板卡建立通訊后,發(fā)送串行控制數(shù)據(jù)sda。在同一時刻,i2c總線上只能有一個模塊處于活動狀態(tài),利用多路復(fù)用器狀態(tài)的“保持”特性,即可實現(xiàn)測試模塊上及測試模塊之間探針的切換?刂瓢咫娐方Y(jié)構(gòu)組成如圖3所示。
pca9501是一款帶中斷的8位i2c和smbus總線器件,用于接收總線發(fā)送的數(shù)據(jù)并與本地地址進行比較,若結(jié)果相同則將數(shù)據(jù)轉(zhuǎn)換成并行地址信號送至cpld器件emp7128,cpld用來接收pca9501發(fā)送的并行數(shù)據(jù),并分析數(shù)據(jù)內(nèi)容,將不同的串行數(shù)據(jù)轉(zhuǎn)換成相應(yīng)的并行控制數(shù)據(jù)并通過i/o端口送出,從而控制32路多路復(fù)用器件adg732的通道選擇。
4 系統(tǒng)軟件設(shè)計
系統(tǒng)軟件包括主機控制程序和下位機測試程序,主機控制程序可以采用通用編程工具如visualc++或者c++builder等來進行編寫。下位機測試程序包括usb控制程序、i2c發(fā)送程序、cpld控制程序,其中usb控制程序及i2c發(fā)送程序是對usb控制器cy7c68013進行編程,采用keil c51編譯器開發(fā),cpld控制程序采用max plusⅱ進行開發(fā),verilog hdl硬件描述語言編寫。
4.1 主機控制程序設(shè)計
主機控制程序設(shè)計取決于下位機控制流程,下位機控制流程如圖4所示。
(1)打開usb設(shè)備并進行初始化,然后復(fù)位設(shè)備,將所有add732芯片內(nèi)部開關(guān)打開。
(2)主機下達命令進行被測板選擇,被測板地址由被測板上的pca9501確定,對被測板進行選擇只需向所需地址發(fā)送數(shù)據(jù)即可,所有被測板對接收到的地址數(shù)據(jù)進行比較,只有通過比較的被測板才會通過pca9501將數(shù)據(jù)發(fā)送給cpld。
(3)選取被測板,選擇測試芯片,即多路復(fù)用器陣列中多路復(fù)用器件的選擇,cpld解析接收到的芯片選擇數(shù)據(jù),將該數(shù)據(jù)轉(zhuǎn)換成對多路復(fù)用器的片選信號,并禁用多路復(fù)用器件。
(4)主機程序?qū)y試點地址發(fā)送到usb端點緩沖區(qū),由cpld解析發(fā)送的端點選擇數(shù)據(jù),將該數(shù)據(jù)轉(zhuǎn)換成對多路復(fù)用器的通道選擇信號,并使能多路復(fù)用器件,將板選、片選及測試點選擇數(shù)據(jù)同時送出,則相應(yīng)被測板上的多
介紹了一種基于i2c總線的大型開關(guān)矩陣結(jié)構(gòu)及其功能,給出了其測試電路結(jié)構(gòu)組成及控制電路組成。
根據(jù)測試流程,給出了主機控制程序設(shè)計及部分實現(xiàn)代碼,井針對開關(guān)矩陣硬件構(gòu)成,分別給出了各個組成部分的固件程序代碼。該系統(tǒng)為低成本、便攜化、通用化、多通道測試方案提供了一種新的實現(xiàn)手段。
1 引言
自動測試設(shè)備在軍事及工業(yè)領(lǐng)域的應(yīng)用越來越廣泛,然而在電路單元尤其是電路板測試中,由于被測單元種類多,被測通道數(shù)量大,傳統(tǒng)的開關(guān)矩陣體積大、切換速度慢、電氣性能差。已不能滿足現(xiàn)代測試儀器高速、便攜的要求。本文介紹了一種采用usb接口,利用i2c總線傳輸數(shù)據(jù),由cpld控制多路復(fù)用器件的大型開關(guān)矩陣結(jié)構(gòu),具有較高的切換速度及較好的電氣性能,并滿足了小型化的要求。
2 系統(tǒng)結(jié)構(gòu)及功能
開關(guān)矩陣主要實現(xiàn)自動測試設(shè)備與被測電路單元之間的信息交換,功能如下:
(1)將程控電源系統(tǒng)輸出的電源自動加至被測電路單元要求的引腳上;
(2)將自動測試設(shè)備信號源分系統(tǒng)輸出的信號轉(zhuǎn)接至被測電路單元要求的引腳上;
(3)將被測電路單元輸出的信號轉(zhuǎn)接至自動測試設(shè)備的適當(dāng)測量通道上;
(4)為被測電路單元提供必要的外接元件,如負載、調(diào)整旋鈕、大體積器件等。
不同的被測電路單元其連接器定義不同,每個插針都可能被定義為電源、輸入信號、輸出信號、外接元件端子之一。并且現(xiàn)代電子設(shè)備的電路單元通道數(shù)很多,大量的信號通道對ate的開關(guān)矩陣設(shè)計提出了嚴(yán)峻的挑戰(zhàn)。本文所設(shè)計的開關(guān)矩陣采取針床連接方式,可有效連接多種接插件。通過單片機控制的多路復(fù)用器,可將信號加至所需的被測通道,系統(tǒng)結(jié)構(gòu)框圖如圖l所示。
3 硬件設(shè)計
3.1 測試電路結(jié)構(gòu)
測試電路結(jié)構(gòu)組成如圖2所示。系統(tǒng)采用上、下位機的結(jié)構(gòu),上位機由計算機及控制軟件組成,下位機由usb總線接口及控制板組成,usb模塊通過i2c總線將控制數(shù)據(jù)傳送給控制板上各個測試模塊?刂瓢迳细鳒y試模塊收到總線發(fā)送來的串行碼流,譯碼后提取地址值,控制模塊中的多路復(fù)用器選取相應(yīng)通道。i2c是一種串行總線的外設(shè)接口,它采用同步方式串行接收或發(fā)送信息,主從設(shè)備在同一個時鐘下工作,i2c由數(shù)據(jù)線sda和時鐘線scl構(gòu)成雙向串行總線,由于i2c只有一根數(shù)據(jù)線,因此信息的發(fā)送和接收只能分時進行。各模塊組件均并聯(lián)在總線上,每一個模塊都有唯一的地址。因此系統(tǒng)可在允許范圍內(nèi)增加或減少被測板數(shù)量,i2c總線上各節(jié)點模塊支持熱插拔,所以采取該方案可以有效減小測試系統(tǒng)體積,使用操作方便,可同時連接多個被測單元。
3.2 控制電路組成
本系統(tǒng)中,控制板上各測試模塊均通過i2c總線與測試主機進行通訊,各模塊地址由板上i2c芯片地址唯一確定,主機首先確定各板卡地址進行板選,與相應(yīng)板卡建立通訊后,發(fā)送串行控制數(shù)據(jù)sda。在同一時刻,i2c總線上只能有一個模塊處于活動狀態(tài),利用多路復(fù)用器狀態(tài)的“保持”特性,即可實現(xiàn)測試模塊上及測試模塊之間探針的切換?刂瓢咫娐方Y(jié)構(gòu)組成如圖3所示。
pca9501是一款帶中斷的8位i2c和smbus總線器件,用于接收總線發(fā)送的數(shù)據(jù)并與本地地址進行比較,若結(jié)果相同則將數(shù)據(jù)轉(zhuǎn)換成并行地址信號送至cpld器件emp7128,cpld用來接收pca9501發(fā)送的并行數(shù)據(jù),并分析數(shù)據(jù)內(nèi)容,將不同的串行數(shù)據(jù)轉(zhuǎn)換成相應(yīng)的并行控制數(shù)據(jù)并通過i/o端口送出,從而控制32路多路復(fù)用器件adg732的通道選擇。
4 系統(tǒng)軟件設(shè)計
系統(tǒng)軟件包括主機控制程序和下位機測試程序,主機控制程序可以采用通用編程工具如visualc++或者c++builder等來進行編寫。下位機測試程序包括usb控制程序、i2c發(fā)送程序、cpld控制程序,其中usb控制程序及i2c發(fā)送程序是對usb控制器cy7c68013進行編程,采用keil c51編譯器開發(fā),cpld控制程序采用max plusⅱ進行開發(fā),verilog hdl硬件描述語言編寫。
4.1 主機控制程序設(shè)計
主機控制程序設(shè)計取決于下位機控制流程,下位機控制流程如圖4所示。
(1)打開usb設(shè)備并進行初始化,然后復(fù)位設(shè)備,將所有add732芯片內(nèi)部開關(guān)打開。
(2)主機下達命令進行被測板選擇,被測板地址由被測板上的pca9501確定,對被測板進行選擇只需向所需地址發(fā)送數(shù)據(jù)即可,所有被測板對接收到的地址數(shù)據(jù)進行比較,只有通過比較的被測板才會通過pca9501將數(shù)據(jù)發(fā)送給cpld。
(3)選取被測板,選擇測試芯片,即多路復(fù)用器陣列中多路復(fù)用器件的選擇,cpld解析接收到的芯片選擇數(shù)據(jù),將該數(shù)據(jù)轉(zhuǎn)換成對多路復(fù)用器的片選信號,并禁用多路復(fù)用器件。
(4)主機程序?qū)y試點地址發(fā)送到usb端點緩沖區(qū),由cpld解析發(fā)送的端點選擇數(shù)據(jù),將該數(shù)據(jù)轉(zhuǎn)換成對多路復(fù)用器的通道選擇信號,并使能多路復(fù)用器件,將板選、片選及測試點選擇數(shù)據(jù)同時送出,則相應(yīng)被測板上的多
熱門點擊
- 教你做2SD315AI的驅(qū)動電路設(shè)計
- 1-Wire總線與DS18B20應(yīng)用仿真
- 在嵌入式系統(tǒng)中應(yīng)用NAND Flash閃存作
- Molex推出新系列2.00mm間距SMT線
- 韋爾推出用于超高速接口的靜電保護芯片ESDA
- 基于μPD780822型單片機的客車CAN總
- 基于USB的ARINC429總線接口模塊設(shè)計
- 賽普拉斯2Mb/8Mb nvSRAM無需電池
- ST7267單片機與SIM卡的接口設(shè)計
- 基于鐵電存儲器FM25640在電表數(shù)據(jù)存儲中
推薦技術(shù)資料
- MOSFET 電感單片降壓開關(guān)模式變換器優(yōu)勢
- SiC MOSFET 和 IG
- 新型 電隔離無芯線性霍爾效應(yīng)電
- 業(yè)界超小絕對位置編碼器技術(shù)參數(shù)設(shè)計
- 高帶寬、更高分辨率磁角度傳感技術(shù)應(yīng)用探究
- MagAlpha 角度位置傳感
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究