基于ARM的智能無線信號變送器的設(shè)計
MAX1162是一款低功耗、16位模數(shù)轉(zhuǎn)換器(ADC),采用逐次逼近型ADC結(jié)構(gòu),具有自動關(guān)斷、1.1μs快速喚醒和兼容于SPI/QSPI/MICROWIRE的高速接口。MAX1162工作于+5V單模擬電源,并且具有獨(dú)立的數(shù)字電源引腳,允許芯片直接和+2.7~+5.25V的數(shù)字邏輯接口。
在最大采樣速度200ks/s下,MAX1162僅吸取2.5mA電流。在200ks/s(最大值)采樣速度下,功耗僅12.5mW(AVDD=DVDD=+5V)。AutoShutdown能在10ks/s速率下將電源電流減小至130μA,在更低的采樣速度下可以減小至10μA以下。
MAX1162的內(nèi)部結(jié)構(gòu)框圖見圖4。
圖4 MAX1162內(nèi)部結(jié)構(gòu)圖
② 相關(guān)電路設(shè)計
從跟隨器出來的模擬信號可能夾雜著噪聲信號,會對轉(zhuǎn)換精度產(chǎn)生影響,因此,在MAX1162前加入濾波電路,盡量減少輸入噪聲的影響。同時,為了減少對其他電路的影響,增加了0.1μF的去耦電容。電路原理圖見圖5。
圖5 A/D電路原理圖
3 GPRS MODEM接口電路
CMS91 GPRSMODEM是一塊以CMS91GPRS模塊為核心搭配必要外圍電路制成的GPRSMODEM。CMS91模塊是一種雙頻段GSM/GPRS10級模塊,既支持GSM的短信功能,也支持GPRS數(shù)據(jù)傳輸功能。MODEM提供了標(biāo)準(zhǔn)RS232接口,使用了6根串行通信信號線:TXD、RXD、DTR、CTS、RTS和GND。其通信波特率范圍為2400~115 200b/s。
LPC2136提供了一組完整的9芯(包括地)MODEM信號,我們可以使用其中對應(yīng)的6根來與MODEM通信,但由于是3.3V電平邏輯,要與MODEM的RS-232接口連接還需要電平轉(zhuǎn)換。雖然在本系統(tǒng)中我們所用MODEM使用6根MODEM信號線,但為了兼容其他各型號的串行MODEM,提高本系統(tǒng)的兼容性和升級能力,設(shè)計中將LPC2136提供的完整MODEM信號全部進(jìn)行電平轉(zhuǎn)換,通過跳線設(shè)置選擇實際應(yīng)用需要使用的信號線。
用MAX3243進(jìn)行3.3V和RS-232電平轉(zhuǎn)換。MAX3243是MAXIM公司推出的232電平轉(zhuǎn)換芯片,其內(nèi)部含有獨(dú)立電荷泵,可以從3.0~5.5V的電源電壓產(chǎn)生2Vcc的RS-232電平,使得其只需外接4個0.1μF的電容和一路 3.3V工作電源即可正常工作,大大簡化了電路設(shè)計。其具有5個接收器和3個驅(qū)動器,符合標(biāo)準(zhǔn)MODEM信號方向的配置,適合MODEM連接。其電路原理圖如圖6。
圖6 MODEM接口電路原理圖
軟件設(shè)計
軟件的編寫工作主要有兩個部分:AD轉(zhuǎn)換部分和GPRS MODEM部分。
AD轉(zhuǎn)換部分:模擬部分使用的A/D芯片為標(biāo)準(zhǔn)SPI接口。SPI接口操作比較簡單,在系統(tǒng)中我們使用IO口模擬SPI總線,按照各芯片規(guī)定的操作時序編寫相應(yīng)的IO口操作程序即可。MAX1162的讀寫時序見圖7。
從時序圖上可以看出,一個AD轉(zhuǎn)換周期從CS信號下降沿開始,并在6個時鐘節(jié)拍后ADC開始采集數(shù)據(jù)。SCLK信號驅(qū)動著轉(zhuǎn)換過程并在第8個時鐘節(jié)拍下降沿開始把轉(zhuǎn)換結(jié)果放到DOUT數(shù)據(jù)線上(高位數(shù)據(jù)在前),整個轉(zhuǎn)換周期需要24個時鐘節(jié)拍,在讀取轉(zhuǎn)換結(jié)果最低位后,CS被強(qiáng)制拉為高電平,自動復(fù)位內(nèi)部寄存器,并使MAX1162進(jìn)入掉電模式。具體程序的編寫可參考MAX1162的用戶手冊。
圖7 MAX1162讀寫時序
GPRS MODEM部分:為了解決終端設(shè)備(Terminal Equipment,TE)或數(shù)據(jù)終端設(shè)備(DataTerminal Equipment,DTE)與終端適配器(Terminal Adapter,TA)或數(shù)據(jù)電路終端設(shè)備(DataCircuit TerminalEquipment,DCE)之間通信的問題,著名通信設(shè)備生產(chǎn)商Hayes為此制定了一套指令,現(xiàn)在已成為事實上的標(biāo)準(zhǔn)并被所有調(diào)制解調(diào)器制造商采用。這就是常說的“AT指令”。AT指令幾乎都是以AT開始,以《CR》《LF》結(jié)尾的特定的字符串,AT后跟的字母和數(shù)字表明AT指令的具體功能。指令集分成標(biāo)準(zhǔn)AT指令集(StandardV.25ATCommands),AT增強(qiáng)指令集(ATCommandsforEnhancedFunctions),傳真指令集(ATCommandsforFAX)等多種。各個不同的MODEM生產(chǎn)廠商對于特殊的功能集進(jìn)行了相應(yīng)的增加。
我們使用的CellonCMS91模塊用于發(fā)送短消息的主要AT指令見表2。
表2 常用的短消息AT指令
在本系統(tǒng)中,CMS91模塊與LPC2136的UART1相聯(lián)。LPC2136通過UART1以字符的形式將AT指令發(fā)給CMS91模塊。在底層驅(qū)動中我們要完成的任務(wù)就是實現(xiàn)通過LPC2136的UART1向GPRS MODEM發(fā)送字符,其中最基本的函數(shù)是實現(xiàn)WRITE MODEM函數(shù)。
uint8 ModemWrite(char *Data, uint16 NByte)
{
uint8 err,i;
while(NByte》0)
{
OSSemPend(Uart1Send,0,err);
for(i=0;i《8;i++)
{
U1THR=*Data++;
NByte--;
if(NByte==0)
{
break;
}
}
}
return ModemState;
}
結(jié)束語
系統(tǒng)具備了移動網(wǎng)內(nèi)GPRS終端間互聯(lián)功能和INTERNET接入功能,此外,在結(jié)構(gòu)設(shè)計上,充分考慮了樣機(jī)系統(tǒng)的開放性、可擴(kuò)展性、易升級性等特點(diǎn),整個系統(tǒng)具有很高的性價比。實踐證明了該設(shè)計的可行性,但在系統(tǒng)的復(fù)位電路、外部時鐘電路和電源等幾個部分,本文只提供了一種最簡單的方案。在實際應(yīng)用中,對于較為復(fù)雜的現(xiàn)場環(huán)境可以相應(yīng)添加看門狗復(fù)位電路和獨(dú)立電源設(shè)計等復(fù)雜電路。
評論