西京學(xué)院控制工程學(xué)院 蘇加斌 李紅波 許 鵬 楊稀智 李 杰 李春江
?
基于IAP15W和CH9343的手機(jī)虛擬示波器設(shè)計
西京學(xué)院控制工程學(xué)院 蘇加斌 李紅波 許 鵬 楊稀智 李 杰 李春江
【摘要】設(shè)計了一種以IAP15W單片機(jī)和CH9343芯片為核心的Android手機(jī)虛擬示波器,具體給出了信號調(diào)理電路、單片機(jī)數(shù)據(jù)采集電路和CH9343主機(jī)接口電路,并開發(fā)了單片機(jī)程序和手機(jī)程序,實(shí)現(xiàn)了兩通道信號的實(shí)時波形顯示功能。實(shí)驗(yàn)證明:該示波器實(shí)用新穎,使用方便。
【關(guān)鍵詞】CH9343;IAP15W;虛擬示波器;智能手機(jī)
智能手機(jī)作為一種便攜式移動平臺,界面友好,性能優(yōu)異,有非常廣闊的應(yīng)用空間。通過接入應(yīng)用配件和安裝示波器APP應(yīng)用軟件使手機(jī)成為一種便攜式示波器,該示波器將極大地滿足便攜式測量的需要。近年來,國內(nèi)以Android智能手機(jī)為平臺的虛擬示波器設(shè)計資料和文獻(xiàn)并不多,只有少數(shù)碩士論文中涉及相關(guān)應(yīng)用[1][2][3][4][5]。本文提出并設(shè)計了一種基于IAP15W和CH9343的手機(jī)虛擬示波器,該示波器具有智能小巧、攜帶方便、即測即用等特點(diǎn),能較好地解決快速便捷測量的需要。
本設(shè)計采用STC(宏晶)公司的IAP15W4K58S4單片機(jī),寬電壓供電(2.5V~5.5V),高性能、低功耗,單機(jī)器周期,具有硬件乘法/除法器,性能超過16MIPS;58KB 片上FLASH ROM,4KB SRAM;4個超高速USART;8通道10位 ADC轉(zhuǎn)換器,采樣率可達(dá)300kHz;1個可倍速的SPI接口;5個定時器;支持6路15位PWM帶死區(qū)控制的通道等,其資源豐富,性價比高,可以滿足快速地數(shù)據(jù)采集和復(fù)雜地數(shù)據(jù)運(yùn)算。
CH9343接口芯片是WCH(沁恒)公司的一個高度集成、單芯片全速USB 安卓主機(jī)接口控制芯片,兼容USB2.0,內(nèi)置USB協(xié)議解析器,符合Android AOA規(guī)范,無需外部編程,并為Android手機(jī)或平板提供USB轉(zhuǎn)GPIO、UART、PWM、主SPI、從SPI和I2C等6種可配置硬件接口,用于內(nèi)置USB設(shè)備接口的安卓設(shè)備訪問外部組件,不受Android系統(tǒng)升級的影響,為用戶提供簡單易行的Android設(shè)備接口擴(kuò)展方案,廣泛用于車載系統(tǒng)、POS機(jī)、智能家居等行業(yè)。
圖1 CH9343內(nèi)部結(jié)構(gòu)圖
系統(tǒng)硬件主要包括信號調(diào)理電路、IAP15W單片機(jī)數(shù)據(jù)采集電路和CH9343主機(jī)接口電路,其共同組成示波器配件。系統(tǒng)框圖如圖2所示。
圖2 系統(tǒng)框圖
3.1 信號調(diào)理電路
信號調(diào)理電路主要完成信號的阻抗匹配、衰減和單雙極性變換的功能,信號調(diào)理電路如圖3所示,圖中給出了其中1路。輸入信號范圍為-5V~+5V,由前級運(yùn)放進(jìn)行信號阻抗匹配,中間級進(jìn)行了2倍衰減和后級信號抬升平移,完成雙極性信號到單極性信號的變換功能,滿足了單片機(jī)輸入信號0~5V的要求。
圖3 信號調(diào)理電路圖
3.2 單片機(jī)數(shù)據(jù)采集電路
該電路把調(diào)理后的信號進(jìn)行高速模數(shù)轉(zhuǎn)換,完成數(shù)據(jù)采集工作。數(shù)據(jù)采集電路如圖4所示。圖中In0和In1是兩通道經(jīng)調(diào)理后的信號,它們分別連接至單片機(jī)的ADC0和ADC1的模擬輸入引腳上。單片機(jī)的串口(TXD和RXD)與CH9343主機(jī)接口電路的串口(RXD和TXD)相連。
圖4 數(shù)據(jù)采集電路圖
3.3 CH9343主機(jī)接口電路
IAP15W單片機(jī)串口連接至CH9343的串口上,串口采用交叉連接。CH9343芯片的USB端口信號連接至安卓手機(jī)的USB接口上。當(dāng)數(shù)據(jù)采集完成后,數(shù)據(jù)從高速串口發(fā)往CH9343主機(jī)接口電路,后由CH9343的USB接口上傳至手機(jī)示波器軟件中。CH9343主機(jī)接口電路如圖5所示。
圖5 CH9343主機(jī)接口電路圖
固件程序設(shè)計主要包括主程序和ADC采集程序兩部分,其中主程序用于完成單片機(jī)初始化設(shè)置和采集數(shù)據(jù)上傳功能,ADC采集程序主要完成定時數(shù)據(jù)獲取、轉(zhuǎn)換和分析等功能。
4.1 主程序設(shè)計
主程序主要包括初始化數(shù)據(jù)緩沖區(qū)、I/O口、定時器T0、串口1 和ADC及上傳采集數(shù)據(jù)等。當(dāng)采集完成后,上傳程序按照定義好的幀格式完成實(shí)時數(shù)據(jù)上傳。主程序流程如圖6所示。
圖6 主程序流程圖
主程序主要代碼如下:
4.2 ADC采集程序設(shè)計
在該程序中,定時器T0設(shè)置為自動重裝方式,當(dāng)定時時間到時,進(jìn)入T0中斷服務(wù)程序,完成一次數(shù)據(jù)采集工作。定時周期與ADC采樣率有關(guān),由上位機(jī)軟件設(shè)置。
定時器中斷服務(wù)程序主要代碼如下:
示波器應(yīng)用軟件采用Android Studio開發(fā)環(huán)境編寫。Android 與CH9343的USB通訊遵循Google Android的AOA協(xié)議規(guī)范,通過CH9343主機(jī)接口芯片提供的高速串口與單片機(jī)數(shù)據(jù)采集電路連接,Android手機(jī)無需安裝USB驅(qū)動,即插即用,與外設(shè)方便地進(jìn)行即時數(shù)據(jù)通訊。通訊的建立往往需要經(jīng)過四個交互過程:(1)檢測安卓設(shè)備是否連接;(2)判斷安卓設(shè)備是否支持Accessory模式;(3)試圖在Accessory模式下啟動設(shè)備;(4)支持AOA協(xié)議的情況下,建立通訊連接。圖7是運(yùn)行在HTC安卓智能手機(jī)上的虛擬示波器軟件界面,圖中所示的兩通道波形是ADC的采樣率為62.5kHz時分別對標(biāo)準(zhǔn)3V 1kHz方波和1V 5kHz正弦波信號的測量效果。
圖7 軟件界面
本文利用高性能控制器和安卓主機(jī)接口芯片,設(shè)計了一款手機(jī)虛擬示波器。該示波器融合了數(shù)字測量和便攜式應(yīng)用的優(yōu)點(diǎn),擴(kuò)展了數(shù)字測量的應(yīng)用空間,是傳統(tǒng)數(shù)字示波器的有利補(bǔ)充。實(shí)驗(yàn)證明,該示波器能較好的滿足中低頻信號的測量需要,使智能手機(jī)成為一種即測即用的便攜式數(shù)字示波器,可以較好的滿足快速便捷測量需求。
參考文獻(xiàn)
[1]王升.基于Android平臺的虛擬示波器開發(fā)[D].哈爾濱﹕哈爾濱理工大學(xué),2014﹕1-40.
[2]郝苒安.基于移動平臺的虛擬示波器系統(tǒng)設(shè)計[D].西安﹕電子科技大學(xué),2013﹕1-60.
[3]張群群.基于Android的數(shù)字示波器操作界面及手勢設(shè)計[D].哈爾濱﹕哈爾濱工業(yè)大學(xué),2013﹕1-60.
[4]宋菲菲.基于Android系統(tǒng)的示波器應(yīng)用程序開發(fā)[D].哈爾濱﹕哈爾濱工業(yè)大學(xué),2012﹕1-50.
[5]王永勝.USB+OTG在手持?jǐn)?shù)字存儲示波表中的應(yīng)用研究[D].西安﹕電子科技大學(xué),2009﹕1-60.
基金項(xiàng)目:2015年高校國家級大學(xué)生創(chuàng)新創(chuàng)業(yè)項(xiàng)目(編號:201512715798)。
作者簡介:
蘇加斌(1994—),陜西西安人,大學(xué)本科,現(xiàn)就讀于西安西京學(xué)院。
李紅波(1982—),陜西西安人,講師,主要研究方向?yàn)閿?shù)據(jù)采集與控制。