嵌入式系統(tǒng)的存儲(chǔ)測(cè)試技術(shù)及無(wú)線(xiàn)傳輸應(yīng)用[圖]

相關(guān)專(zhuān)題: 無(wú)線(xiàn)

摘要:存儲(chǔ)測(cè)試技術(shù)是在特殊環(huán)境下記錄運(yùn)動(dòng)物體參數(shù)的最有效的手段。本文介紹了基于ARM7 LPC21xx開(kāi)發(fā)存儲(chǔ)測(cè)試系統(tǒng)的方法。Philips公司16/32位微控制器LPC21xx是基于支持實(shí)時(shí)仿真和嵌入式跟蹤的16/32 位ARM7TDMIS CPU的微控制器,它具有掉電和空閑兩種節(jié)電模式,可用電池供電并且長(zhǎng)期工作。利用微控制器內(nèi)部自帶的10位A/D轉(zhuǎn)換器來(lái)采樣,用SPI與nRF24L01模塊通信。

引言

存儲(chǔ)測(cè)試技術(shù)[1]方法是記錄在特殊環(huán)境下運(yùn)動(dòng)物體參數(shù)的行之有效的方法。它是先將測(cè)試數(shù)據(jù)存入存儲(chǔ)器,待裝置回收后通過(guò)特定接口與上位機(jī)進(jìn)行通信,還原數(shù)據(jù)信息。在許多消費(fèi)類(lèi)電子產(chǎn)品中,對(duì)數(shù)據(jù)采集存儲(chǔ)系統(tǒng)的實(shí)時(shí)性和功耗提出了更高的要求,不僅要同時(shí)滿(mǎn)足低功耗和微型化設(shè)計(jì),還要實(shí)時(shí)地反映現(xiàn)場(chǎng)采集數(shù)據(jù)的變化。這樣,就必須對(duì)系統(tǒng)的采樣速率、功耗等提出更高的要求。隨著半導(dǎo)體技術(shù)的發(fā)展,各種技術(shù)的進(jìn)步使得高速度、低功耗的數(shù)據(jù)采集系統(tǒng)能夠?qū)崿F(xiàn)。

本文主要使用Philips公司16/32位微控制器LPC2148[23]作為核心控制元件,通過(guò)與nRF24L01[4]結(jié)合使用,實(shí)現(xiàn)數(shù)據(jù)的采集、存儲(chǔ)以及發(fā)送。

1 系統(tǒng)原理

整個(gè)測(cè)試系統(tǒng)由模擬適配電路、外部晶振、微控制器、存儲(chǔ)器模塊、電源管理模塊、無(wú)線(xiàn)收發(fā)模塊以及接口電路組成,如圖1所示。

圖1 系統(tǒng)原理框圖

1.1 電源模塊

對(duì)電源模塊的設(shè)計(jì)是實(shí)現(xiàn)整個(gè)系統(tǒng)省電的核心部分。即電源只需要在電路各個(gè)模塊需要的時(shí)候給其供電,在不需要的時(shí)候斷電來(lái)減小系統(tǒng)的無(wú)效耗電量?梢允褂脝坞姵仉娫垂╇妼(shí)現(xiàn)多分枝電源網(wǎng)絡(luò)管理,使得系統(tǒng)各個(gè)模塊的電源相對(duì)獨(dú)立供電。但此時(shí)要注意帶電部分和不帶電部分的兼容問(wèn)題。

1.2 模擬適配電路

由于由傳感器測(cè)量的信號(hào)十分微弱,需要經(jīng)過(guò)適當(dāng)?shù)姆糯鬄V波等修正后才能夠進(jìn)行一系列處理。

1.3 微控制器

本測(cè)試系統(tǒng)選用Philips公司16/32位微控制器LPC2148作為核心控制元件。它內(nèi)部自帶10位A/D轉(zhuǎn)換器,無(wú)需外加A/D轉(zhuǎn)換器,即可以減小體積,又可以節(jié)省成本。同時(shí)它還具有掉電模式和空閑模式兩種省電模式,合理設(shè)計(jì)可以減小系統(tǒng)功耗。

1.4 接口電路以及無(wú)線(xiàn)收發(fā)部分

本測(cè)試系統(tǒng)有兩種方法與上位機(jī)進(jìn)行通信,一種是通過(guò)無(wú)線(xiàn)收發(fā)模塊nRF24L01來(lái)實(shí)現(xiàn),另一種是通過(guò)特定的接口電路來(lái)實(shí)現(xiàn),這樣即使無(wú)線(xiàn)傳輸部分出現(xiàn)錯(cuò)誤還可以保證事后回收數(shù)據(jù)。

2 系統(tǒng)主要部分的硬件與軟件介紹

2.1 內(nèi)部A/D轉(zhuǎn)換器的開(kāi)發(fā)

LPC2148內(nèi)部有兩個(gè)10位逐次逼近式模數(shù)轉(zhuǎn)換器,8個(gè)引腳復(fù)用為輸入腳(ADC0和ADC1),它具有掉電模式,測(cè)量范圍是0 V~VREF,10位的轉(zhuǎn)換時(shí)間≥2.44 μs,具有一個(gè)或者多個(gè)輸入的突發(fā)轉(zhuǎn)換模式,可選擇由輸入跳變或定時(shí)器匹配信號(hào)觸發(fā)轉(zhuǎn)換。它的基本時(shí)鐘由VPB(VLSI外圍總線(xiàn))時(shí)鐘提供,每個(gè)轉(zhuǎn)換器包含一個(gè)可編程分頻器,可將時(shí)鐘調(diào)整至逐步逼近轉(zhuǎn)換所需的4.5 MHz(最大),完全滿(mǎn)足精度要求的轉(zhuǎn)換需要11個(gè)這樣的時(shí)鐘。本文用LPC2148的I/O端口來(lái)實(shí)現(xiàn),使用ADC模塊的通道3 進(jìn)行電壓的測(cè)量,定義I/O端口P0.30為AD0.3,通過(guò)定時(shí)器中斷的到來(lái)而對(duì)電壓進(jìn)行采樣,對(duì)ADC寄存器的設(shè)置如下:

AD0CR=(1<<3)| //SEL=8,選擇通道3

((Fpclk/10000001)<<8)| //CLKDIV= Fpclk/10000001,轉(zhuǎn)換時(shí)鐘為 1 MHz

(0<<16)| //BURST=0,軟件控制轉(zhuǎn)換操作

(0<<17)| //CLKS=0,使用11clock轉(zhuǎn)換

(1<<21)| //PDN=1,正常工作模式

(0<<22)| //TEST1:0=00,正常工作模式

(1<<24)| //START=1,直接啟動(dòng)A/D轉(zhuǎn)換

(0<<27)| //直接啟動(dòng)A/D轉(zhuǎn)換時(shí)此位無(wú)效

DelayNS(10);

ADC_Data=AD0DR;//讀取A/D轉(zhuǎn)換結(jié)果,并清除DONE標(biāo)志位

while(1){

AD0CR|=1<<24; //進(jìn)行第一次轉(zhuǎn)換

while((AD0STAT&0x80000000)==0);//等待轉(zhuǎn)換結(jié)束

AD0CR|=1<<24;//再次啟動(dòng)轉(zhuǎn)換

while((AD0STAT&0x80000000)==0);//等待轉(zhuǎn)換結(jié)束

ADC_Data=AD0DR;//讀取A/D轉(zhuǎn)換結(jié)果

}

2.2 SPI與nRF24L01模塊的通信

SPI是一個(gè)全雙工的串行接口。它設(shè)計(jì)成可以處理在一個(gè)給定總線(xiàn)上多個(gè)互聯(lián)的主機(jī)和從機(jī)。在給定的數(shù)據(jù)傳輸過(guò)程中,接口上只能有一個(gè)主機(jī)和一個(gè)從機(jī)進(jìn)行通信。在一次數(shù)據(jù)傳輸過(guò)程中,主機(jī)總是向從機(jī)發(fā)送數(shù)據(jù)的8~16位,而從機(jī)也總是向主機(jī)發(fā)送一個(gè)字節(jié)數(shù)據(jù)。圖2 為SPI的4種不同數(shù)據(jù)的傳輸格式的時(shí)序。

圖2 SPI數(shù)據(jù)傳輸格式

在設(shè)置寄存器的過(guò)程中要注意CPOL為0和1時(shí)的不同以及SSEL、CPHA之間的關(guān)系。

SPI初始化的部分代碼如下:

void MSIP_Init(void){

PINSEL0=(PINSEL0&(~(0xff<<8)))|(0x55<<8); //設(shè)置引腳連接SPI

SPCCR=0x52;//設(shè)置SPI時(shí)鐘分頻

SPCR=(0<<3)| //CPHA=0,數(shù)據(jù)在SCK的第一個(gè)時(shí)鐘沿采樣

(1<<4)| //CPOL=1,SCK為低有效

(1<<5)| //MSTR=1,SPI處于主模式

(0<<6)| //LSBF=0,SPI數(shù)據(jù)傳輸MSB(位7)在先

(0<<7); //SPIE=0,SPI中斷被禁止

}

圖3接口電路

嵌入式微控制器與NRF24L01接口電路如圖3所示。

這8個(gè)引腳分別和微控制器的GPIO口相連,微控制器在初始化是設(shè)置成相應(yīng)的功能。GND為電源地;VDD為正電源1.9~3.6 V輸出;CE為工作模式的選擇,RX或TX模式;SS為SPI片選使能,低電平使能;SCK為SPI時(shí)鐘;MOSI 為SPI輸入;MISO為SPI輸出;IRQ為中斷輸出。

接收端部分代碼如下:

#include "NRF24L01.h"

unsigned int RxBuf[5]; //接收緩沖,保存接收到的數(shù)據(jù)

int main(){

NRF24L01_Initial(); //nRF24L01初始化

while((NRF24L01_RxStatus())!=1){//nRF24L01沒(méi)有數(shù)據(jù)請(qǐng)求

*P_Watchdog_Clear=0x0001;

}

NRF24L01_ReceiveByte(RxBuf);//接收數(shù)據(jù)

while(1){

*P_Watchdog_Clear=0x0001;

}

}

3 實(shí)驗(yàn)數(shù)據(jù)與驗(yàn)證

圖4是用本測(cè)試系統(tǒng)所測(cè)得的兩條實(shí)驗(yàn)曲線(xiàn)。該曲線(xiàn)所測(cè)的是引信電池[8]的電壓量。曲線(xiàn)可以分成兩部分,一部分是電池電壓隨著時(shí)間的增加而增加,另一部分是隨著時(shí)間的增加電壓量保持不變。這是由引信的特殊結(jié)構(gòu)所致。

經(jīng)過(guò)實(shí)驗(yàn)論證,本測(cè)試系統(tǒng)在誤差允許的范圍內(nèi)可以達(dá)到測(cè)量精度要求,從而驗(yàn)證了本測(cè)試系統(tǒng)具有較強(qiáng)的應(yīng)用性。

4 展望

未來(lái)的嵌入式產(chǎn)品是軟硬件緊密結(jié)合的設(shè)備,為了降低功耗和成本,需要設(shè)計(jì)者盡量精簡(jiǎn)系統(tǒng)內(nèi)核,只保留和系統(tǒng)功能緊密相關(guān)的軟硬件,利用最低的資源實(shí)現(xiàn)最適當(dāng)?shù)墓δ,通常都具有低功耗、體積小、集成度高等特點(diǎn)[9]。嵌入式系統(tǒng)和具體應(yīng)用有機(jī)地結(jié)合在一起,它的升級(jí)換代也是和具體產(chǎn)品同步進(jìn)行,因此嵌入式系統(tǒng)產(chǎn)品一旦進(jìn)入市場(chǎng),具有較長(zhǎng)的生命周期和巨大的市場(chǎng)潛力。

圖4 實(shí)驗(yàn)曲線(xiàn)

參考文獻(xiàn)

[1] 祖靜, 申湘南, 張文棟. 存儲(chǔ)測(cè)試技術(shù)[J].兵工學(xué)報(bào),1995(2).

[2] 周立功,等.深入淺出ARM7——LPC213x/214x[M].北京:北京航空航天大學(xué)出版社,2005.

[3] 周立功,等. ARM嵌入式系統(tǒng)基礎(chǔ)教程[M].北京:北京航空航天大學(xué)出版社,2005.

[4] nRF2401與SPI接口[EB/OL].[20080218].http://www.freqchina.com/SPI%20interface.pdf.

[5] ARM公司.ARM Developer Suite_CodeWarrior IDE Guide,2000.

[6] ARM公司.ARM Developer Suite_Compliers and Libraries,2000.

[7] ARM公司.ARM Developer Suite_Assembler Guide,2000.

[8] 王瑩澈,田昱,朱雅鵬. 鉛酸儲(chǔ)備電池在非旋轉(zhuǎn)彈引信上的應(yīng)用探索[J]. 探測(cè)與控制學(xué)報(bào),2008,30(5):5256.

[9] http://baike.baidu.com/view/6115.htm?fr=ala0_1_1.

孫婷婷(碩士生)、馬鐵華(教授、博士生導(dǎo)師)、沈大偉(講師),主要研究方向?yàn)閯?dòng)態(tài)測(cè)試與智能儀器。

作者:孫婷婷 馬鐵華 沈大偉   來(lái)源:《單片機(jī)與嵌入式系統(tǒng)應(yīng)用》
微信掃描分享本文到朋友圈
掃碼關(guān)注5G通信官方公眾號(hào),免費(fèi)領(lǐng)取以下5G精品資料
  • 1、回復(fù)“YD5GAI”免費(fèi)領(lǐng)取《中國(guó)移動(dòng):5G網(wǎng)絡(luò)AI應(yīng)用典型場(chǎng)景技術(shù)解決方案白皮書(shū)
  • 2、回復(fù)“5G6G”免費(fèi)領(lǐng)取《5G_6G毫米波測(cè)試技術(shù)白皮書(shū)-2022_03-21
  • 3、回復(fù)“YD6G”免費(fèi)領(lǐng)取《中國(guó)移動(dòng):6G至簡(jiǎn)無(wú)線(xiàn)接入網(wǎng)白皮書(shū)
  • 4、回復(fù)“LTBPS”免費(fèi)領(lǐng)取《《中國(guó)聯(lián)通5G終端白皮書(shū)》
  • 5、回復(fù)“ZGDX”免費(fèi)領(lǐng)取《中國(guó)電信5GNTN技術(shù)白皮書(shū)
  • 6、回復(fù)“TXSB”免費(fèi)領(lǐng)取《通信設(shè)備安裝工程施工工藝圖解
  • 7、回復(fù)“YDSL”免費(fèi)領(lǐng)取《中國(guó)移動(dòng)算力并網(wǎng)白皮書(shū)
  • 8、回復(fù)“5GX3”免費(fèi)領(lǐng)取《R1623501-g605G的系統(tǒng)架構(gòu)1
  • 本周熱點(diǎn)本月熱點(diǎn)

     

      最熱通信招聘

    業(yè)界最新資訊


      最新招聘信息

    最新論壇貼子