,,,
(西安工程大學(xué) 電子信息學(xué)院,西安 710048)
USB設(shè)備因具備傳輸速率快,且通信較為穩(wěn)定、抗擾能力強(qiáng)以及便于插拔等特性,成為電子通信設(shè)計、有線數(shù)據(jù)傳輸中首選的通信接口[1]。其中USB1.0協(xié)議的全速USB設(shè)備理論速率可達(dá)12 Mbps,USB2.0協(xié)議的高速USB設(shè)備理論速率可達(dá)480 Mbps。
目前市場上大多數(shù)微處理器都具備USB功能但不同芯片的集成度不同,主要分為USB芯片集成于處理器內(nèi)部和需要外擴(kuò)USB芯片兩種模式[2]。當(dāng)芯片內(nèi)部集成時,可以有效降低外部電路設(shè)計的復(fù)雜性[3]。故在數(shù)據(jù)傳輸速率要求不是很高的情況下,選用適當(dāng)?shù)脑O(shè)計方式可以有效提高設(shè)計效率[4]。但與此同時USB設(shè)備通信協(xié)議以及底層驅(qū)動設(shè)計的復(fù)雜性仍然是制約USB應(yīng)用的主要原因[5],在傳統(tǒng)USB開發(fā)中不僅要針對USB從機(jī)進(jìn)行相應(yīng)的定義,還要在主機(jī)設(shè)備上編寫運(yùn)行相應(yīng)驅(qū)動才能最終實現(xiàn)通信[6-7]。
本設(shè)計方案以USB數(shù)據(jù)采集[8]為設(shè)計背景,采用ST(意法半導(dǎo)體)開發(fā)的基于HAL庫的STM32CubeMX快速完成USB從機(jī)端的通信協(xié)議配置[9-10],USB主機(jī)端使用LabVIEW編寫,并借助NI-VISA軟件生成USB驅(qū)動[11-13],完成USB鏈接,實現(xiàn)主機(jī)、從機(jī)之間的全速USB設(shè)計,從而極大節(jié)省開發(fā)中底層驅(qū)動及通信協(xié)議開發(fā)的時間,降低了USB通信開發(fā)的難度[14]。
本設(shè)計由作為數(shù)據(jù)采集核心的STM32F4x部分,以及在PC上由LabVIEW編寫的包括采集數(shù)據(jù)展示以及速率測試等功能的數(shù)據(jù)處理部分構(gòu)成[15]。其中數(shù)據(jù)采集入口為STM32F4x本身所帶有的片上A/D轉(zhuǎn)換器來實現(xiàn),通信部分由片上全速USB實現(xiàn),無需進(jìn)行外擴(kuò)USB高速芯片電路設(shè)計[16],因而采集端主要由STM32F4x芯片以及相應(yīng)的外圍電路和STM32CubeMX生成再由MDK keil5進(jìn)行編譯的主程序構(gòu)成[17]。……