新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 存儲測試系統(tǒng)USB接口的設計與實現(xiàn)

存儲測試系統(tǒng)USB接口的設計與實現(xiàn)

作者: 時間:2013-10-10 來源:網(wǎng)絡 收藏


從SRAM讀取存儲數(shù)據(jù)時,單片機首先置片選信號CE和讀控制信號OE為低電平,測試系統(tǒng)的時序控制電路在OE信號的作用下推動SRAM的地址,SRAM則將對應地址的數(shù)據(jù)放在總線上。單片機讀取數(shù)據(jù)總線后,判斷FT245R的寫允許信號TXE是否為低電平,若為低電平則進入向FT245R發(fā)送數(shù)據(jù)子程序,若為高電平說明FT245R忙,不能寫數(shù)據(jù),單片機繼續(xù)判斷TXE信號,直到變低為止。發(fā)送數(shù)據(jù)時,單片機首先置FT245R的寫控制信號WR為高電平,然后將讀取的PORTD端口的數(shù)據(jù)發(fā)送至PORTB端口,接著將WR變回低電平。之后,繼續(xù)判斷TXE的狀態(tài),變低后發(fā)送從PORTC端口讀取的數(shù)據(jù),完成12 b數(shù)據(jù)自測試系統(tǒng)讀取并經FT245R發(fā)送的過程,流程如圖4所示。在編程時,根據(jù)測試系統(tǒng)SRAM的存儲容量,重復上述操作即可實現(xiàn)測試數(shù)據(jù)經發(fā)送至計算機。


3.2 計算機編程

計算機端程序采用VB 6.0編寫,通過調用FTDI提供的動態(tài)鏈接庫,進行讀、寫函數(shù)等的調用與操作。在VB程序中,首先需要在模塊里聲明動態(tài)鏈接庫“FTD2XX.DLL”。然后,在主程序里需要先對FT245R進行初始化,包括打開設備、復位設備、清理緩沖區(qū)、設定等待時間等步驟,初始化流程如圖5所示。其他工作參數(shù)如波特率、奇偶校驗、溢出控制等使用默認設置即可。

對FT245R初始化完成后,就可以進行數(shù)據(jù)發(fā)送和接收。發(fā)送數(shù)據(jù)時,將數(shù)據(jù)賦值到發(fā)送數(shù)組,調用發(fā)送函數(shù)FT_Write,然后判斷函數(shù)返回值是否等于1。若為1說明數(shù)據(jù)發(fā)送成功,否則需要重新發(fā)送。接收數(shù)據(jù)時,首先需要設定接收超時時間。然后調用FT_Getstatus函數(shù)讀取接收緩沖區(qū)的狀態(tài),判斷接收隊列中是否有數(shù)以及是否滿足設定的讀取字節(jié)數(shù)閾值。若滿足瀆取條件,則調用讀數(shù)函數(shù)FT_Read,讀取當前緩沖區(qū)的數(shù)據(jù)并存入數(shù)組,否則就一直等待,直到滿足讀取條件或產生接收超時。若產生超時,程序自動跳出接收程序,避免陷入死循環(huán)。接收流程如圖6所示。


4 結論


設計的數(shù)據(jù)傳輸率達到1 MB/s,滿足數(shù)據(jù)讀取速率的要求。
該接口符合USB 2.0協(xié)議,在計算機上安裝驅動即可,使用簡單方便。
該接口具有體積小、運行可靠等特點,非常適合嵌入到中,也可將接口與外部數(shù)據(jù)線做成一體,進一步減小測試系統(tǒng)體積。


上一頁 1 2 下一頁

評論


相關推薦

技術專區(qū)

關閉