郭銳添
摘 要:隨著計算機產(chǎn)業(yè)的不斷發(fā)展,高速、高性能的USB接口模式已逐步成為其主流外圍接口。本研究設(shè)計了一種多功能的USB接口轉(zhuǎn)換器,并就其總體設(shè)計、硬件設(shè)計以及軟件設(shè)計進行了詳細(xì)的介紹,實踐表明,該轉(zhuǎn)換器能夠集成多種轉(zhuǎn)換器的功能,具有廣闊的應(yīng)用前景。
關(guān)鍵詞:USB;轉(zhuǎn)換器;總體設(shè)計;硬件設(shè)計;軟件設(shè)計
前言
USB總線具有即插即用,支持多種傳輸速率,總線供電,應(yīng)用靈活及易于擴展的特點,從誕生至今已經(jīng)十多年了。這十多年間,USB在不斷完善,并走向成熟,得到了諸多廠商的認(rèn)可。同時,隨著USB應(yīng)用領(lǐng)域的擴大,如何使USB的連接更加高效、便利,滿足工業(yè)應(yīng)用現(xiàn)場對多種接口間互相通信的需求,成為新的研究課題。下面,提出一種USB接口轉(zhuǎn)換器的設(shè)計以及實現(xiàn)方式。
1.總體設(shè)計
在使用功能上,通過軟硬件結(jié)合的方式,自動選擇不同的接口轉(zhuǎn)換類型,通信的波特率、數(shù)據(jù)位、校驗方式可靈活配置??紤]到多功能USB接口轉(zhuǎn)換器使用環(huán)境,外殼采用絕緣和防水防潮性能優(yōu)良的ABS材質(zhì),體積盡量小巧,外形美觀。每個外露的接口都要具備必要的防護,減少人體靜電或外部導(dǎo)電體對設(shè)備的損壞。
2.硬件設(shè)計
多功能USB接口轉(zhuǎn)換器的硬件電路包括電源、CPU、接口、配置四個組成部分。
2.1電源部分
多功能USB接口轉(zhuǎn)換器使用時,插在便攜式設(shè)備的主USB接口上。根據(jù)USB接口的相關(guān)規(guī)范,該主USB接口能夠?qū)ν馓峁?5V/500mA的電源,可以作為多功能USB接口轉(zhuǎn)換器的工作電源。+5V電源進入多功能USB接口轉(zhuǎn)換器后,在接口處串聯(lián)保險管,避免內(nèi)部故障損壞便攜式設(shè)備。多功能USB接口轉(zhuǎn)換器中的芯片工作電源為+3.3V,在本設(shè)計中,采用LDO器件SPX3819M5-3.3來實現(xiàn)+5V到+3.3V的轉(zhuǎn)換。SPX3819M5-3.3是一種高性能的工業(yè)級低壓差輸出穩(wěn)壓芯片,為降低生產(chǎn)制造時對焊接工藝的要求,本設(shè)計選擇5腳的SOT-23封裝,該封裝人工焊接和流水線自動貼裝均可。輸入電容和輸出電容一般采用陶瓷貼片電容,容量為10μF和0.1μF,二者成對使用可以達到濾除紋波和高頻毛刺的效果。
2.2CPU部分
多功能USB接口轉(zhuǎn)換器的核心處理單元是一個最小的系統(tǒng),包括核心CPU、電源引腳退耦電容、晶振、復(fù)位電路等。
1.核心CPU。核心CPU選用意法半導(dǎo)體公司的STM32F103RCT6,該芯片工作電壓+3.3V,具有5個UART口,滿足轉(zhuǎn)換器的多通信口需求,芯片封裝為LQFP64,工作頻率可達到64M,內(nèi)部RAM容量為46K,內(nèi)部FLASH容量為256K,有多個16位的定時器、SPI接口、I2C接口、I2S接口、CAN總線、AD/DA功能、PWM輸出等。
2.3晶振電路
晶振電路是CPU正常工作必不可少的部分,為整個系統(tǒng)提供時序基準(zhǔn)。雖然CPU的內(nèi)部集成有RC晶振回路,但是精度不高,可滿足對時序要求不是很苛刻的應(yīng)用。本系統(tǒng)中,通信過程對時序的要求較高,因此使用外部晶振。CPU上電后,將外部晶振產(chǎn)生的震蕩信號,通過內(nèi)部的倍頻鎖相環(huán)電路,倍頻到合適的高頻,作為各種外設(shè)和看門狗模塊的時鐘源。
2.4復(fù)位電路
STM32F103RCT6芯片是低電平復(fù)位,由電阻和電容組成上電復(fù)位電路。設(shè)備上電后,+3.3V通過電阻給電容充電,在上電瞬間,由于電容上電壓不能突變,因此連接到電容的復(fù)位引腳為低電平,并持續(xù)到CPU的內(nèi)核復(fù)位完成后,電容充滿電,電容兩端電壓上升到系統(tǒng)電壓+3.3V,系統(tǒng)進入正常工作狀態(tài)。
2.5接口部分
轉(zhuǎn)換器的對外通信接口有5個:主USB接口、RS232電平接口、RS485電平接口、無線接口、TTL電平接口。這些接口邏輯上分別對應(yīng)CPU的UART1--UART5,通過內(nèi)部程序進行軟件映射,建立對應(yīng)關(guān)系。
2.6主USB接口
主USB接口部分使用FT232RL芯片實現(xiàn),該芯片內(nèi)集成有EEPROM和主時鐘發(fā)生器、3.3VZLDO調(diào)節(jié)器、復(fù)位發(fā)生器和USB終端電阻。芯片內(nèi)部的兩個雙口FIFO緩沖區(qū),用于USB數(shù)據(jù)和RS232數(shù)據(jù)的交換緩沖區(qū),分別為128字節(jié)和256字節(jié)大小。本應(yīng)用中使用RXD和TXD兩線制串口,與CPU的UART1口連接,USBDM和USBDP引腳連接到標(biāo)準(zhǔn)的USB從機插座上,第17腳輸出的電壓作為I/O口電源,與第4腳的VCCIO相連。
2.7 RS232電平接口
RS232接口電平的轉(zhuǎn)換使用MAX3232芯片來實現(xiàn),該芯片提供2路的TTL-232轉(zhuǎn)換電路,本設(shè)計選用其中的一路來實現(xiàn)功能需求。外圍電路使用5個0.1μF的瓷片電容來完成倍壓及電源退耦。在RS232線上串接電阻R4,R5對接口限流保護,連接器采用標(biāo)準(zhǔn)的DB9母頭,2腳接收,3腳發(fā)送,5腳接地。
2.7 RS485電平接口
RS485接口具有優(yōu)異的抗干擾性能,廣泛在工業(yè)設(shè)備現(xiàn)場應(yīng)用,在此選用比較主流的MAX3485芯片。接收和發(fā)送控制端由CPU的一個I/O口控制,并接下拉電阻,常態(tài)時出于接收狀態(tài),發(fā)送時由程序?qū)υ撘_拉高。在A,B兩線上并接保護器件TVS1、TVS2,同時串接熱敏電阻RT1、RT2,磁珠RCZ1、RCZ2,防止通訊線上的浪涌、靜電和群脈沖信號對芯片造成損壞。
2.8無線(WL)接口
無線接口(WL)部分為一個TTL-WL的無線模塊,與CPU通過UART口連接,空中的波特率和編碼解碼等由模塊自身實現(xiàn),無線模塊提供電源(VCC)、地(GND)、發(fā)送(TXD)、接收(RXD)和復(fù)位(RST)5個引腳。使用無線接口進行數(shù)據(jù)通信,可以避免接線,在布線難度較大的環(huán)境中使用,有非常顯著的優(yōu)勢。
2.9TTL接口
接口轉(zhuǎn)換器的TTL電平接口是一個兩芯的接線端子,CPU的UART口從引腳輸出后,通過串聯(lián)電阻直接與接線端子連接,這個接口用于對方設(shè)備是TTL電平接口的場合。
2.10轉(zhuǎn)換類型配置部分
本部分電路采用撥碼開關(guān)實現(xiàn),撥碼開關(guān)的一端接下拉電阻后,與CPU的I/O口連接,另外一端接+3.3V。通過撥動撥碼開關(guān),使得I/O口對應(yīng)不同的高低電平,CPU程序判斷這些不同的電平組合,在相應(yīng)的接口之間切換,包括輸出不同的數(shù)據(jù)格式:波特率、數(shù)據(jù)位、停止位、校驗方式等。
3.軟件設(shè)計
軟件架構(gòu)采用模塊化,每一個功能模塊相對獨立,結(jié)構(gòu)清晰,方便查錯和以后的功能擴展。本設(shè)計的功能模塊有:芯片初始化模塊,用于對芯片進行基本配置,完成芯片初始化;USB接口芯片驅(qū)動模塊,用于識別出USB接口,將通信虛擬為串口;配置類型識別模塊,用于采樣撥碼開關(guān)的電平狀態(tài),形成參數(shù)類型組;UART接口驅(qū)動模塊,用來配置UART接口參數(shù),完成數(shù)據(jù)轉(zhuǎn)發(fā)。軟件開發(fā)環(huán)境選擇Keil,該環(huán)境提供強大的開發(fā)支持,能夠加速代碼的編寫過程。
4.結(jié)語
綜上所述,在生產(chǎn)生活中,USB接口已經(jīng)被廣泛應(yīng)用,其接口模式要求向速度更快,性能更優(yōu)良方向發(fā)展。實踐表明,本USB轉(zhuǎn)換器可以實現(xiàn)USB-TTL、USB-RS232、USB-RS485、USB-無線(WL)等多種類型的接口轉(zhuǎn)換,具有良好的經(jīng)濟效益和社會效益,具有廣闊的應(yīng)用前景。
參考文獻:
[1]王蘭英. USB-RS232接口轉(zhuǎn)換器的設(shè)計與實現(xiàn)[D]. 電子科技大學(xué), 2009.
[2]楊曉萍. 基于FPGA的USB-GPIB協(xié)議轉(zhuǎn)換器的設(shè)計研究[D]. 南開大學(xué), 2013.
[3]楊峰,秦兆濤.基于FPGA的USB-HDLC協(xié)議轉(zhuǎn)換器的設(shè)計與實現(xiàn)[J].遙測遙控, 2014, 35(4):65-69.
[4]董海波,曾新順, 馮帆等. USB串行口三合一轉(zhuǎn)換器設(shè)計[J].電腦編程技巧與維護, 2014(12):105-105.