存儲測試是在對被測對象無影響或影響在允許范圍的條件下,在被測體或測試現場放置微型數據采集與存儲測試儀,現場實時完成信息的快速采集與記憶,事后回收并由計算機處理和再現測試信息的一種動態測試技術。存儲測試的主要技術特點是現場實時快速完成動態數據采集與存儲記憶,特別是在多種惡劣環境和緊湊設計條件下完成動態參數測試,事后回收處理再現。傳統的存儲測試儀存在著如下不足:
(1)存儲介質置于儀器內部,回讀數據必須將整個儀器伺收。由于存儲測試所面臨的測試環境復雜,往往加裝了復雜、笨重的防護體或置于掩體中,給儀器的拆卸回收造成了困難。而戶外回讀分析數據往往受條件所限難以續施。 (2)隨著存儲測試技術的發展,存儲測試所面臨的對豫和環境日趨復雜,測試時間和所需容量靈活多變,并逐步加大。由于傳統的存儲測試儀設計結構所限,不同容量就意味著要重新設計生產新的儀器。
(3)當前的計算機主板普遍集成了USB接口,存儲測試儀一貫采用的“大端口”如:并口、串口等已逐漸被拋棄。一些新推出的主板甚至只集成了。USB 口。存儲測試儀接口必須適應這一轉變,通過一定的措施實現基于。USB 口的通信。本設計采用南京沁恒公司的CH375和Atmel的ATmega32單片機所設計的存儲測試儀有效克服了以上的不足,在實際應用中取得了良好的效果。U盤作為新型移動存儲設備,以體積小、速度快、抗震動、通用性強的特點備受青睞。該系統通過單片機對U盤進行讀寫操作,采集數據按文件方式直接存儲到U盤,可以有效提高數據保存速度及可靠性。特別適合于長時問、大容量數據采集的場合,方便了與PC等上位機進行數據交換,從而實現現場采集數據、室內分析數據。通過更換U盤可以靈活選擇系統容量,極大地提高了存儲測試儀的通用性,降低了測試成本。
2 USB OTG及海量存儲設備協議
作為USB 2.0的補充規范USB OTG(On The Go)以其雙重強大功能使USB設備擺脫了對PC的完全依賴,USB外設在無PC主機參與的情況下可以直接互連以進行通信。USB通信以分層方式進行,總體上可分為功能層、USB設備層和總線接口層。U盤屬于USB家族內的海量存儲(USB Mass Storage)設備,是一種基于塊/扇區的隨機存儲設備,他與主機之間采用“控制/批量/中斷”(CBI)方式或“批量”(Bulk-Only)方式與主機通信。USB通信協議規范十分復雜,‘USB海量存儲協議包括CBI,Bulk-Only,ATA和UFI等4個獨立的子類規范。前2個子規范定義了數據/命令/狀態在USB總線上的傳輸方法,后2個子規范定義了存儲介質的操作命令。其中,ATA命令規范用于硬盤,UFI命令規范則是針對USB移動存儲制定的。U盤在進行數據保存之前,必須先按某個文件系統的規定進行格式化。相對于計算機硬盤來說U盤的存儲容量要小得多,因此在U盤中FAT16文件系統可取得比較高的綜合效率且兼容性較好,廣泛地應用于U盤之類的移動存儲設備中。FAT16文件系統結構分為5個部分:MBR區,DBR區,FAT區,FDT區,DATA區。其中MBR區為主引導記錄區,DBR區為操作系統引導記錄區,FAT區存放文件分配表,FDT區存放文件目錄表,DATA區是真正意義上的數據存儲區。
3 系統硬件設計
系統采用AVR高檔機系列*能強大的單片AT-mega32作為中央處理芯片,選用南京沁恒電子公司的CH375作為USB主機控制芯片。硬件系統的工作原理框圖如圖1所示:
ATmega32是一款基于AVR RISC結構的低功耗8位單片機,外接:16 MHz晶振性能可達:16 MI/S。AT-mega32包含了32 kB的系統內可編程FLASH,1kBE2PROM,2kB SRAM,32個通用I/O 口,32個通用工作寄存器,一個8路10位具有可選增益差分輸入的A/D轉換器,支持多種接口方式。豐富的片上存儲器空間極大地提高了對U盤操作時的工作效率,多樣化的外圍接口方便了系統的擴展,高效的CPU指令集可以使系統獲得比較高的采樣率。CH375具有8位數據總線和讀、寫、片選控制線以及中斷輸出,同時支持5 V和3.3 V電源電壓,遵循USB 1.1規范。因此CH375作全速USB Host。主機接口時只需外加晶振和電容,就可以方便地掛接到單片機/DSP/MCU/MPU等控制器的系統總線上。由于讀寫U盤或移動硬盤時一般都是以扇區模式進行的,為了進一步提高執行效率可以適當增大磁盤數據緩沖區和文件數據緩沖區(都是512 B的整數倍),并且緩沖區越大,執行的效率越高,所以外擴了32 kB的RAM 62256。傳感器信號經模擬電路調理之后由A/D轉換器MAX 153量化成數字信號,在單片機ATmega32的控制下循環存入62256。待觸發信號到來之后,按照程序預設的負延遲點數將62256扣的數據連同后續到來的信號全部經由CH375存入外掛的U盤,直至寫滿在U盤中新建的文件并關閉。同時由系統所設置的狀態燈指示工作已完成。
實際設計中ATmega32與CH375接口部分的原理圖如圖2所示:
4 系統軟件設計
USB大容量存儲設備軟件結構示意圖3所示:
一般情況下,單片機或嵌入式系統處理USB存儲設備的文件系統需要實現圖3左邊的幾個層次,右邊是USB存儲設備的內部結構層次。由于CH375不僅是一個通用的USB-HOST硬件接口芯片,還內置了相關的固件程序,簡化了外部編程。內置固件包含上圖左邊的UFI命令層,USB基本傳輸命令層及Bulk-Only協議層,所以實際的單片機程序只需要處理FAT文件系統層,并且即使這一層也可以由CH 375的U盤文件級子程序庫實現。CH375以C語言子程序庫提供了。USB存儲設備的文件級接口,這些應用層接口API包含了常用的文件級操作,可以移植并嵌入到各種常用的單片機程序中。
這里采用ICC AVR軟件來編寫ATmega32的程序,并調用CH375所提供的AVRU盤文件級子程序庫CH375HFB.A。程序運行并初始化后,系統進入待觸發狀態。檢測到觸發信號到來之后,通過CH375FileCreate新建文件,將AD所采集的數據通過CH375FileWrite寫入U盤,文件寫滿之后調用CH375FileClose關閉文件。采集結束之后直接取下外接的U盤便可以拿回室內分析。由于采用了文件管理模式,所需操作十分簡單,就像平常讀取U盤中的文件一樣。
5 結 語
經測試該系統在實際使用時達到了預想效果,克服了以前存儲測試儀的一些不足。尤其對于緩變大容量信號的采集取得了良好效果。由于CH375只支持USB1.1協議,并且采用了單片機作為控制器負責管理整個系統的運行,勢必影響到儀器的采樣率。因此,選用支持USB 2.0協議的OTG器件,同時采用性能更好的控制器如DSP,CPLD等可極大地提高儀器的采樣速率,以適應更高的需求。
責任編輯:gt
-
芯片
+關注
關注
450文章
49636瀏覽量
417163 -
單片機
+關注
關注
6023文章
44376瀏覽量
628391 -
測試系統
+關注
關注
6文章
791瀏覽量
61960
發布評論請先 登錄
相關推薦
評論