基于ARM與嵌入式LinuxGPRS無(wú)線通訊系統(tǒng)_第1頁(yè)
基于ARM與嵌入式LinuxGPRS無(wú)線通訊系統(tǒng)_第2頁(yè)
基于ARM與嵌入式LinuxGPRS無(wú)線通訊系統(tǒng)_第3頁(yè)
基于ARM與嵌入式LinuxGPRS無(wú)線通訊系統(tǒng)_第4頁(yè)
基于ARM與嵌入式LinuxGPRS無(wú)線通訊系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩32頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、湖南文理學(xué)院芙蓉學(xué)院課程設(shè)計(jì)報(bào)告課程名稱:嵌入式系統(tǒng)課程設(shè)計(jì)專業(yè)班級(jí):通信1101班學(xué)生姓名: 指導(dǎo)教師: 楊峰 完成時(shí)間: 2014年6月7日 報(bào)告成績(jī):評(píng)閱意見(jiàn):評(píng)閱教師日期目錄一、設(shè)計(jì)題目4二、設(shè)計(jì)要求4三、設(shè)計(jì)作用及目的4四、設(shè)計(jì)所用設(shè)備及軟件4五、系統(tǒng)設(shè)計(jì)41、ARM處理器選型42、GSM/GPRS模塊選型6六、系統(tǒng)硬件設(shè)計(jì)71、ARM硬件結(jié)構(gòu)與外圍電路7(1)SAMSUNGS3C24107(2)ST2410開(kāi)發(fā)板的硬件結(jié)構(gòu)8(3)ST2410硬件資源分配9(4)ST2410接口資源11(5)ST2410的串口通訊122、M22通訊電路板的設(shè)計(jì)15(1)BenQM22GSM/GPRS

2、無(wú)線模塊15(2)BenQM22電源部分的設(shè)計(jì)16(3)BenQM22天線的選擇17(4)BenQM22與SIM卡的接口17(5)BenQM22在語(yǔ)音通訊設(shè)計(jì)18(6)BenQM22通訊板的PCB設(shè)計(jì)19(7)BenQM22通訊板的串口21七、系統(tǒng)軟件設(shè)計(jì)221、引導(dǎo)加載程序的設(shè)計(jì)22(1)Bootloader的基本概念22(2)ST2410的Bootloader功能說(shuō)明232、串口通訊程序的設(shè)計(jì)243、BenQM22模塊內(nèi)部的軟件特性264、AT指令27(1)AT指令的語(yǔ)法格式27(2)AT指令的分類285、系統(tǒng)軟件運(yùn)行流程圖28八、GPRS通訊系統(tǒng)運(yùn)行結(jié)果301、軟件運(yùn)行截圖31九、設(shè)計(jì)總

3、結(jié)34十、心得體會(huì)36十一、參考文獻(xiàn)3737基于ARM與嵌入式Linux的GPRS無(wú)線通訊系統(tǒng)1、 設(shè)計(jì)題目基于ARM與嵌入式Linux的GPRS無(wú)線通訊系統(tǒng)2、 設(shè)計(jì)要求1、 利用分組將數(shù)據(jù)在網(wǎng)絡(luò)中傳送,達(dá)到多用戶間對(duì)網(wǎng)絡(luò)資源的共享2、 同時(shí)網(wǎng)絡(luò)運(yùn)營(yíng)機(jī)構(gòu)可以最大限度地使用現(xiàn)有GSM設(shè)備,避免了GSM設(shè)備投資的浪費(fèi)。3、 數(shù)據(jù)傳送使用GPRS,而語(yǔ)音傳送使用GSM,使下載資料和通話可以同時(shí)進(jìn)行。3、 設(shè)計(jì)作業(yè)及目的1、 了解什么是GPRS及其體系結(jié)構(gòu)和基本功能2、 了解GPRS的是如何傳輸數(shù)據(jù)3、 了解GPRS在當(dāng)前時(shí)代的運(yùn)用4、 設(shè)計(jì)所用設(shè)備及軟件(1)SAMSUNGST2410ARM9開(kāi)發(fā)

4、板(2)SHARPTFT_LCD液晶屏(3)BenQM22GPRS模塊(4)神州行SIM卡(5)GSM900/1800MHz吸盤天線(6)BenQM22電路板五、系統(tǒng)設(shè)計(jì)1、ARM處理器選型ARM微處理器現(xiàn)有ARM7,ARM9,ARM9E,ARM10E,SecurCore,Xscale,StrongARM等幾個(gè)系列.鑒于當(dāng)前電子市場(chǎng)上的情況,在此我主要討論一下ARM7與ARM9這兩種主流處理器的特點(diǎn)及應(yīng)用領(lǐng)域。(1)ARM7微處理器系列ARM7系列微處理器為低功耗的32位RISC處理器,最適合用于對(duì)價(jià)位和功耗要求較高的消費(fèi)類應(yīng)用。ARM7微處理器系列具有如下特點(diǎn):具有嵌入式ICERT邏輯,調(diào)試

5、開(kāi)發(fā)方便。極低的功耗,適合對(duì)功耗要求較高的應(yīng)用,如便攜式產(chǎn)品。能夠提供0.9MIPS/MHz的三級(jí)流水線結(jié)構(gòu)。代碼密度高并兼容16位的Thumb指令集。對(duì)操作系統(tǒng)的支持廣泛,包括WindowsCE、Linux、PalmOS等。指令系統(tǒng)與ARM9系列、ARM9E系列和ARM10E系列兼容,便于用戶的產(chǎn)品升級(jí)換代。主頻最高可達(dá)130MIPS,高速的運(yùn)算處理能力能勝任絕大多數(shù)的復(fù)雜應(yīng)用。ARM7系列微處理器的主要應(yīng)用領(lǐng)域?yàn)椋汗I(yè)控制、Internet設(shè)備、網(wǎng)絡(luò)和調(diào)制解調(diào)器設(shè)備、移動(dòng)電話等多種多媒體和嵌入式應(yīng)用。ARM7系列微處理器包括如下幾種類型的核:ARM7TDMI、ARM7TDMI-S、ARM7

6、20T、ARM7EJ。其中,ARM7TMDI是目前使用最廣泛的32位嵌入式RISC處理器,屬低端ARM處理器核。(2)ARM9微處理器系列ARM9系列微處理器在高性能和低功耗特性方面提供最佳的性能。具有以下特點(diǎn):5級(jí)整數(shù)流水線,指令執(zhí)行效率更高。提供1.1MIPS/MHz的哈佛結(jié)構(gòu)。支持32位ARM指令集和16位Thumb指令集。支持32位的高速AMBA總線接口。全性能的MMU,支持WindowsCE、Linux、PalmOS等多種主流嵌入式操作系統(tǒng)。MPU支持實(shí)時(shí)操作系統(tǒng)。支持?jǐn)?shù)據(jù)Cache和指令Cache,具有更高的指令和數(shù)據(jù)處理能力。ARM9系列微處理器主要應(yīng)用于無(wú)線設(shè)備、儀器儀表、安全

7、系統(tǒng)、機(jī)頂盒、高端打印機(jī)、數(shù)字照相機(jī)和數(shù)字?jǐn)z像機(jī)等。ARM9系列微處理器包含ARM920T、ARM922T和ARM940T三種類型.由此可見(jiàn),ARM9對(duì)于Linux操作系統(tǒng)的支持性明顯強(qiáng)于ARM7。因此,本系統(tǒng)采的核心微處理器是SAMSUNGS3C2410(以ARM920T為內(nèi)核)。2、GSM/GPRS模塊選型目前市面上出現(xiàn)的主流GPRS/GSM模塊主要有以下幾種:(1)BenQ公司的M20/M22(A)/M32(A)模塊;(2)SIEMENS公司的TC35i/MC35模塊;(3)SonyEricsson公司的GR47/GR48模塊考慮到市場(chǎng)的普及度與可靠性的要求,我們選擇BenQ公司的通訊模

8、塊。鑒于設(shè)計(jì)成本與功能上的要求,本系統(tǒng)采用BenQM22無(wú)線模塊。BenQM22特性如下:z支持頻段:EGSM900/DCS1800/PCS1900MHZz符合ETSIGSMphase2+z支持SIM接口:3Vz工作電壓3.2V4.2Vz通訊功能:支持GSM語(yǔ)音,數(shù)據(jù),傳真,短消息及GPRS數(shù)據(jù)傳輸?shù)葄軟件支持標(biāo)準(zhǔn)ATcommand(3GPP27.07/27.05)z尺寸:36.8x35.2x2.85(mm)z48PINLCC封裝6、 系統(tǒng)硬件設(shè)計(jì)1、ARM硬件結(jié)構(gòu)與外圍電路(1)SAMSUNGS3C2410S3C2410對(duì)于片內(nèi)的各個(gè)部件采用了獨(dú)立的電源供給方式:內(nèi)核采用1.8V供電;存儲(chǔ)單

9、元采用3.3V獨(dú)立供電;I/O采用獨(dú)立3.3V供電S3C2410的內(nèi)部結(jié)構(gòu)圖如下圖1所示圖1 S3C2410內(nèi)部結(jié)構(gòu)圖(2)ST2410開(kāi)發(fā)板的硬件結(jié)構(gòu)本系統(tǒng)采用的是深圳優(yōu)龍公司開(kāi)發(fā)的基于SAMSUNGARM9的ST2410開(kāi)發(fā)板。該開(kāi)發(fā)板的外圍電路及功能如下所示:(1) 采用三星公司的S3C2410,主頻可達(dá)203MHz;(2) 64M字節(jié)的SDRAM,由兩片K4S561632組成,工作在32位模式下;(3) 64M字節(jié)NANDFlash,采用的是K9F1208,可以兼容16M,32M或128M字節(jié);(4) 2M字節(jié)的NorFlash,采用的是SST39VF1601,工作在16位模式;(5)

10、10M以太網(wǎng)接口,采用的是CS8900Q3,帶傳輸和連接指示燈;(6)LCD和觸摸屏接口;(7)1個(gè)USBHOST,S3C2410內(nèi)置的,符合USB1.1;一個(gè)USBDevice,S3C2410內(nèi)置的,符合USB1.1;(8)支持音頻輸入和音頻輸出,音頻模塊由S3C2410的IIS音頻總線接口和UDA1341音頻編碼解碼器組成,板上還集成了一個(gè)MIC,用于音頻輸入;(9)2路UART串行口,波特率可高達(dá)115200bps,并具有RS232電平轉(zhuǎn)換電路;(10) SD卡接口,兼容SDMemoryCardProtocol1.0和SDIOCardProtocol1.0;(11) Embedded-I

11、CE(20腳標(biāo)準(zhǔn)JTAG)接口和并口式JTAG接口,支持ADS,SDT軟件的下載和調(diào)試以及FLASH的燒寫;(12)串行EEPROM:AT24C024KbytesEEPROM,IIC接口;(13)蜂鳴器,4個(gè)LED燈;4個(gè)按鍵,開(kāi)關(guān)電源,分布式電源供電,3V鋰電池,提供CPU內(nèi)置RTC操持電源;圖2 ST2410開(kāi)發(fā)板實(shí)物圖(3) ST2410硬件資源分配 S3C2410將系統(tǒng)的存儲(chǔ)空間分成8組(Bank),每組的大小是128MB,共1GB。Bank0到Bank5的開(kāi)始地址是固定的,用于ROM或SRAM。Bank6和Bank7用于ROM、SRAM或SDRAM,這兩個(gè)組可編程且大小相同。Bank

12、7的開(kāi)始地址是Bank6的結(jié)束地址,靈活可變。所有內(nèi)存塊的訪問(wèn)周期都是可編程的。S3C2410采用nGCS7:08個(gè)通用片選信號(hào)選擇這些組。因此,S3C2410支持兩種啟動(dòng)模式:(1)從NANDFLASH啟動(dòng)(2)從外部nGCS0片選的NORFLASH啟動(dòng)所以在這兩種啟動(dòng)模式下,各片選的存儲(chǔ)空間分配是不同的,這兩種啟動(dòng)模式的存儲(chǔ)分配如圖3所示:圖3 存儲(chǔ)空間分配圖a)圖是nGCS0片選的NorFlash啟動(dòng)模式下的存儲(chǔ)分配圖;b)圖是NANDFLASH啟動(dòng)模式下的存儲(chǔ)分配圖;說(shuō)明:SFRArea為特殊寄存器地址空間在進(jìn)行器件地址說(shuō)明之前,有一個(gè)點(diǎn)需要注意,nGCS0片選的空間在不同的啟動(dòng)模式下

13、,映射的器件是不一樣的。由下表可以知道:(1)在NorFlash啟動(dòng)模式(非NANDFLASH啟動(dòng)模式)下,與nGCS0相連的外部存儲(chǔ)器NorFlash就被映射到nGCS0片選的空間。表4 硬件地址分配表地址范圍說(shuō)明片選信號(hào)0x4800_00000x6000_0000SFR(特殊寄存器)地址空間0x4000_00000x4000_0FFFNANDFLASH啟動(dòng)模式下,該空間沒(méi)有被使用非NANDFLASH啟動(dòng)模式下,該空間為BootSRam0x3000_00000x3400_0000SDRAM空間nGCS60x1900_0300CS8900的IO基址nGCS30x0000_00000x0020_

14、0000NANDFLASH啟動(dòng)模式下,BootRam的有效地址:0x0000_00000x0000_0FFFnGCS0非NANDFLASH啟動(dòng)模式下,NorFlash的有效地址空間為:0x0000_00000x0020_0000(2)ST2410接口資源表5 跳線分配表跳線名稱說(shuō)明JP1(核心板)決定S3C2410的啟動(dòng)模式插上短路塊從NandFlash中啟動(dòng),默認(rèn)不插上短路塊從NorFlash中啟動(dòng)表6 核心板按鍵說(shuō)明按鍵名稱說(shuō)明S1(Reset)(核心板)復(fù)位按鍵,小按鍵K1K4按鍵4鍵盤表7 底板接口說(shuō)明接口名稱說(shuō)明T1(RJ45)以太網(wǎng)接口(RJ45,帶隔離器的)UART1(J8),U

15、ART3(J7)串行口1,2U10紅外線IrDASD_CARD(J1)SD卡接口J17USBHOST接口USB_DEVICE(J15)USBDEVICE接口J2音頻輸出接口J27CCFL背光電源輸出接口J6板子的電源接口JP2一些擴(kuò)展口JP1(LCDINTERFACE)LCD和觸摸屏接口(3)ST2410的串口通訊由于在本系統(tǒng)中ARM與PC機(jī)和M22模塊都是通過(guò)串口進(jìn)行通訊。在此,我詳細(xì)介紹一下S3C2410的串口資源。串行通信是微計(jì)算機(jī)之間一種常見(jiàn)的近距離通信手段,因使用方便,編程簡(jiǎn)單而廣泛使用,幾乎所有的微控制器,PC都提供串行通信接口。(1)串行通訊傳輸格式圖8 串口的幀數(shù)據(jù)傳輸格式開(kāi)始

16、前,線路處于空閑狀態(tài),送出連續(xù)“1”。傳送開(kāi)始時(shí)首先發(fā)一個(gè)“0”作為起始位,然后出現(xiàn)在通信線上的是字符的二進(jìn)制編碼數(shù)據(jù)。 每個(gè)字符的數(shù)據(jù)位長(zhǎng)可以約定為5位、6位、7位或8位,一般采用ASCII編碼。后面是奇偶校驗(yàn)位,根據(jù)約定,用奇偶校驗(yàn)位將所傳字符中為“1”的位數(shù)湊成奇數(shù)個(gè)或偶數(shù)個(gè)。也可以約定不要奇偶校驗(yàn),這樣就取消奇偶校驗(yàn)位。最后是表示停止位的“1”信號(hào),這個(gè)停止位可以約定持續(xù)1位、1.5位或2位的時(shí)間寬度。至此一個(gè)字符傳送完畢,線路又進(jìn)入空閑,持續(xù)為“1”。經(jīng)過(guò)一段隨機(jī)的時(shí)間后,下一個(gè)字符開(kāi)始傳送才又發(fā)出起始位。每一個(gè)數(shù)據(jù)位的寬度等于傳送波特率的倒數(shù)。微機(jī)異步串行通信中,常用的波特率為11

17、0,150,300,600,1200,2400,4800,9600等。(2)電氣特性RS-232標(biāo)準(zhǔn)采用的接口是9芯或25芯的D型插頭,常用的一般是9針插頭(DB-9),下表是DB9引腳說(shuō)明:表9 DB9引腳說(shuō)明引腳名稱全稱說(shuō)明FGFrameGround連到及其的接地線TXDTransmittedData數(shù)據(jù)輸出線RXDReceivedData數(shù)據(jù)輸入線RTSRequesttoSend要求發(fā)送數(shù)據(jù)CTSCleartoSend回應(yīng)對(duì)方發(fā)送的RTS的發(fā)送許可,告訴對(duì)方可以發(fā)送DSRDataSetReady告知本機(jī)在待命狀態(tài)DTRDataTerminalReady告知數(shù)據(jù)終端處于待命狀態(tài)CDCarr

18、ierDetect載波檢出,用以確認(rèn)是否收到Modem的載波SGSignalGround信號(hào)線的接地線(嚴(yán)格的說(shuō)是信號(hào)線的零標(biāo)準(zhǔn)線)圖10 DB9引腳實(shí)物圖要完成基本的通信功能,實(shí)際上只需要RXD,TXD,GND即可,但是由于BenQ的M22通訊模塊需要握手信號(hào)(RTS和CTS),所以在本系統(tǒng)中至少要接5根線。同時(shí)又由于RS-232-C標(biāo)準(zhǔn)所定義的高,低電平信號(hào)與S3C210X系統(tǒng)的LVTTL電路定義的高,低電平信號(hào)完全不同,LVTTL的標(biāo)準(zhǔn)邏輯“1”對(duì)應(yīng)2V3.3V電平,標(biāo)準(zhǔn)邏輯“0”對(duì)應(yīng)0V0.4V電平,而RS-232-C標(biāo)準(zhǔn)采用負(fù)邏輯方式,標(biāo)準(zhǔn)邏輯“1”對(duì)應(yīng)-5V-15V電平,標(biāo)準(zhǔn)邏輯“

19、0”對(duì)應(yīng)+5V+15V。顯然,兩者間要進(jìn)行通信,必須經(jīng)過(guò)電平的轉(zhuǎn)換,轉(zhuǎn)換芯片采用的MAX232。電路原理圖見(jiàn)圖11:圖11 串口連接電圖其中J8串口負(fù)責(zé)與BenQM22通訊,J7串口負(fù)責(zé)與PC機(jī)通訊。 (3)S3C2410的UART操作S3C2410的UART(通用異步串行口)單元提供三個(gè)獨(dú)立的異步串行I/O端口,每個(gè)都可以在中斷和DMA兩種模式下進(jìn)行。它們支持最高波特率115.2Kbps。每個(gè)UART通道包含2個(gè)16位FIFO分別提供給接收和發(fā)送。S3C2410X的UART可以進(jìn)行以下參數(shù)的設(shè)置:可編程的波特率,紅外收/發(fā)模式,1或2個(gè)停止位,5位,6位,7位或8位數(shù)據(jù)寬度和奇偶位校驗(yàn)。2、

20、M22通訊電路板的設(shè)計(jì)BenQM22通訊電路板主要是由M22無(wú)線模塊的外圍接口電路組成(參見(jiàn)附錄1)。該電路板主要包括以下幾個(gè)部分:(1)電源與整流部分(2)串口通訊接口(3)SIM卡電路(4)差分語(yǔ)音電路(5)LED信號(hào)燈顯示電路(6)蜂鳴器接口(7)按鍵輸入(8)天線接口(1)BenQM22GSM/GPRS無(wú)線模塊BenQ的這款M22無(wú)線模塊能通過(guò)手機(jī)網(wǎng)絡(luò)為任何需要語(yǔ)音通訊和數(shù)據(jù)傳輸要求的產(chǎn)品提供無(wú)線通訊解決方案。主要用于以下方面:無(wú)線PSTN、車載電話、無(wú)線終端、報(bào)警或安全系統(tǒng)、遠(yuǎn)程控制、短信通訊其管腳(44腳)分配如表12所示表12 BenQM22管腳分配表管腳名管腳數(shù)目描述UART/

21、RS2326RS232接口UART22軟件調(diào)試BU1蜂鳴器輸出GPIO6通用I/O管腳PowerOn1上電運(yùn)行LEDDriver1LED驅(qū)動(dòng)SIM4SIM卡接口VBATRF3RF的電源輸入VBATBB1BB的電源輸入Audio7語(yǔ)音接口KeypadInterrupt1鍵盤中斷接口BGND10地NC1無(wú)連接圖13 M22模塊內(nèi)部結(jié)構(gòu)框圖(2)BenQM22電源部分的設(shè)計(jì)我們知道無(wú)線模塊的耗電具有不穩(wěn)定的特點(diǎn)。在待機(jī)狀態(tài),在和基站的握手狀態(tài),在通話狀態(tài),在撥號(hào)狀態(tài),在信號(hào)強(qiáng)弱不同的地方這些因素都會(huì)直接的影響無(wú)線模塊的耗電流,所以無(wú)線模塊的電源設(shè)計(jì)非常重要。M22推薦的電源電壓范圍為DC3.6-4V

22、,所以我在設(shè)計(jì)電源的時(shí)候取3.8V的電壓,模塊在工作中最大的瞬間電流能夠達(dá)到1.7A,所以考慮到大電流的需要,我采用LM2576開(kāi)關(guān)穩(wěn)壓芯片。又因?yàn)檩^高的輸出電壓紋波(一般大于20mV)是開(kāi)關(guān)穩(wěn)壓電源設(shè)計(jì)中不可回避的問(wèn)題。在某些對(duì)電源紋波電壓有特殊要求的場(chǎng)合(如MCU內(nèi)部有高精度A/D轉(zhuǎn)換器等),可采用開(kāi)關(guān)穩(wěn)壓電源來(lái)提高穩(wěn)壓電源的工作效率或采用線性穩(wěn)壓電源來(lái)降低穩(wěn)壓電源的輸出紋波電壓。因此,采用開(kāi)關(guān)穩(wěn)壓電源與線性穩(wěn)壓電源相結(jié)合的形式可為有特殊要求的MCU供電提供一種更好的方法。因此我的最終電源設(shè)計(jì)方案采用LM7805和LM2576的聯(lián)合設(shè)計(jì)。直流電源(12V)輸入LM7805,然后輸出DC5V

23、,與此同時(shí)通過(guò)LM2576產(chǎn)生DC4V電壓供給M22。由于LM2576具有可靠的工作性能、較高的工作效率和較強(qiáng)的輸出電流驅(qū)動(dòng)能力,從而為M22的穩(wěn)定、可靠工作提供了強(qiáng)有力的保證。圖14 M22電路板電源部分電路原理圖(3)BenQM22天線的選擇實(shí)際上天線的選擇總是一個(gè)難題。因?yàn)檫@和整個(gè)系統(tǒng)有關(guān)系,甚至和不同地區(qū)的GSM網(wǎng)絡(luò)有一定的關(guān)系。BENQ在對(duì)天線的選擇上推薦了一個(gè)如下的參考標(biāo)準(zhǔn):表15 頻率波段范圍表16 VSWR(駐波比)參數(shù)表另外,對(duì)Impedance也要求為50ohms。(4)BenQM22與SIM卡的接口由于BenQM22必須通過(guò)中國(guó)電信的GSM/GPRS網(wǎng)絡(luò)才能夠工作,所以必

24、須要用到SIM電話卡。安裝時(shí)只要以右上角的缺口為準(zhǔn)即可。圖17 SIM卡接口電路原理圖(5) BenQM22在語(yǔ)音通訊設(shè)計(jì) 在語(yǔ)音通訊方面,M22提供了兩個(gè)語(yǔ)音通道:一個(gè)我們叫做差分通道,也就是說(shuō)無(wú)論是MICPHONE信號(hào)的輸入,還是SPEAKER信號(hào)的輸出都是采用差分的形式。也就是我們平時(shí)所說(shuō)的“雙端輸入雙端輸出”。在管腳的定義上MICIP,MICIN就分別是MICPHONE的正輸入端和負(fù)輸入端。EARP,EARN就分別是SPEAKER的正輸出端和負(fù)輸出端。另一路語(yǔ)音通道是單端方式。具體管腳定義為AUXI和AUXOP。其中AUXI為MICPHONE的正輸入端,MICPHONE的負(fù)輸入端應(yīng)該對(duì)

25、地。AUXOP為SPERKER的正輸出端,SPERKER的另一端應(yīng)該對(duì)地。當(dāng)然從外部線路的轉(zhuǎn)換來(lái)說(shuō)在這一路語(yǔ)音通道的使用中,MICPHONE也可以接成差分的形式,但是需要一個(gè)轉(zhuǎn)換電路。SPERKER也可以接成差分輸入的形式,也需要一個(gè)差分轉(zhuǎn)單端的線路。圖18是差分端的MICPHONE輸入?yún)⒖紙D圖18 差分方式的MICPHONE電路原理圖 圖19是SPEAKER的線路圖圖19 差分方式的SPEAKER電路原理圖需要說(shuō)明的是,由于單端輸入單端輸出的語(yǔ)音通道特別容易受到輻射干擾,從而對(duì)語(yǔ)音的質(zhì)量產(chǎn)生了很大的影響,所以在本系統(tǒng)中只采用了差分語(yǔ)音通道。(6)BenQM22通訊板的PCB設(shè)計(jì)該通訊板設(shè)計(jì)成

26、為一個(gè)雙面PCB,在Protel99SE集成開(kāi)發(fā)環(huán)境設(shè)計(jì)而成。圖20 M22通訊板PCB圖因?yàn)镸22通訊板是高頻電路,所以在繪制PCB時(shí)除了要注意一般電路板的設(shè)計(jì)規(guī)范以外,一定要注意抗干擾的問(wèn)題:(1)各部件之間的引線要盡量短。(2)在重要以及易受干擾的電路板對(duì)外接口線路中串接高頻扼流環(huán),以抑制高頻干擾同時(shí)也起到抗操作人員所帶靜電的作用。(3)在信號(hào)輸出及輸入端使用光耦進(jìn)行光電隔離,光耦兩端使用分離的電源,能有效地抑制尖脈沖及各種噪聲的干擾。在光電耦合器的輸入端,既使是幅值很高的干擾,也會(huì)由于沒(méi)有足夠的能量使發(fā)光二極管發(fā)光而被抑制。(4)采用單點(diǎn)接地法。(5)盡量使用45度折線而不用90度折線

27、布線以減少高頻信號(hào)對(duì)外的發(fā)射與耦合。任何信號(hào)都不形成環(huán)路。(6)采用屏蔽技術(shù)。(7)經(jīng)驗(yàn)告訴我們,寬度為100mil厚度為1盎司的PCB銅鉑能夠通過(guò)的電流約為3A。既然M22的瞬間電流為1.7A,那么PCB走線的時(shí)候,銅鉑的寬度就不能太小??紤]到實(shí)際使用的時(shí)候一般的平均電流為250mA的實(shí)際情況,我在電源走線的時(shí)候銅鉑寬度為80mil。(8)若是電源從一層走到另外一層的時(shí)候,必然要用過(guò)孔來(lái)過(guò)渡。這個(gè)時(shí)候過(guò)孔數(shù)量是多少是需要注意的,由于機(jī)械加工的原因,過(guò)孔分布一定要均勻。(9)音頻走線部分主要注意兩點(diǎn):1)各條音頻線不交叉;2)各條走線之間要包裹地線。這兩點(diǎn)措施主要是從防止射頻干擾的考慮出發(fā)的。

28、另外電源走線或者是時(shí)鐘走線也不能和音頻走線交叉無(wú)論這種交叉是在頂層TOPLAYER,還是在底層BOTTOMLAYER(10)比較均勻的鋪地。因?yàn)檫@樣也是減少干擾和降低一些很難覺(jué)察的錯(cuò)誤的產(chǎn)生的措施。 (11)在固定時(shí)必須接地。(7)BenQM22通訊板的串口前面已經(jīng)提到了由于RS-232電平的問(wèn)題,M22不能直接和PC機(jī)通訊,但是可以直接和ARM或單片機(jī)通訊,不需要任何電平轉(zhuǎn)換芯片。那為什么這里卻又需要一個(gè)電平轉(zhuǎn)換芯片(SP3238)呢?主要是由于ST2410上的串口已經(jīng)通過(guò)了MAX232,轉(zhuǎn)換成了RS-232-C電平。為了能夠與其通訊,必須也要將由M22出來(lái)的串口信號(hào)轉(zhuǎn)換成RS-232-C電

29、平。在此,我們采用的是另一種電平轉(zhuǎn)換芯片SP3238。因?yàn)榇诵酒梢砸淮无D(zhuǎn)換9個(gè)信號(hào)線,與MAX232相比更方便。圖21 M22與ARM進(jìn)行串口通訊原理圖圖22 SP3238與M22接口的電路原理圖七、系統(tǒng)軟件設(shè)計(jì)該GPRS通訊程序是在ARMADS1.2(ARMDeveloperSuite。是ARM公司推出的新一代ARM集成開(kāi)發(fā)工具。)集成開(kāi)發(fā)環(huán)境中編譯通過(guò)后,然后產(chǎn)生可以直接燒寫在FLASH中的.bin格式的二進(jìn)制可執(zhí)行文件,最后進(jìn)行下載運(yùn)行的。1、引導(dǎo)加載程序的設(shè)計(jì)(1)Bootloader的基本念一個(gè)嵌入式Linux系統(tǒng)從軟件的角度看,通??梢苑譃樗膫€(gè)層次:(1)引導(dǎo)加載程序:包括固化在

30、固件(firmware)中的boot代碼(可選),和BootLoader兩大部分。(2)Linux內(nèi)核:特定于嵌入式板子的定制內(nèi)核以及內(nèi)核的啟動(dòng)參數(shù)。(3)文件系統(tǒng):包括根文件系統(tǒng)和建立于Flash內(nèi)存設(shè)備之上文件系統(tǒng)。(4)用戶應(yīng)用程序。特定于用戶的應(yīng)用程序,有時(shí)在用戶應(yīng)用程序和內(nèi)核層之間可能還會(huì)包括一個(gè)嵌入式圖形用戶界面。常用的嵌入式GUI有:MicroWindows和MiniGUI等。(2)ST2410的Bootloader功能說(shuō)明本系統(tǒng)的Bootloader除了具有一般的功能外,還具有以下擴(kuò)展功能:USB口文件下載、串口文件下載、NOR和NANDFLASH的燒寫、運(yùn)行存儲(chǔ)在FLASH中

31、的程序、針對(duì)linux設(shè)置啟動(dòng)參數(shù)、設(shè)置Wince或Linux的自啟動(dòng)、運(yùn)行BenQM22GPRS通訊系統(tǒng)ST2410的Bootloader的流程圖,如圖4.1所示如前所述,此核心板一共由三大存儲(chǔ)設(shè)備NorFlash(2M)NandFlash(64M)SDRAM(64M)。前兩個(gè)Flash設(shè)備就猶如PC機(jī)的兩塊硬盤,(由于NandFlash無(wú)論在價(jià)格與性能上都優(yōu)于NorFlash,因此現(xiàn)在一般都采用NandFlash。)而SDRAM就猶如PC機(jī)的內(nèi)存設(shè)備。下面來(lái)看一下ST2410的Bootloader中設(shè)置的NorFlash與NandFlash的內(nèi)部結(jié)圖23 Bootloader流程圖構(gòu)圖。圖

32、24 NorFlash空間分配圖 圖25 NandFlash空間分配圖2、串口通訊程序的設(shè)計(jì)如前所述,本系統(tǒng)有三大模塊:(1)PC機(jī):主要負(fù)責(zé)人機(jī)交互。在PC機(jī)上運(yùn)行DNW(一種串口調(diào)試軟件),從而可以顯示和接受來(lái)自ARM的數(shù)據(jù)。(2)ARM微處理器:核心處理器。將已經(jīng)編寫成功的GPRS通訊程序燒寫到其NandFlash中。 (3)M22通訊模塊:GPRS通訊的具體實(shí)現(xiàn)。接受來(lái)自ARM的AT指令,從而進(jìn)行GPRS通訊,并將有用的信息反饋給ARM。圖26 三大模塊之間串口通訊接線原理圖由此可見(jiàn),串口通訊是本系統(tǒng)主要手段。下面我們就來(lái)詳細(xì)的談?wù)勱P(guān)于串口這部分程序的設(shè)計(jì)。S3C2410ARM微處理器

33、的串口主要是通過(guò)各種串口控制寄存器來(lái)操作串口的:z線路控制寄存器(ULCONn):用來(lái)規(guī)定傳輸幀的格式;z控制寄存器(UCONn):用來(lái)設(shè)定串口的一些工作模式;z狀態(tài)寄存器(UTRSTATn):用來(lái)查詢串口的狀態(tài);z波特率(UBRDIV):用來(lái)設(shè)置波特率;z發(fā)送寄存器(UTXHn):往這里寫數(shù)據(jù)便可以直接往TXD發(fā)送數(shù)據(jù);z接收寄存器(URXHn):從這里讀數(shù)據(jù)便可以直接接受來(lái)自RXD的數(shù)據(jù)。(具體的每一位的功能分配,請(qǐng)參見(jiàn)SAMSUNGS3C2410數(shù)據(jù)手冊(cè))下面針對(duì)本系統(tǒng),結(jié)合具體的程序,來(lái)具體的討論一下串口的操作步驟;(1)管腳初始化:由于S3C2410微處理器總共只有272個(gè)管腳。而要

34、實(shí)現(xiàn)那么多的功能,顯然如果一個(gè)管腳就只有一個(gè)功能的話肯定是不夠用的。因此,有一些管腳具有多個(gè)功能。在使用之前必須要對(duì)管腳的功能進(jìn)行選擇。rGPHCON=0x2afaa4;/選擇串口功能的管腳rGPHUP=0x7ff;/關(guān)閉所有管腳的上拉功能(2)串口寄存器初始化(以串口0為例):rUFCON0=0x0;/關(guān)閉串口0的FIFO功能rUMCON0=0x0;/關(guān)閉流控功能rULCON0=0x3;/設(shè)置8位數(shù)據(jù)位、1位停止位、無(wú)奇偶校驗(yàn)串口模式rUCON0=0x245;/設(shè)置串口0的觸發(fā)模式rUBRDIV0=(int)(pclk/16./baud+0.5)-1);/設(shè)置波特率,pclk為CPU主頻,b

35、aud為波特率(3)收發(fā)數(shù)據(jù)while(!(rUTRSTAT0&0x1);/等待接收緩沖空Data=rURXH0;/接受數(shù)據(jù) while(!(rUTRSTAT0&0x2);/等待發(fā)送緩沖區(qū)空rUTXH0=data;/發(fā)送數(shù)據(jù)在此就幾個(gè)問(wèn)題作一下說(shuō)明:(1)溢出的問(wèn)題:本系統(tǒng)用的只是串口通訊的一般模式。因此,發(fā)送寄存器和接收寄存器都只有1個(gè)字節(jié)那么大的空間。那么尤其是在截接受數(shù)據(jù)時(shí)很容易出現(xiàn)接受溢出的現(xiàn)象(即接收寄存器中的數(shù)據(jù)還來(lái)不及被取走,下一個(gè)數(shù)據(jù)就到來(lái)了)。我在編程時(shí)注意到了這個(gè)問(wèn)題,我采用的辦法是:只要接收到了一個(gè)字節(jié)的數(shù)據(jù)就馬上把它賦給一個(gè)字符型變量,從而為接收下一個(gè)數(shù)

36、據(jù)做準(zhǔn)備。(2)握手信號(hào)(RTS/CTS):如前所述,當(dāng)ARM通過(guò)串口0和BenQM22通訊時(shí),必須至少要連接5根信號(hào)線(即TXD,RXD,RTS,CTS,GND)。但是由于在S3C2410中,在普通模式下并不能使用RTS和CTS。然而,我們并沒(méi)有必要將GPH0和GPH1管腳定義成CTS和RTS。只需要將GPH0定義成INPUT,將RTS定義成OUTPUT就可以了。(由于PC機(jī)和ARM通訊采用的是串口1,而這只需要3個(gè)數(shù)據(jù)信號(hào)線就夠了,不需要握手信號(hào)。)3、BenQM22模塊內(nèi)部的軟件特性BenQM22的內(nèi)部集成的軟件包括以下3個(gè)部分:Layer1驅(qū)動(dòng)、協(xié)議棧/AT命令、基本接口由于在無(wú)線PS

37、TN和BenQM22模塊中都有微處理器,在這兩者之間的接口通常是AT指令。當(dāng)然由于協(xié)議棧(TCP/IP)的存在,我們也可以通過(guò)發(fā)送AT指令達(dá)到聯(lián)通GSM/GPRS網(wǎng)的目的。圖27 BenQM22模塊內(nèi)部軟件結(jié)構(gòu)圖圖28 BenQM22接收指令時(shí)的流程圖4、AT指令我們可以通過(guò)AT命令進(jìn)行呼叫短信電話本數(shù)據(jù)業(yè)務(wù)補(bǔ)充業(yè)務(wù)傳真等方面的控制。圖29 AT指令示意圖1、AT指令的語(yǔ)法格式(1)基本語(yǔ)法格式<name><value>Example:ATV1<CR><CR><LF>OK<CR><LF>(response)(2

38、)擴(kuò)展命令格式+<name>=<value>Example:AT+CMUT=0<CR><CR><LF>OK<CR><LF>(response)(3)測(cè)試命令格式+<name>=?Example:ATS3=?<CR><CR><LF>S3:(0-127)<CR><LF>(response)<CR><LF>OK<CR><LF>(4)讀取命令格式+<name>?Example:AT+CAC

39、M?<CR><CR><LF>+CACM:”0”<CR><LF>(response)<CR><LF>OK<CR><LF>2、AT指令的分類(1)一般命令(2)呼叫控制命令(3)網(wǎng)絡(luò)業(yè)務(wù)命令(4)安全性命令(5)電話本命令(6)短消息命令(7)補(bǔ)充業(yè)務(wù)命令(8)數(shù)據(jù)命令(9)傳真命令(10)串口控制命令5、系統(tǒng)軟件運(yùn)行流程圖軟件主菜單流程圖外電呼入時(shí)流程圖發(fā)送短信流程圖電話本查詢流程圖主動(dòng)呼叫流程圖八、GPRS通訊系統(tǒng)運(yùn)行結(jié)果1、軟件運(yùn)行截圖下面是軟件主要功能運(yùn)行時(shí)的屏幕截圖(1)Bootl

40、oader主菜單Bootloader主菜單(2)GPRS主功能菜單GPRS主功能菜單(3)主動(dòng)呼叫主動(dòng)呼叫(4)主動(dòng)呼叫時(shí),主動(dòng)掛機(jī)掛機(jī)(5)查閱短消息 短信信息(6)編輯與發(fā)送短消息編輯短信(7)電話本功能菜單電話本菜單(8)查閱已經(jīng)存儲(chǔ)的電話號(hào)碼查閱存儲(chǔ)的電話(9)添加電話條目時(shí)出錯(cuò)添加電話條目時(shí)出錯(cuò)(10)添加電話條目成功添加電話條目成功(11)刪除電話條目刪除電話條目(12)查詢已撥電話查詢已撥電話 (13)查詢未接聽(tīng)電話 查詢未接聽(tīng)電話(14)查詢已接聽(tīng)電話查詢已接聽(tīng)電話(15)來(lái)電顯示來(lái)電顯示九、設(shè)計(jì)總結(jié)計(jì)算機(jī)發(fā)展的目標(biāo)是專用電腦,實(shí)現(xiàn)“普遍化計(jì)算”,因此可以稱嵌入式系統(tǒng)是構(gòu)成未來(lái)

41、世界的“數(shù)字基因”。嵌入式系統(tǒng)與無(wú)線通訊網(wǎng)絡(luò)的有機(jī)結(jié)合,構(gòu)成了最具吸引力的嵌入式通訊設(shè)備:設(shè)計(jì)應(yīng)用到車載GPS系統(tǒng),手持PDA,智能手機(jī)等各方面。本文針對(duì)BenQM22無(wú)線模塊在無(wú)線通訊方面的應(yīng)用,對(duì)基于ARM9與嵌入式Linux的GPRS無(wú)線通訊系統(tǒng)的軟件和硬件方面的設(shè)計(jì)進(jìn)行了研究,并對(duì)可以實(shí)現(xiàn)的語(yǔ)音通訊、短信控制、電話本記錄、來(lái)電查詢、來(lái)電顯示等功能進(jìn)行了驗(yàn)證。(1)硬件設(shè)備和開(kāi)發(fā)平臺(tái)的選擇是嵌入式開(kāi)發(fā)中的關(guān)鍵環(huán)節(jié)。硬件發(fā)面,本文對(duì)三星公司的各種ARM系列進(jìn)行了分析分析比較,選取了性價(jià)比更高,應(yīng)用更廣泛,對(duì)Linux操作系統(tǒng)支持性更好的ARM構(gòu)架的為處理系列的芯片S3C2410X。同樣,在

42、GSM/GPRS通訊模塊的選擇上,選取的是明基公司的M22無(wú)線通訊模塊。開(kāi)發(fā)平臺(tái)方面,Linux的可靠性、開(kāi)源性、低成本以及豐富的開(kāi)發(fā)工具和開(kāi)發(fā)資源,使得選擇嵌入式Linux系統(tǒng)成為必然。(2)引導(dǎo)裝載程序(Bootloader)的開(kāi)發(fā)是嵌入式開(kāi)發(fā)中非常重要的環(huán)節(jié)。本文充分利用嵌入式Linux系統(tǒng)的開(kāi)源特性,先對(duì)業(yè)界標(biāo)準(zhǔn)的引導(dǎo)裝載程序vivi進(jìn)行了分析,然后再針對(duì)ST2410開(kāi)發(fā)板的外圍電路設(shè)計(jì)了相應(yīng)的Bootloader,并在此基礎(chǔ)上增加了M22無(wú)線通訊功能。在通過(guò)ADS1.2調(diào)試通過(guò)后,便直接下載到ARM中運(yùn)行。因此,簡(jiǎn)化了開(kāi)發(fā)流程,縮短了開(kāi)發(fā)周期。(3)M22模塊通訊電路板的設(shè)計(jì)是本系統(tǒng)的關(guān)鍵部分。本文首先就M22外圍電路中的幾個(gè)具體問(wèn)題做了詳細(xì)的說(shuō)明與解釋:如電源部分的設(shè)計(jì)、差分語(yǔ)音通訊的電路、M22與SIM卡的接口設(shè)計(jì)、天線的選擇等等。又因?yàn)榇薖CB是高頻電路板,與其他的PCB設(shè)計(jì)有很多的不同之處。本文也同時(shí)詳細(xì)的討論了高頻PCB設(shè)計(jì)的方法與注意事項(xiàng),從而為后續(xù)工作搭建了一個(gè)很好的平臺(tái)。(4)本系統(tǒng)內(nèi)3個(gè)模塊之間都是采用串口進(jìn)行通訊的。本文先分別對(duì)PC機(jī)、ARM、M22模塊的串口接口電路進(jìn)行了深入比較與研究,然后針對(duì)AT指令,對(duì)具體的串口通訊的接口編程的步驟和方法進(jìn)行了詳細(xì)的討論。ARM與嵌

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論