亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于ARM的便攜式數(shù)據(jù)采集與處理系統(tǒng)設(shè)計

        2016-04-12 00:00:00陳建種健劉劍
        現(xiàn)代電子技術(shù) 2016年13期

        摘 要: 針對嵌入式系統(tǒng)在數(shù)據(jù)采集與處理中的應(yīng)用,研究了一種新的方案進(jìn)行系統(tǒng)的軟硬件設(shè)計、調(diào)試和實(shí)現(xiàn),完成了一個集多路數(shù)據(jù)采集與處理、實(shí)時顯示和USB通信于一體的便攜式數(shù)據(jù)采集系統(tǒng)。在硬件方面,利用微處理器的外圍設(shè)備,結(jié)合Atmel公司提供的微控制器開發(fā)板原理圖和客戶實(shí)際需求,設(shè)計了5路模擬量輸入通道,鋰離子電池充電電路,SDRAM,NAND FLASH存儲器電路,SPI通信方式的LCD接口電路,USB設(shè)備接口和DBGU接口電路。在軟件方面,利用IAR集成開發(fā)環(huán)境設(shè)計了多路模擬量輸入定時采集,LCD顯示,按鍵設(shè)置,NAND Flash讀寫和USB大容量存儲設(shè)備驅(qū)動等程序模塊,并實(shí)現(xiàn)了一些簡單的數(shù)據(jù)采集處理和FFT頻譜分析功能。最后,為分析、處理NAND FLASH中模/數(shù)轉(zhuǎn)換的數(shù)據(jù),分別進(jìn)行了基于Matlab的數(shù)據(jù)處理編程和Matlab與VC++的混合編程。

        關(guān)鍵詞: 嵌入式系統(tǒng); 數(shù)據(jù)采集; USB大容量存儲設(shè)備; ARM

        中圖分類號: TN431.2?34; TP274.2 文獻(xiàn)標(biāo)識碼: A 文章編號: 1004?373X(2016)13?0167?04

        Abstract: For the application of embedded system in data acquisition and processing, a new scheme is studied to perform the software and hardware design, debugging and implementation. A portable data acquisition and processing system integrating multichannel data acquisition and processing, real?time display and USB communication was implemented. For the hardware, 5 analog input channels, lithium?ion battery charging circuit, SDRAM, NAND Flash storage circuit, LCD interface circuit with SPI communication, USB device interface and DBGU interface circuit were designed based on the peripheral unit of microprocessor, microcontroller development board schematic diagram made by Atmel Company and actual customer demand. For the software, the program modules of multichannel analog input timing acquisition, LCD display, key configuration, and driver of NAND FLASH read?write and USB mass storage device were designed by means of IAR integrated development environment, and then some simple data acquisition and processing, and FFT spectral analysis function were realized. In order to analyze and process the analog?to?digital conversion data in NAND FLASH, the data processing programming based on Matlab and mixed programming based Matlab and VC++ were performed respectively.

        Keywords: embedded system; data acquisition; USB mass storage device; ARM

        當(dāng)今,嵌入式系統(tǒng)的發(fā)展方興未艾,軟硬件技術(shù)日趨成熟,應(yīng)用也越來越普遍。ARM是業(yè)界領(lǐng)先的32位嵌入式微處理器,成本低、低功耗、可擴(kuò)展性強(qiáng)、支持實(shí)時多任務(wù)處理。在這一背景下,本文結(jié)合便攜式數(shù)據(jù)采集與處理這一具體應(yīng)用進(jìn)行嵌入式系統(tǒng)的開發(fā),按照結(jié)構(gòu)化、模塊化的方式進(jìn)行系統(tǒng)軟硬件的設(shè)計、調(diào)試和最終實(shí)現(xiàn)[1]。

        1 系統(tǒng)的硬件電路設(shè)計

        本設(shè)計系統(tǒng)的核心是Atmel公司的ARM7微控制器AT91SAM7SE256,這是一款基于ARM7TDMI內(nèi)核的16/32位嵌入式RISC微控制器,在極限條件下(1.65 V,85 ℃)主頻能到達(dá)55 MHz。ARM7TDMI內(nèi)核使用了取指、譯碼、執(zhí)行3級流水線來增加處理器指令流的速度,這樣可使幾個操作同時進(jìn)行,并使處理和存儲系統(tǒng)連續(xù)操作。

        1.1 硬件電路設(shè)計

        為了實(shí)現(xiàn)采用極化阻抗法進(jìn)行石油管道的腐蝕分析過程中的數(shù)據(jù)采集與處理,硬件電路上需要有5路采集頻率為1 kHz的模擬量輸入通道,能夠?qū)崿F(xiàn)大容量數(shù)據(jù)存儲功能,具有實(shí)時顯示和USB通信功能[2]。

        硬件電路功能框圖如圖1所示。

        1.1.1 電源與復(fù)位電路

        (1) 數(shù)字電源設(shè)計。可充電鋰離子電池輸出4.2 V電壓,經(jīng)過多功能電池充電器芯片LTC4080輸出3.3 V供CPU、時鐘芯片、NAND FLASH、SDRAM和DBGU接口芯片等使用。LT4080是凌特公司推出的具有獨(dú)立線性電池充電器和高效率同步降壓型轉(zhuǎn)換器的多功能集成電路,該USB兼容的電池充電器能以高達(dá)500 mA的電流為單節(jié)鋰離子電池充電,而且沒有使器件或周圍組件過熱的風(fēng)險,而高達(dá)300 mA的降壓型穩(wěn)壓器具有可選工作模式和同步整流功能,以實(shí)現(xiàn)高達(dá)96%的效率,該器件用來與高達(dá)5.5 V的電源一起工作,包括那些符合USB規(guī)格的電源,特別適合應(yīng)用于便攜式設(shè)備中[3]。

        (2) 模擬電源設(shè)計。A/D電路的供電需要模擬電源,數(shù)字電源3.3 V通過100 μH電感作為電荷泵電壓反相器芯片XC6351A120的輸入,XC6351A是一系列電荷泵電壓反轉(zhuǎn)器,內(nèi)置4個開關(guān)MOSFET,外圍只需要3個陶瓷電容就可組成一個正電壓輸入,負(fù)電壓輸出的高效率、低功耗電壓反轉(zhuǎn)器電路,模擬電路電源與數(shù)字電源需要電感隔開。

        (3) 復(fù)位電路設(shè)計。復(fù)位電路使用了AT91SAM7SE256的復(fù)位控制器,復(fù)位控制器是基于上電復(fù)位單元的,能處理系統(tǒng)的所有復(fù)位而不需要任何外圍器件并給出最近發(fā)生的一次復(fù)位情況,復(fù)位控制器可以獨(dú)立的或同時驅(qū)動外部復(fù)位和外設(shè)及處理器復(fù)位,而掉電檢測能阻止處理器進(jìn)入不可預(yù)知的狀態(tài)[4]。

        1.1.2 時鐘電路

        時鐘電路由兩路時鐘輸入組成,分別為處理器工作時鐘和芯片F(xiàn)M3116時鐘。處理器工作時鐘為18.432 MHz的無源晶體,需要外部電容。AT91SAM7SE256的兩線接口(TWI)由一根時鐘線及一根傳輸速度達(dá)到400 Kb/s的數(shù)據(jù)線組成,以字節(jié)為單位進(jìn)行傳輸。它適用于任何的Atmel兩線總線串行E2PROM中,與FM3116的二線制串行接口兼容,TWI可編程作為主機(jī)進(jìn)行連續(xù)或單字節(jié)訪問,電源管理控制器向TWI接口提供主時鐘(MCK),因此必須先配置電源管理控制器使能TWI時鐘,TWI接口有一條與高級中斷控制器(AIC)連接的中斷線,如果TWI接口通信采用中斷的方式,必須對高級中斷控制器配置使能TWI接口的中斷。

        1.1.3 LCD接口

        這里采用的LCD型號是HGO12864A,這是一款由清達(dá)光電技術(shù)有限公司生產(chǎn)的FSTN型串行外設(shè)(SPI)串口液晶,集成了背光電路和NT7532液晶控制器,從而簡化了外部電路設(shè)計和編程設(shè)計。

        1.1.4 按鍵處理電路

        利用并行輸入/輸出控制器(PIO),將I/O口配置為通用功能I/O線實(shí)現(xiàn)按鍵處理電路。

        1.1.5 A/D電路

        (1) 輸入信號調(diào)理電路。由于各通道或各參數(shù)送入測量放大器的信號大小并不相同,但都要放大至ADC輸入要求的標(biāo)準(zhǔn)電壓,因此各個通道要求測量放大器的增益就每個通道的數(shù)據(jù)采集而言,可實(shí)現(xiàn)自動控制增益或量程自動切換,因此這里采用了程控增益放大器LTC6915。

        (2) 模/數(shù)轉(zhuǎn)換器(ADC)。這里用的是AT91SAM7SE256內(nèi)置的ADC,是逐次逼近型的10位模/數(shù)轉(zhuǎn)換器,它還集成了一個8選1模擬多路復(fù)用器,可實(shí)現(xiàn)8路模/數(shù)轉(zhuǎn)換,轉(zhuǎn)換電壓范圍為0 V~A/D基準(zhǔn)電壓,ADC支持8位或10位分辨率模式,并且轉(zhuǎn)換結(jié)果都送入一個所有通道可用的通用寄存器中,即通道專用寄存器,可配置為軟件觸發(fā)、外部觸發(fā)A/DTRG引腳上升沿或內(nèi)部觸發(fā)定時計數(shù)器輸出。

        1.1.6 NAND FLASH接口

        AT91SAM7SE256的外部總線接口(EBI)集成了NAND FLASH器件接口電路,微控制器留給NAND FLASH的地址空間為:0x40000000~0x4FFFFFFF。這里采用的是SAMSUNG公司的K9F1G08U0M,NAND FLASH用于大容量存儲設(shè)備保存采集的數(shù)據(jù)[5]。

        1.1.7 SDRAM接口

        這里使用SDRAMC芯片HY57V561620與微控制器的SDRAM控制相連[5],數(shù)據(jù)寬度為16 b,容量為32 MB。

        1.1.8 USB設(shè)備接口

        PC機(jī)是通過USB接口與本采集系統(tǒng)進(jìn)行通信的,此時,本采集系統(tǒng)是作為基于USB接口的大容量存儲設(shè)備出現(xiàn)在通信過程中;PC機(jī)在給鋰離子電池充電時,也是通過USB接口來實(shí)現(xiàn)的。

        1.1.9 DBGU接口

        AT91SAM7SE256內(nèi)置的調(diào)試單元(Debug Unit)為處理器訪問基于Atmel的ARM內(nèi)核系統(tǒng)的所有調(diào)試功能提供了一個單入口點(diǎn),調(diào)試單元集成的2引腳通用異步收發(fā)器(UART)可用于多種調(diào)試與追蹤目的,它為調(diào)試監(jiān)控通信提供了理想媒介。調(diào)試單元通過MAX3232實(shí)現(xiàn)RS 232通信,收發(fā)器MAX3232配備專有的低漏失電壓發(fā)射器輸出狀態(tài),通過雙電荷泵,在3.0~5.5 V供電下,表現(xiàn)出真正的RS 232協(xié)議器性能,這些器件只需4個0.1 μF的外部電容,用于電荷泵。在保持RS 232協(xié)議輸出電平的前提下,可確保120 KBPS的數(shù)據(jù)傳輸速率。

        2 基于IAR的軟件設(shè)計與實(shí)現(xiàn)

        軟件設(shè)計主要包括:LCD顯示程序、按鍵設(shè)置程序、A/D數(shù)據(jù)采集程序、數(shù)據(jù)處理及FFT程序和基于NAND FLASH的USB大容量存儲設(shè)備驅(qū)動程序。軟件的編程均是基于Windows下的集成開發(fā)環(huán)境IAR,同時借助于J?Link仿真器實(shí)現(xiàn)程序燒寫和在線仿真,借助于DBGU調(diào)試接口與PC機(jī)實(shí)現(xiàn)RS 232調(diào)試通信,PC機(jī)通過終端仿真程序SecureCRT實(shí)時顯示調(diào)試信息。

        2.1 程序模塊設(shè)計與調(diào)試

        2.1.1 LCD顯示程序

        LCD驅(qū)動芯片NT7532驅(qū)動128×64點(diǎn)陣的液晶,將64行從上至下分為0~7共8頁,每頁由0~127共128個縱列構(gòu)成,每列是8個點(diǎn),與顯存中的一個字節(jié)對應(yīng),用戶只需要向NT7532的顯示RAM中傳送數(shù)據(jù),NT7532就會自動掃描將顯示RAM的數(shù)據(jù)自動在LCD液晶上顯示出來,顯示數(shù)據(jù)的內(nèi)容和大小由字庫決定,微處理器AT91SAM7SE256是通過串行外設(shè)接口(SPI)與NT7532實(shí)現(xiàn)通信、控制LCD顯示的,圖2為LCD顯示程序?qū)哟慰驁D。

        2.1.2 按鍵設(shè)置程序

        A/D轉(zhuǎn)換數(shù)據(jù)文件存儲時間及文件名的修改和NAND FLASH的格式化都是通過按鍵設(shè)計程序處理的,按鍵電平的定時掃描是通過AT91SAM7SE256的周期間隔定時器(PIT)中斷方式ISR_Pit()實(shí)現(xiàn)的,在PIT中斷處理程序中對與按鍵相關(guān)的I/O端口電平進(jìn)行掃描,獲得電平狀態(tài)的變化,根據(jù)電平變換實(shí)現(xiàn)相應(yīng)功能,圖3為按鍵掃描流程圖,按鍵處理程序如下:

        2.1.3 A/D數(shù)據(jù)采集程序

        ADC對連續(xù)的模擬信號進(jìn)行采樣,得到離散化的數(shù)字信號,由微處理器讀取該數(shù)字信號并進(jìn)行相應(yīng)的處理。采樣頻率過高,采樣點(diǎn)數(shù)過多,會占用大量的計算機(jī)內(nèi)存,降低數(shù)據(jù)處理速度;采樣頻率過低,又會使采樣數(shù)據(jù)失真而無法恢復(fù)原始連續(xù)信號。因此,必須根據(jù)信號的頻率范圍設(shè)置采樣頻率,同時又要滿足采樣定理的要求。當(dāng)采樣頻率一定時,增加采樣點(diǎn)數(shù)可以提高頻率分辨率,但數(shù)據(jù)存儲空間和計算量也相應(yīng)增大。一般可根據(jù)實(shí)際需要進(jìn)行采樣點(diǎn)數(shù)的選取,通常設(shè)置為2的整數(shù)次冪,以便于進(jìn)行后續(xù)的FFT頻譜分析。

        首先,初始化微控制器的ADC,配置為軟件觸發(fā),工作模式為正常模式的10 b模/數(shù)轉(zhuǎn)換器,然后使能本課題需要的5路模/數(shù)轉(zhuǎn)換通道,設(shè)定程控增益預(yù)算放大器LTC6915的放大倍數(shù),設(shè)置微控制器的TC2定時時間(采樣頻率),啟動TC2使其工作在中斷方式下,在TC2的中斷處理程序中,啟動A/D轉(zhuǎn)換,讀取A/D轉(zhuǎn)換結(jié)果,判斷A/D轉(zhuǎn)換數(shù)據(jù)Buffer是否已滿,如果已滿停止A/D轉(zhuǎn)換并將Buffer中的數(shù)據(jù)以FAT16文件系統(tǒng)管理的方式寫入NAND FLASH中,繼續(xù)A/D轉(zhuǎn)換,否則繼續(xù)向Buffer寫入A/D轉(zhuǎn)換結(jié)果[6]。

        2.1.4 數(shù)據(jù)處理及FFT程序

        (1) 時域參數(shù)檢測

        為了消除干擾,對轉(zhuǎn)換數(shù)據(jù)進(jìn)行滑動平均濾波;再求最值和平均值,結(jié)合模擬輸入范圍進(jìn)行電壓的標(biāo)度變換,可以計算出輸入信號的峰峰值和平均值。

        對于周期性信號,通過計算相鄰前向過零點(diǎn)之間的數(shù)據(jù)點(diǎn)數(shù),根據(jù)采樣頻率得到模擬輸入的周期(頻率)。此外,還可以通過相關(guān)函數(shù)計算信號周期的估算值。

        (2) FFT程序及其優(yōu)化

        (3) 基于NAND FLASH的USB存儲設(shè)備驅(qū)動程序

        在編寫USB大容量存儲設(shè)備的固件程序時,是借鑒Atmel公司提供的AT91 USB 大容量存儲設(shè)備軟件開發(fā)包,參照技術(shù)手冊AT91 USB Framework和AT91 USB Mass Storage Device Driver Implementation完成的。

        3 數(shù)據(jù)編程處理結(jié)果顯示

        在研究的采集系統(tǒng)中,以文件的形式存儲、管理模/數(shù)轉(zhuǎn)換結(jié)果,NAND FLASH中存儲的數(shù)據(jù)文件通過文件名確定文件屬于哪路模擬量輸入通道和處于該通道的第幾個采集文件。為了得到用來分析石油管道腐蝕情況的參數(shù),需要對這些模/數(shù)轉(zhuǎn)換結(jié)果進(jìn)行FFT處理獲得想要的兩大參數(shù):直流分量和50 Hz分量的大小。

        在數(shù)據(jù)編程處理過程中,分別實(shí)現(xiàn)了基于Matlab的數(shù)據(jù)處理編程及VC++與Matlab的混合編程。由于Matlab集成的FFT算法和強(qiáng)大、易用的繪圖處理功能使得在Matlab環(huán)境下實(shí)現(xiàn)數(shù)據(jù)處理很方便快捷,但是Matlab是一種腳本語言,需要依賴Matlab開發(fā)環(huán)境,這就大大制約了程序的可移植性和通用性;由于通過VC++實(shí)現(xiàn)Matlab的強(qiáng)大繪圖功能很復(fù)雜,因此通過VC++與Matlab混合編程可以充分發(fā)揮出二者各自的優(yōu)點(diǎn),大大提高了開發(fā)效率。

        為了測試采集系統(tǒng)ADC功能,基于Matlab的數(shù)據(jù)處理編程,基于VC++與Matlab的混合數(shù)據(jù)處理編程的處理效果,現(xiàn)用信號發(fā)生器提供特定頻率和特定幅值的電壓信號,每隔一段時間修改直流分量和交流分量的幅值,并對修改結(jié)果進(jìn)行記錄,待采集系統(tǒng)進(jìn)行一段時間的模/數(shù)轉(zhuǎn)換后,通過USB接口將采集系統(tǒng)的NAND FLASH中的數(shù)據(jù)讀取到PC機(jī)上進(jìn)行分析處理。圖4為基于Matlab的編程處理效果,圖5為Matlab與VC++混合編程的處理效果。

        從圖4和圖5可以看出,Matlab與VC++混合編程處理與基于Matlab的數(shù)據(jù)處理編程達(dá)到了基本相同的效果,同調(diào)試信號發(fā)生器的記錄結(jié)果進(jìn)行對比,可以看出采集系統(tǒng)與數(shù)據(jù)處理編程的整體效果是不錯的,但兩幅圖中都有毛刺出現(xiàn),這是因?yàn)樵诔霈F(xiàn)毛刺的時刻沒有改變信號發(fā)生器的輸出信號,經(jīng)過仔細(xì)分析初步將問題定位于NAND FLASH的布線問題上,嚴(yán)格根據(jù)NAND FLASH的布線規(guī)范說明重新做了塊板子,毛刺出現(xiàn)的概率降低了,基本上滿足了客戶需求。

        4 結(jié) 論

        本文把嵌入式系統(tǒng)應(yīng)用于便攜式數(shù)據(jù)采集與處理中,按照新的方案進(jìn)行了系統(tǒng)軟硬件的設(shè)計、調(diào)試并最終實(shí)現(xiàn)。在硬件方面,根據(jù)Atmel公司提供的微控制器開發(fā)板和客戶實(shí)際需求參與了硬件電路的設(shè)計,實(shí)現(xiàn)了5路模擬量輸入通道,鋰離子電池充電電路,SDRAM,NAND FLASH存儲器電路,USB設(shè)備接口和DBGU接口電路。系統(tǒng)軟件方面,在IAR集成開發(fā)環(huán)境下,借鑒Atmel公司提供的微控制器軟件開發(fā)包,參與設(shè)計了LCD顯示程序,按鍵設(shè)置程序,A/D數(shù)據(jù)采集程序,數(shù)據(jù)處理及FFT程序,NAND FLASH的FAT16管理程序和基于NAND FLASH的USB大容量存儲設(shè)備驅(qū)動程序。在對NAND FLASH中存儲的數(shù)/模轉(zhuǎn)換的數(shù)據(jù)進(jìn)行分析、處理的過程中,分別進(jìn)行了基于Matlab的數(shù)據(jù)處理編程和Matlab與VC++的混合編程。

        參考文獻(xiàn)

        [1] 朱應(yīng)飛,羅家融,李實(shí),等.EAST嵌入式數(shù)據(jù)采集系統(tǒng)設(shè)計[J].原子能科學(xué)技術(shù),2012,46(7):893?896.

        [2] 陳曦,蔡姍姍,王清,等.基于ARM9的模塊化數(shù)據(jù)采集系統(tǒng)的研究[J].儀表技術(shù)與傳感器,2013(12):24?26.

        [3] 付麗輝,尹文慶.基于嵌入式系統(tǒng)的洪澤湖水產(chǎn)養(yǎng)殖污染環(huán)境的遠(yuǎn)程數(shù)據(jù)采集與監(jiān)測[J].安徽農(nóng)業(yè)科學(xué),2012(13):7884?7886.

        [4] 李濤,陳征,吳立恒,等.一種新型分量式鉆孔應(yīng)變儀數(shù)據(jù)采集單元的設(shè)計及應(yīng)用[J].震災(zāi)防御技術(shù),2014,9(1):142?148.

        [5] 高飛,葉文華.基于嵌入式系統(tǒng)的OPC數(shù)據(jù)采集技術(shù)的研究與實(shí)現(xiàn)[J].中國制造業(yè)信息化,2012,41(5):34?39.

        [6] 張俊濤,劉紅科.基于ARM的高速公路動態(tài)計重系統(tǒng)的設(shè)計[J].計算機(jī)測量與控制,2012,20(1):219?221.

        [7] 劉會令.基于.NET的嵌入式系統(tǒng)OPC客戶端開發(fā)[D].北京:北京化工大學(xué),2013.

        av网页免费在线观看| 精品无码日韩一区二区三区不卡| 内地老熟女老少配视频| 被群cao的合不拢腿h纯肉视频| 国产av国片精品| 国产一区二区a毛片色欲 | 亚洲中文字幕第一第二页| 91精品久久久中文字幕| 少妇av免费在线播放| 国产桃色精品网站| 国产亚洲一区二区三区三州| 午夜蜜桃视频在线观看| 丰满少妇高潮惨叫久久久| 漂亮人妻被中出中文字幕久久| 亚洲国产成人精品无码区99 | 色婷婷一区二区三区四区| 精品一区二区三区国产av| 无码精品国产一区二区三区免费| 精品久久人妻av中文字幕| 久久久无码人妻精品一区| 久久亚洲精品ab无码播放| 无码精品国产午夜| 天堂久久一区二区三区| 国产成人无码a在线观看不卡| 国产高跟黑色丝袜在线| 久久久精品久久日韩一区综合 | 久久中文字幕久久久久91| 亚洲丝袜美腿精品视频| 野花香社区在线视频观看播放| 久久久久亚洲精品无码系列| a级毛片无码久久精品免费| 亚洲熟妇网| 亚洲av性色精品国产| 99人中文字幕亚洲区三| 国产乱码精品一区二区三区四川人| 少妇对白露脸打电话系列| 亚洲AV日韩AV高潮喷潮无码| 日本一区中文字幕在线播放| 在线免费看91免费版.| 人人摸人人搞人人透| 日本边添边摸边做边爱的网站|