新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 一種嵌入式便攜數(shù)據(jù)采集分析儀

一種嵌入式便攜數(shù)據(jù)采集分析儀

作者: 時間:2012-04-20 來源:網(wǎng)絡(luò) 收藏

引言

本文引用地址:http://www.butianyuan.cn/article/171587.htm

對旋轉(zhuǎn)機(jī)械的多點振動測試實踐中,需要使用多種儀器,如示波器、動平衡儀、振動分析儀等。隨著測試技術(shù)的進(jìn)步,虛擬儀器的出現(xiàn)將其合而為一,大大簡化了復(fù)雜的測試工作。虛擬儀器的概念是使用計算機(jī)對被測信號進(jìn)行數(shù)據(jù)采集,并對采集到的數(shù)據(jù)序列進(jìn)行分析和顯示的全過程。按照虛擬儀器概念搭建的儀器需要三部分:計算機(jī)、數(shù)據(jù)采集硬件和分析軟件。數(shù)據(jù)采集硬件一般由A/D板卡實現(xiàn)。然而計算機(jī)的進(jìn)步和總線的變化使曾經(jīng)可行的測量結(jié)構(gòu)和分析程序在新的總線、操作系統(tǒng)上不能正常工作。各個廠家的A/D板卡一般只具有簡單的采樣觸發(fā)方式;硬件和windows底層源代碼的保密性又扼殺了用戶自行開發(fā)新的采樣觸發(fā)方式的可能性。PC機(jī)體積過大不便移動工作;筆記本電腦雖,內(nèi)部幾乎沒有插入板卡的空間,接口性能也嬌氣。這些不足又為測試工作帶來了新的不便。

近年來技術(shù)發(fā)展很快,使用單片機(jī)控制的數(shù)據(jù)采集系統(tǒng)方興未艾。但由于單片機(jī)性能的限制,采樣速率有限,存儲空間很小,不能滿足高速大容量采樣的需求,更不可能使儀器運行分析軟件,擺脫電腦獨立工作。

ARM系列微處理器功耗低且性能大大高于單片機(jī),使在系統(tǒng)上實現(xiàn)虛擬儀器成為可能。本文基于ARM7TDMI設(shè)計的實現(xiàn)了上述目的。

硬件結(jié)構(gòu)和工作原理

儀器的硬件結(jié)構(gòu)及工作原理圖如圖1所示。處理器選用三星(samsung)公司的s3c44b0x替代51單片機(jī),在保持微小功耗的前提下獲得了更高的運行頻率和更強(qiáng)大的數(shù)據(jù)處理能力。其ARM7TDMI內(nèi)核應(yīng)用改進(jìn)的RISC設(shè)計思想來獲得更好的功耗性能比,具有0.06mW/MHz的低功耗,保證儀器可以在電池供電條件下工作較長時間。ARM7的三級指令流水線提供0.97MIPS/MHz的指令效率,接近每周期執(zhí)行一條指令。

40.jpg
圖1 硬件結(jié)構(gòu)及工作原理圖

S3c44b0x外接10MHz的晶體振蕩器,通過內(nèi)部的PLL倍頻,運行在64MHz的主頻下。這樣的主頻比一般單片機(jī)高了5~10倍,保證處理器在控制高速A/D進(jìn)行數(shù)據(jù)采集的同時,還能提供額外運算時間來分析數(shù)據(jù)。除ARM7TDMI內(nèi)核外,s3c44b0x還提供PWM計數(shù)器、UART、DMA、 8通道10位精度A/D變換器等外圍設(shè)備。

存儲器方面,系統(tǒng)配置了8Mbyte的SDRAM和16Mbyte的FLASH。大容量的SDRAM提供了充足的程序運行空間和采集數(shù)據(jù)緩存。FLASH 一部分用作系統(tǒng)的啟動存儲器;一部分存儲采集到的數(shù)據(jù),即使掉電也不會丟失。存儲器通過16位數(shù)據(jù)線、地址線和片選線與處理器連接。S3c44b0x提供八個存儲器片選空間(bank)。

A/D變換器是數(shù)據(jù)采集的關(guān)鍵部件。儀器擁有兩個A/D變換器。一個是s3c4bb0x內(nèi)部的A/D變換器,具有10位精度,8通道和單通道最高 100kSps的速度。另一個是AD公司的AD7859芯片,具有12位精度,8通道和單通道最高200kSps的速度,自帶采樣保持器。AD7859通過16位數(shù)據(jù)線、地址線和片選線連接到處理器,占用一個存儲器bank。處理器以訪問存儲器的方式訪問AD7859,也可以使用處理器的DMA控制數(shù)據(jù)傳輸。AD7859的觸發(fā)端通過一個多路開關(guān)分別連接了儀器外時鐘輸入端和處理器的計數(shù)器輸出端,以實現(xiàn)多種觸發(fā)方式。此外,處理器還可以通過數(shù)據(jù)線傳送命令的方式觸發(fā)AD7859進(jìn)行采樣。

USB控制器是數(shù)據(jù)傳輸?shù)闹饕考?。本儀器選用Philips公司的PDIUSBD12芯片,符合USB1.1標(biāo)準(zhǔn),數(shù)據(jù)傳輸速度達(dá)到12Mbps。 PDIUSBD12作為下位機(jī)通過8位數(shù)據(jù)線、地址線和片選線連接到s3c44b0x,占用一個存儲器bank。PDIUSBD12的INT_N管腳連接到s3c44b0x的EINT2管腳,通過中斷方式通知處理器處理USB上位機(jī)的呼叫。PDIUSBD12的硬件連接電路原理圖如圖2所示。

41.jpg
圖2 PDIUSBD12硬件連接原理圖

儀器的人機(jī)交互界面由一塊320×240的高分辨率單色液晶顯示器和一塊4×4鍵盤組成。液晶顯示器模塊以8位數(shù)據(jù)線、地址和片選連接到s3c44b0x,占用一個存儲器bank。

軟件系統(tǒng)

軟件系統(tǒng)主要包括初始化程序、操作系統(tǒng)、采樣觸發(fā)程序、USB固件和應(yīng)用軟件5個部分。

初始化程序

初始化程序是針對s3c44b0x使用匯編語言編寫的。在將控制權(quán)交給操作系統(tǒng)前,初始化最基本的硬件設(shè)備。主要工作是配置SDRAM并將操作系統(tǒng)代碼從FLASH拷貝到SDRAM中。這一部分的主要代碼如下:

ResetHandler:

ldrr0,=WTCON;//watchdogdisable

ldrr1,=0x0

strr1,[r0]

mrsr0,cpsr;//disableinterrupt

orrr0,r0,#0xc0

msrcpsr,r0

/*Setclockcontrolregisters*/

ldrr0,=LOCKTIME

ldrr1,=2000; //count=t_lock*Fin

strr1,[r0]

ldrr0,=PLLCON

ldrr1,=0xf8033; //MCLK=64MHz

strr1,[r0]

ldrr0,=CLKCON

ldrr1,=0x7ff8; //AllunitblockCLKenable

strr1,[r0]

;/*Setmemorycontrollerregisters,initializeSDRAM*/

ldrr1,=0x11110002;//BWSCON

ldrr2,=0X600; //GCS0FLASHROM

ldrr3,=0X7FFC; //GCS1LCDCONTROLLER

ldrr4,=0X7FFC; //GCS2

ldrr5,=0X7FFC; //GCS3

ldrr6,=0X7FFC; //GCS4

ldrr7,=0X7FFC; //GCS5

ldrr8,=0X18000; //GCS6SDRAM

ldrr9,=0X18000; //GCS7SDRAM

ldrr10,=0x820419; //REFRESH

ldrr11,=0x16; //BankSize

ldrr12,=0x20; //MRSR6

ldrr13,=0x20; //MRSR7

ldrr0,=0x01c80000; //BWSCONAddress

stmiar0,{r1-r13}

;/*Copyentireprogramsto0x0c008000atSDRAM*/

ldrr0,=0x0;//startaddressoftheflashrom

ldrr1,=0xc008000; //targetaddressintheSDRAM

ldrr2,=0x128e0; //thenumberofbytesneedtocopy

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

上一頁 1 2 3 4 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉