版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、湖南文理學院芙蓉學院課程設計報告課程名稱:嵌入式系統(tǒng)課程設計專業(yè)班級:通信1101班學生姓名: 指導教師: 楊峰 完成時間: 2014年6月7日 報告成績:評閱意見:評閱教師日期目錄一、設計題目4二、設計要求4三、設計作用及目的4四、設計所用設備及軟件4五、系統(tǒng)設計41、ARM處理器選型42、GSM/GPRS模塊選型6六、系統(tǒng)硬件設計71、ARM硬件結構與外圍電路7(1)SAMSUNGS3C24107(2)ST2410開發(fā)板的硬件結構8(3)ST2410硬件資源分配9(4)ST2410接口資源11(5)ST2410的串口通訊122、M22通訊電路板的設計15(1)BenQM22GSM/GPRS
2、無線模塊15(2)BenQM22電源部分的設計16(3)BenQM22天線的選擇17(4)BenQM22與SIM卡的接口17(5)BenQM22在語音通訊設計18(6)BenQM22通訊板的PCB設計19(7)BenQM22通訊板的串口21七、系統(tǒng)軟件設計221、引導加載程序的設計22(1)Bootloader的基本概念22(2)ST2410的Bootloader功能說明232、串口通訊程序的設計243、BenQM22模塊內部的軟件特性264、AT指令27(1)AT指令的語法格式27(2)AT指令的分類285、系統(tǒng)軟件運行流程圖28八、GPRS通訊系統(tǒng)運行結果301、軟件運行截圖31九、設計總
3、結34十、心得體會36十一、參考文獻3737基于ARM與嵌入式Linux的GPRS無線通訊系統(tǒng)1、 設計題目基于ARM與嵌入式Linux的GPRS無線通訊系統(tǒng)2、 設計要求1、 利用分組將數(shù)據在網絡中傳送,達到多用戶間對網絡資源的共享2、 同時網絡運營機構可以最大限度地使用現(xiàn)有GSM設備,避免了GSM設備投資的浪費。3、 數(shù)據傳送使用GPRS,而語音傳送使用GSM,使下載資料和通話可以同時進行。3、 設計作業(yè)及目的1、 了解什么是GPRS及其體系結構和基本功能2、 了解GPRS的是如何傳輸數(shù)據3、 了解GPRS在當前時代的運用4、 設計所用設備及軟件(1)SAMSUNGST2410ARM9開發(fā)
4、板(2)SHARPTFT_LCD液晶屏(3)BenQM22GPRS模塊(4)神州行SIM卡(5)GSM900/1800MHz吸盤天線(6)BenQM22電路板五、系統(tǒng)設計1、ARM處理器選型ARM微處理器現(xiàn)有ARM7,ARM9,ARM9E,ARM10E,SecurCore,Xscale,StrongARM等幾個系列.鑒于當前電子市場上的情況,在此我主要討論一下ARM7與ARM9這兩種主流處理器的特點及應用領域。(1)ARM7微處理器系列ARM7系列微處理器為低功耗的32位RISC處理器,最適合用于對價位和功耗要求較高的消費類應用。ARM7微處理器系列具有如下特點:具有嵌入式ICERT邏輯,調試
5、開發(fā)方便。極低的功耗,適合對功耗要求較高的應用,如便攜式產品。能夠提供0.9MIPS/MHz的三級流水線結構。代碼密度高并兼容16位的Thumb指令集。對操作系統(tǒng)的支持廣泛,包括WindowsCE、Linux、PalmOS等。指令系統(tǒng)與ARM9系列、ARM9E系列和ARM10E系列兼容,便于用戶的產品升級換代。主頻最高可達130MIPS,高速的運算處理能力能勝任絕大多數(shù)的復雜應用。ARM7系列微處理器的主要應用領域為:工業(yè)控制、Internet設備、網絡和調制解調器設備、移動電話等多種多媒體和嵌入式應用。ARM7系列微處理器包括如下幾種類型的核:ARM7TDMI、ARM7TDMI-S、ARM7
6、20T、ARM7EJ。其中,ARM7TMDI是目前使用最廣泛的32位嵌入式RISC處理器,屬低端ARM處理器核。(2)ARM9微處理器系列ARM9系列微處理器在高性能和低功耗特性方面提供最佳的性能。具有以下特點:5級整數(shù)流水線,指令執(zhí)行效率更高。提供1.1MIPS/MHz的哈佛結構。支持32位ARM指令集和16位Thumb指令集。支持32位的高速AMBA總線接口。全性能的MMU,支持WindowsCE、Linux、PalmOS等多種主流嵌入式操作系統(tǒng)。MPU支持實時操作系統(tǒng)。支持數(shù)據Cache和指令Cache,具有更高的指令和數(shù)據處理能力。ARM9系列微處理器主要應用于無線設備、儀器儀表、安全
7、系統(tǒng)、機頂盒、高端打印機、數(shù)字照相機和數(shù)字攝像機等。ARM9系列微處理器包含ARM920T、ARM922T和ARM940T三種類型.由此可見,ARM9對于Linux操作系統(tǒng)的支持性明顯強于ARM7。因此,本系統(tǒng)采的核心微處理器是SAMSUNGS3C2410(以ARM920T為內核)。2、GSM/GPRS模塊選型目前市面上出現(xiàn)的主流GPRS/GSM模塊主要有以下幾種:(1)BenQ公司的M20/M22(A)/M32(A)模塊;(2)SIEMENS公司的TC35i/MC35模塊;(3)SonyEricsson公司的GR47/GR48模塊考慮到市場的普及度與可靠性的要求,我們選擇BenQ公司的通訊模
8、塊。鑒于設計成本與功能上的要求,本系統(tǒng)采用BenQM22無線模塊。BenQM22特性如下:z支持頻段:EGSM900/DCS1800/PCS1900MHZz符合ETSIGSMphase2+z支持SIM接口:3Vz工作電壓3.2V4.2Vz通訊功能:支持GSM語音,數(shù)據,傳真,短消息及GPRS數(shù)據傳輸?shù)葄軟件支持標準ATcommand(3GPP27.07/27.05)z尺寸:36.8x35.2x2.85(mm)z48PINLCC封裝6、 系統(tǒng)硬件設計1、ARM硬件結構與外圍電路(1)SAMSUNGS3C2410S3C2410對于片內的各個部件采用了獨立的電源供給方式:內核采用1.8V供電;存儲單
9、元采用3.3V獨立供電;I/O采用獨立3.3V供電S3C2410的內部結構圖如下圖1所示圖1 S3C2410內部結構圖(2)ST2410開發(fā)板的硬件結構本系統(tǒng)采用的是深圳優(yōu)龍公司開發(fā)的基于SAMSUNGARM9的ST2410開發(fā)板。該開發(fā)板的外圍電路及功能如下所示:(1) 采用三星公司的S3C2410,主頻可達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以太網接口,采用的是CS8900Q3,帶傳輸和連接指示燈;(6)LCD和觸摸屏接口;(7)1個USBHOST,S3C2410內置的,符合USB1.1;一個USBDevice,S3C2410內置的,符合USB1.1;(8)支持音頻輸入和音頻輸出,音頻模塊由S3C2410的IIS音頻總線接口和UDA1341音頻編碼解碼器組成,板上還集成了一個MIC,用于音頻輸入;(9)2路UART串行口,波特率可高達115200bps,并具有RS232電平轉換電路;(10) SD卡接口,兼容SDMemoryCardProtocol1.0和SDIOCardProtocol1.0;(11) Embedded-I
11、CE(20腳標準JTAG)接口和并口式JTAG接口,支持ADS,SDT軟件的下載和調試以及FLASH的燒寫;(12)串行EEPROM:AT24C024KbytesEEPROM,IIC接口;(13)蜂鳴器,4個LED燈;4個按鍵,開關電源,分布式電源供電,3V鋰電池,提供CPU內置RTC操持電源;圖2 ST2410開發(fā)板實物圖(3) ST2410硬件資源分配 S3C2410將系統(tǒng)的存儲空間分成8組(Bank),每組的大小是128MB,共1GB。Bank0到Bank5的開始地址是固定的,用于ROM或SRAM。Bank6和Bank7用于ROM、SRAM或SDRAM,這兩個組可編程且大小相同。Bank
12、7的開始地址是Bank6的結束地址,靈活可變。所有內存塊的訪問周期都是可編程的。S3C2410采用nGCS7:08個通用片選信號選擇這些組。因此,S3C2410支持兩種啟動模式:(1)從NANDFLASH啟動(2)從外部nGCS0片選的NORFLASH啟動所以在這兩種啟動模式下,各片選的存儲空間分配是不同的,這兩種啟動模式的存儲分配如圖3所示:圖3 存儲空間分配圖a)圖是nGCS0片選的NorFlash啟動模式下的存儲分配圖;b)圖是NANDFLASH啟動模式下的存儲分配圖;說明:SFRArea為特殊寄存器地址空間在進行器件地址說明之前,有一個點需要注意,nGCS0片選的空間在不同的啟動模式下
13、,映射的器件是不一樣的。由下表可以知道:(1)在NorFlash啟動模式(非NANDFLASH啟動模式)下,與nGCS0相連的外部存儲器NorFlash就被映射到nGCS0片選的空間。表4 硬件地址分配表地址范圍說明片選信號0x4800_00000x6000_0000SFR(特殊寄存器)地址空間0x4000_00000x4000_0FFFNANDFLASH啟動模式下,該空間沒有被使用非NANDFLASH啟動模式下,該空間為BootSRam0x3000_00000x3400_0000SDRAM空間nGCS60x1900_0300CS8900的IO基址nGCS30x0000_00000x0020_
14、0000NANDFLASH啟動模式下,BootRam的有效地址:0x0000_00000x0000_0FFFnGCS0非NANDFLASH啟動模式下,NorFlash的有效地址空間為:0x0000_00000x0020_0000(2)ST2410接口資源表5 跳線分配表跳線名稱說明JP1(核心板)決定S3C2410的啟動模式插上短路塊從NandFlash中啟動,默認不插上短路塊從NorFlash中啟動表6 核心板按鍵說明按鍵名稱說明S1(Reset)(核心板)復位按鍵,小按鍵K1K4按鍵4鍵盤表7 底板接口說明接口名稱說明T1(RJ45)以太網接口(RJ45,帶隔離器的)UART1(J8),U
15、ART3(J7)串行口1,2U10紅外線IrDASD_CARD(J1)SD卡接口J17USBHOST接口USB_DEVICE(J15)USBDEVICE接口J2音頻輸出接口J27CCFL背光電源輸出接口J6板子的電源接口JP2一些擴展口JP1(LCDINTERFACE)LCD和觸摸屏接口(3)ST2410的串口通訊由于在本系統(tǒng)中ARM與PC機和M22模塊都是通過串口進行通訊。在此,我詳細介紹一下S3C2410的串口資源。串行通信是微計算機之間一種常見的近距離通信手段,因使用方便,編程簡單而廣泛使用,幾乎所有的微控制器,PC都提供串行通信接口。(1)串行通訊傳輸格式圖8 串口的幀數(shù)據傳輸格式開始
16、前,線路處于空閑狀態(tài),送出連續(xù)“1”。傳送開始時首先發(fā)一個“0”作為起始位,然后出現(xiàn)在通信線上的是字符的二進制編碼數(shù)據。 每個字符的數(shù)據位長可以約定為5位、6位、7位或8位,一般采用ASCII編碼。后面是奇偶校驗位,根據約定,用奇偶校驗位將所傳字符中為“1”的位數(shù)湊成奇數(shù)個或偶數(shù)個。也可以約定不要奇偶校驗,這樣就取消奇偶校驗位。最后是表示停止位的“1”信號,這個停止位可以約定持續(xù)1位、1.5位或2位的時間寬度。至此一個字符傳送完畢,線路又進入空閑,持續(xù)為“1”。經過一段隨機的時間后,下一個字符開始傳送才又發(fā)出起始位。每一個數(shù)據位的寬度等于傳送波特率的倒數(shù)。微機異步串行通信中,常用的波特率為11
17、0,150,300,600,1200,2400,4800,9600等。(2)電氣特性RS-232標準采用的接口是9芯或25芯的D型插頭,常用的一般是9針插頭(DB-9),下表是DB9引腳說明:表9 DB9引腳說明引腳名稱全稱說明FGFrameGround連到及其的接地線TXDTransmittedData數(shù)據輸出線RXDReceivedData數(shù)據輸入線RTSRequesttoSend要求發(fā)送數(shù)據CTSCleartoSend回應對方發(fā)送的RTS的發(fā)送許可,告訴對方可以發(fā)送DSRDataSetReady告知本機在待命狀態(tài)DTRDataTerminalReady告知數(shù)據終端處于待命狀態(tài)CDCarr
18、ierDetect載波檢出,用以確認是否收到Modem的載波SGSignalGround信號線的接地線(嚴格的說是信號線的零標準線)圖10 DB9引腳實物圖要完成基本的通信功能,實際上只需要RXD,TXD,GND即可,但是由于BenQ的M22通訊模塊需要握手信號(RTS和CTS),所以在本系統(tǒng)中至少要接5根線。同時又由于RS-232-C標準所定義的高,低電平信號與S3C210X系統(tǒng)的LVTTL電路定義的高,低電平信號完全不同,LVTTL的標準邏輯“1”對應2V3.3V電平,標準邏輯“0”對應0V0.4V電平,而RS-232-C標準采用負邏輯方式,標準邏輯“1”對應-5V-15V電平,標準邏輯“
19、0”對應+5V+15V。顯然,兩者間要進行通信,必須經過電平的轉換,轉換芯片采用的MAX232。電路原理圖見圖11:圖11 串口連接電圖其中J8串口負責與BenQM22通訊,J7串口負責與PC機通訊。 (3)S3C2410的UART操作S3C2410的UART(通用異步串行口)單元提供三個獨立的異步串行I/O端口,每個都可以在中斷和DMA兩種模式下進行。它們支持最高波特率115.2Kbps。每個UART通道包含2個16位FIFO分別提供給接收和發(fā)送。S3C2410X的UART可以進行以下參數(shù)的設置:可編程的波特率,紅外收/發(fā)模式,1或2個停止位,5位,6位,7位或8位數(shù)據寬度和奇偶位校驗。2、
20、M22通訊電路板的設計BenQM22通訊電路板主要是由M22無線模塊的外圍接口電路組成(參見附錄1)。該電路板主要包括以下幾個部分:(1)電源與整流部分(2)串口通訊接口(3)SIM卡電路(4)差分語音電路(5)LED信號燈顯示電路(6)蜂鳴器接口(7)按鍵輸入(8)天線接口(1)BenQM22GSM/GPRS無線模塊BenQ的這款M22無線模塊能通過手機網絡為任何需要語音通訊和數(shù)據傳輸要求的產品提供無線通訊解決方案。主要用于以下方面:無線PSTN、車載電話、無線終端、報警或安全系統(tǒng)、遠程控制、短信通訊其管腳(44腳)分配如表12所示表12 BenQM22管腳分配表管腳名管腳數(shù)目描述UART/
21、RS2326RS232接口UART22軟件調試BU1蜂鳴器輸出GPIO6通用I/O管腳PowerOn1上電運行LEDDriver1LED驅動SIM4SIM卡接口VBATRF3RF的電源輸入VBATBB1BB的電源輸入Audio7語音接口KeypadInterrupt1鍵盤中斷接口BGND10地NC1無連接圖13 M22模塊內部結構框圖(2)BenQM22電源部分的設計我們知道無線模塊的耗電具有不穩(wěn)定的特點。在待機狀態(tài),在和基站的握手狀態(tài),在通話狀態(tài),在撥號狀態(tài),在信號強弱不同的地方這些因素都會直接的影響無線模塊的耗電流,所以無線模塊的電源設計非常重要。M22推薦的電源電壓范圍為DC3.6-4V
22、,所以我在設計電源的時候取3.8V的電壓,模塊在工作中最大的瞬間電流能夠達到1.7A,所以考慮到大電流的需要,我采用LM2576開關穩(wěn)壓芯片。又因為較高的輸出電壓紋波(一般大于20mV)是開關穩(wěn)壓電源設計中不可回避的問題。在某些對電源紋波電壓有特殊要求的場合(如MCU內部有高精度A/D轉換器等),可采用開關穩(wěn)壓電源來提高穩(wěn)壓電源的工作效率或采用線性穩(wěn)壓電源來降低穩(wěn)壓電源的輸出紋波電壓。因此,采用開關穩(wěn)壓電源與線性穩(wěn)壓電源相結合的形式可為有特殊要求的MCU供電提供一種更好的方法。因此我的最終電源設計方案采用LM7805和LM2576的聯(lián)合設計。直流電源(12V)輸入LM7805,然后輸出DC5V
23、,與此同時通過LM2576產生DC4V電壓供給M22。由于LM2576具有可靠的工作性能、較高的工作效率和較強的輸出電流驅動能力,從而為M22的穩(wěn)定、可靠工作提供了強有力的保證。圖14 M22電路板電源部分電路原理圖(3)BenQM22天線的選擇實際上天線的選擇總是一個難題。因為這和整個系統(tǒng)有關系,甚至和不同地區(qū)的GSM網絡有一定的關系。BENQ在對天線的選擇上推薦了一個如下的參考標準:表15 頻率波段范圍表16 VSWR(駐波比)參數(shù)表另外,對Impedance也要求為50ohms。(4)BenQM22與SIM卡的接口由于BenQM22必須通過中國電信的GSM/GPRS網絡才能夠工作,所以必
24、須要用到SIM電話卡。安裝時只要以右上角的缺口為準即可。圖17 SIM卡接口電路原理圖(5) BenQM22在語音通訊設計 在語音通訊方面,M22提供了兩個語音通道:一個我們叫做差分通道,也就是說無論是MICPHONE信號的輸入,還是SPEAKER信號的輸出都是采用差分的形式。也就是我們平時所說的“雙端輸入雙端輸出”。在管腳的定義上MICIP,MICIN就分別是MICPHONE的正輸入端和負輸入端。EARP,EARN就分別是SPEAKER的正輸出端和負輸出端。另一路語音通道是單端方式。具體管腳定義為AUXI和AUXOP。其中AUXI為MICPHONE的正輸入端,MICPHONE的負輸入端應該對
25、地。AUXOP為SPERKER的正輸出端,SPERKER的另一端應該對地。當然從外部線路的轉換來說在這一路語音通道的使用中,MICPHONE也可以接成差分的形式,但是需要一個轉換電路。SPERKER也可以接成差分輸入的形式,也需要一個差分轉單端的線路。圖18是差分端的MICPHONE輸入參考圖圖18 差分方式的MICPHONE電路原理圖 圖19是SPEAKER的線路圖圖19 差分方式的SPEAKER電路原理圖需要說明的是,由于單端輸入單端輸出的語音通道特別容易受到輻射干擾,從而對語音的質量產生了很大的影響,所以在本系統(tǒng)中只采用了差分語音通道。(6)BenQM22通訊板的PCB設計該通訊板設計成
26、為一個雙面PCB,在Protel99SE集成開發(fā)環(huán)境設計而成。圖20 M22通訊板PCB圖因為M22通訊板是高頻電路,所以在繪制PCB時除了要注意一般電路板的設計規(guī)范以外,一定要注意抗干擾的問題:(1)各部件之間的引線要盡量短。(2)在重要以及易受干擾的電路板對外接口線路中串接高頻扼流環(huán),以抑制高頻干擾同時也起到抗操作人員所帶靜電的作用。(3)在信號輸出及輸入端使用光耦進行光電隔離,光耦兩端使用分離的電源,能有效地抑制尖脈沖及各種噪聲的干擾。在光電耦合器的輸入端,既使是幅值很高的干擾,也會由于沒有足夠的能量使發(fā)光二極管發(fā)光而被抑制。(4)采用單點接地法。(5)盡量使用45度折線而不用90度折線
27、布線以減少高頻信號對外的發(fā)射與耦合。任何信號都不形成環(huán)路。(6)采用屏蔽技術。(7)經驗告訴我們,寬度為100mil厚度為1盎司的PCB銅鉑能夠通過的電流約為3A。既然M22的瞬間電流為1.7A,那么PCB走線的時候,銅鉑的寬度就不能太小。考慮到實際使用的時候一般的平均電流為250mA的實際情況,我在電源走線的時候銅鉑寬度為80mil。(8)若是電源從一層走到另外一層的時候,必然要用過孔來過渡。這個時候過孔數(shù)量是多少是需要注意的,由于機械加工的原因,過孔分布一定要均勻。(9)音頻走線部分主要注意兩點:1)各條音頻線不交叉;2)各條走線之間要包裹地線。這兩點措施主要是從防止射頻干擾的考慮出發(fā)的。
28、另外電源走線或者是時鐘走線也不能和音頻走線交叉無論這種交叉是在頂層TOPLAYER,還是在底層BOTTOMLAYER(10)比較均勻的鋪地。因為這樣也是減少干擾和降低一些很難覺察的錯誤的產生的措施。 (11)在固定時必須接地。(7)BenQM22通訊板的串口前面已經提到了由于RS-232電平的問題,M22不能直接和PC機通訊,但是可以直接和ARM或單片機通訊,不需要任何電平轉換芯片。那為什么這里卻又需要一個電平轉換芯片(SP3238)呢?主要是由于ST2410上的串口已經通過了MAX232,轉換成了RS-232-C電平。為了能夠與其通訊,必須也要將由M22出來的串口信號轉換成RS-232-C電
29、平。在此,我們采用的是另一種電平轉換芯片SP3238。因為此芯片可以一次轉換9個信號線,與MAX232相比更方便。圖21 M22與ARM進行串口通訊原理圖圖22 SP3238與M22接口的電路原理圖七、系統(tǒng)軟件設計該GPRS通訊程序是在ARMADS1.2(ARMDeveloperSuite。是ARM公司推出的新一代ARM集成開發(fā)工具。)集成開發(fā)環(huán)境中編譯通過后,然后產生可以直接燒寫在FLASH中的.bin格式的二進制可執(zhí)行文件,最后進行下載運行的。1、引導加載程序的設計(1)Bootloader的基本念一個嵌入式Linux系統(tǒng)從軟件的角度看,通常可以分為四個層次:(1)引導加載程序:包括固化在
30、固件(firmware)中的boot代碼(可選),和BootLoader兩大部分。(2)Linux內核:特定于嵌入式板子的定制內核以及內核的啟動參數(shù)。(3)文件系統(tǒng):包括根文件系統(tǒng)和建立于Flash內存設備之上文件系統(tǒng)。(4)用戶應用程序。特定于用戶的應用程序,有時在用戶應用程序和內核層之間可能還會包括一個嵌入式圖形用戶界面。常用的嵌入式GUI有:MicroWindows和MiniGUI等。(2)ST2410的Bootloader功能說明本系統(tǒng)的Bootloader除了具有一般的功能外,還具有以下擴展功能:USB口文件下載、串口文件下載、NOR和NANDFLASH的燒寫、運行存儲在FLASH中
31、的程序、針對linux設置啟動參數(shù)、設置Wince或Linux的自啟動、運行BenQM22GPRS通訊系統(tǒng)ST2410的Bootloader的流程圖,如圖4.1所示如前所述,此核心板一共由三大存儲設備NorFlash(2M)NandFlash(64M)SDRAM(64M)。前兩個Flash設備就猶如PC機的兩塊硬盤,(由于NandFlash無論在價格與性能上都優(yōu)于NorFlash,因此現(xiàn)在一般都采用NandFlash。)而SDRAM就猶如PC機的內存設備。下面來看一下ST2410的Bootloader中設置的NorFlash與NandFlash的內部結圖23 Bootloader流程圖構圖。圖
32、24 NorFlash空間分配圖 圖25 NandFlash空間分配圖2、串口通訊程序的設計如前所述,本系統(tǒng)有三大模塊:(1)PC機:主要負責人機交互。在PC機上運行DNW(一種串口調試軟件),從而可以顯示和接受來自ARM的數(shù)據。(2)ARM微處理器:核心處理器。將已經編寫成功的GPRS通訊程序燒寫到其NandFlash中。 (3)M22通訊模塊:GPRS通訊的具體實現(xiàn)。接受來自ARM的AT指令,從而進行GPRS通訊,并將有用的信息反饋給ARM。圖26 三大模塊之間串口通訊接線原理圖由此可見,串口通訊是本系統(tǒng)主要手段。下面我們就來詳細的談談關于串口這部分程序的設計。S3C2410ARM微處理器
33、的串口主要是通過各種串口控制寄存器來操作串口的:z線路控制寄存器(ULCONn):用來規(guī)定傳輸幀的格式;z控制寄存器(UCONn):用來設定串口的一些工作模式;z狀態(tài)寄存器(UTRSTATn):用來查詢串口的狀態(tài);z波特率(UBRDIV):用來設置波特率;z發(fā)送寄存器(UTXHn):往這里寫數(shù)據便可以直接往TXD發(fā)送數(shù)據;z接收寄存器(URXHn):從這里讀數(shù)據便可以直接接受來自RXD的數(shù)據。(具體的每一位的功能分配,請參見SAMSUNGS3C2410數(shù)據手冊)下面針對本系統(tǒng),結合具體的程序,來具體的討論一下串口的操作步驟;(1)管腳初始化:由于S3C2410微處理器總共只有272個管腳。而要
34、實現(xiàn)那么多的功能,顯然如果一個管腳就只有一個功能的話肯定是不夠用的。因此,有一些管腳具有多個功能。在使用之前必須要對管腳的功能進行選擇。rGPHCON=0x2afaa4;/選擇串口功能的管腳rGPHUP=0x7ff;/關閉所有管腳的上拉功能(2)串口寄存器初始化(以串口0為例):rUFCON0=0x0;/關閉串口0的FIFO功能rUMCON0=0x0;/關閉流控功能rULCON0=0x3;/設置8位數(shù)據位、1位停止位、無奇偶校驗串口模式rUCON0=0x245;/設置串口0的觸發(fā)模式rUBRDIV0=(int)(pclk/16./baud+0.5)-1);/設置波特率,pclk為CPU主頻,b
35、aud為波特率(3)收發(fā)數(shù)據while(!(rUTRSTAT0&0x1);/等待接收緩沖空Data=rURXH0;/接受數(shù)據 while(!(rUTRSTAT0&0x2);/等待發(fā)送緩沖區(qū)空rUTXH0=data;/發(fā)送數(shù)據在此就幾個問題作一下說明:(1)溢出的問題:本系統(tǒng)用的只是串口通訊的一般模式。因此,發(fā)送寄存器和接收寄存器都只有1個字節(jié)那么大的空間。那么尤其是在截接受數(shù)據時很容易出現(xiàn)接受溢出的現(xiàn)象(即接收寄存器中的數(shù)據還來不及被取走,下一個數(shù)據就到來了)。我在編程時注意到了這個問題,我采用的辦法是:只要接收到了一個字節(jié)的數(shù)據就馬上把它賦給一個字符型變量,從而為接收下一個數(shù)
36、據做準備。(2)握手信號(RTS/CTS):如前所述,當ARM通過串口0和BenQM22通訊時,必須至少要連接5根信號線(即TXD,RXD,RTS,CTS,GND)。但是由于在S3C2410中,在普通模式下并不能使用RTS和CTS。然而,我們并沒有必要將GPH0和GPH1管腳定義成CTS和RTS。只需要將GPH0定義成INPUT,將RTS定義成OUTPUT就可以了。(由于PC機和ARM通訊采用的是串口1,而這只需要3個數(shù)據信號線就夠了,不需要握手信號。)3、BenQM22模塊內部的軟件特性BenQM22的內部集成的軟件包括以下3個部分:Layer1驅動、協(xié)議棧/AT命令、基本接口由于在無線PS
37、TN和BenQM22模塊中都有微處理器,在這兩者之間的接口通常是AT指令。當然由于協(xié)議棧(TCP/IP)的存在,我們也可以通過發(fā)送AT指令達到聯(lián)通GSM/GPRS網的目的。圖27 BenQM22模塊內部軟件結構圖圖28 BenQM22接收指令時的流程圖4、AT指令我們可以通過AT命令進行呼叫短信電話本數(shù)據業(yè)務補充業(yè)務傳真等方面的控制。圖29 AT指令示意圖1、AT指令的語法格式(1)基本語法格式<name><value>Example:ATV1<CR><CR><LF>OK<CR><LF>(response)(2
38、)擴展命令格式+<name>=<value>Example:AT+CMUT=0<CR><CR><LF>OK<CR><LF>(response)(3)測試命令格式+<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)網絡業(yè)務命令(4)安全性命令(5)電話本命令(6)短消息命令(7)補充業(yè)務命令(8)數(shù)據命令(9)傳真命令(10)串口控制命令5、系統(tǒng)軟件運行流程圖軟件主菜單流程圖外電呼入時流程圖發(fā)送短信流程圖電話本查詢流程圖主動呼叫流程圖八、GPRS通訊系統(tǒng)運行結果1、軟件運行截圖下面是軟件主要功能運行時的屏幕截圖(1)Bootl
40、oader主菜單Bootloader主菜單(2)GPRS主功能菜單GPRS主功能菜單(3)主動呼叫主動呼叫(4)主動呼叫時,主動掛機掛機(5)查閱短消息 短信信息(6)編輯與發(fā)送短消息編輯短信(7)電話本功能菜單電話本菜單(8)查閱已經存儲的電話號碼查閱存儲的電話(9)添加電話條目時出錯添加電話條目時出錯(10)添加電話條目成功添加電話條目成功(11)刪除電話條目刪除電話條目(12)查詢已撥電話查詢已撥電話 (13)查詢未接聽電話 查詢未接聽電話(14)查詢已接聽電話查詢已接聽電話(15)來電顯示來電顯示九、設計總結計算機發(fā)展的目標是專用電腦,實現(xiàn)“普遍化計算”,因此可以稱嵌入式系統(tǒng)是構成未來
41、世界的“數(shù)字基因”。嵌入式系統(tǒng)與無線通訊網絡的有機結合,構成了最具吸引力的嵌入式通訊設備:設計應用到車載GPS系統(tǒng),手持PDA,智能手機等各方面。本文針對BenQM22無線模塊在無線通訊方面的應用,對基于ARM9與嵌入式Linux的GPRS無線通訊系統(tǒng)的軟件和硬件方面的設計進行了研究,并對可以實現(xiàn)的語音通訊、短信控制、電話本記錄、來電查詢、來電顯示等功能進行了驗證。(1)硬件設備和開發(fā)平臺的選擇是嵌入式開發(fā)中的關鍵環(huán)節(jié)。硬件發(fā)面,本文對三星公司的各種ARM系列進行了分析分析比較,選取了性價比更高,應用更廣泛,對Linux操作系統(tǒng)支持性更好的ARM構架的為處理系列的芯片S3C2410X。同樣,在
42、GSM/GPRS通訊模塊的選擇上,選取的是明基公司的M22無線通訊模塊。開發(fā)平臺方面,Linux的可靠性、開源性、低成本以及豐富的開發(fā)工具和開發(fā)資源,使得選擇嵌入式Linux系統(tǒng)成為必然。(2)引導裝載程序(Bootloader)的開發(fā)是嵌入式開發(fā)中非常重要的環(huán)節(jié)。本文充分利用嵌入式Linux系統(tǒng)的開源特性,先對業(yè)界標準的引導裝載程序vivi進行了分析,然后再針對ST2410開發(fā)板的外圍電路設計了相應的Bootloader,并在此基礎上增加了M22無線通訊功能。在通過ADS1.2調試通過后,便直接下載到ARM中運行。因此,簡化了開發(fā)流程,縮短了開發(fā)周期。(3)M22模塊通訊電路板的設計是本系統(tǒng)的關鍵部分。本文首先就M22外圍電路中的幾個具體問題做了詳細的說明與解釋:如電源部分的設計、差分語音通訊的電路、M22與SIM卡的接口設計、天線的選擇等等。又因為此PCB是高頻電路板,與其他的PCB設計有很多的不同之處。本文也同時詳細的討論了高頻PCB設計的方法與注意事項,從而為后續(xù)工作搭建了一個很好的平臺。(4)本系統(tǒng)內3個模塊之間都是采用串口進行通訊的。本文先分別對PC機、ARM、M22模塊的串口接口電路進行了深入比較與研究,然后針對AT指令,對具體的串口通訊的接口編程的步驟和方法進行了詳細的討論。ARM與嵌
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二四年度學校校長任期可持續(xù)發(fā)展聘用合同3篇
- 2025年度智能家居系統(tǒng)采購合同模板
- 2025年度跨境電商合同責任擔保書(海外倉儲物流)
- 2025年度海上船運船舶融資租賃合同
- 二零二四年幼兒園園長綜合管理與能力考核聘用合同3篇
- 2025年度會議室租賃及活動策劃合同范本
- 2025年度體育賽事過橋居間合同范本
- 2025年度酒店后勤智能化服務合同
- 個人停車位租賃合同書:2024年標準范本版B版
- 二零二四年度人力資源咨詢服務合同
- (一模)蕪湖市2024-2025學年度第一學期中學教學質量監(jiān)控 英語試卷(含答案)
- 完整版秸稈炭化成型綜合利用項目可行性研究報告
- 2025中國海油春季校園招聘1900人高頻重點提升(共500題)附帶答案詳解
- 膽汁淤積性肝硬化護理
- 《數(shù)據采集技術》課件-Scrapy 框架的基本操作
- (2024)河南省公務員考試《行測》真題及答案解析
- 湖北省十一校2024-2025學年高三上學期第一次聯(lián)考化學試題 含解析
- 醫(yī)療保險結算與審核制度
- 圍城讀書分享課件
- 2025年河北省單招語文模擬測試二(原卷版)
- 2024版房屋市政工程生產安全重大事故隱患判定標準內容解讀
評論
0/150
提交評論