鹽城工學(xué)院嵌入式系統(tǒng)課程設(shè)計(jì)報(bào)告_第1頁
鹽城工學(xué)院嵌入式系統(tǒng)課程設(shè)計(jì)報(bào)告_第2頁
鹽城工學(xué)院嵌入式系統(tǒng)課程設(shè)計(jì)報(bào)告_第3頁
鹽城工學(xué)院嵌入式系統(tǒng)課程設(shè)計(jì)報(bào)告_第4頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、.課程設(shè)計(jì)說明書基于 ARM的 GPRS模塊的設(shè)計(jì)專業(yè)學(xué)生姓名班級(jí)學(xué)號(hào)指導(dǎo)教師完成日期2017年 月 日;.;.目錄摘要.11 緒論 . .11.1嵌入式系統(tǒng) .11.1.1嵌入式系統(tǒng)概述 .11.1.2嵌入式處理器 .11.2 ARM 處理器 . .21.3GPRS無線通訊 . .21.3.1GPRS 定義 . .21.3.2GPRS 的技術(shù)特點(diǎn) . .22 系統(tǒng)選型及設(shè)計(jì) .32.1硬件選型.32.2模塊總體框圖 .33 系統(tǒng)硬件設(shè)計(jì) .33.1ARM 硬件結(jié)構(gòu)及電路概述 . .33.1.1SANSUNG S3C2410概述 . .33.1.2ST2410硬件資源分配 . .43.1.3S

2、T2410接口資源 . .63.1.4ST2410的串口通訊 .73.2M22 通訊電路板的設(shè)計(jì) . .103.2.1BENQ 電源部分設(shè)計(jì) . .113.2.2BENQ M22 與 SIM 卡的接口 .113.2.3 BENQ M22 在語音通訊設(shè)計(jì)方面的問題 .113.2.4 BENQ M22 通訊板的串口 .124 系統(tǒng)軟件設(shè)計(jì) .134.1引導(dǎo)加載程序的設(shè)計(jì) . .14;.的基本概念14的 BOOTLOADER功能說明164.2 串口通訊程序的設(shè)計(jì)174.3 BENQ M22 模塊內(nèi)部的軟件特性175 模塊軟件運(yùn)行流程圖176 模塊設(shè)計(jì)總結(jié)19;.基于 ARM與嵌入式Linux 的 G

3、PRS模塊摘要隨著科技的高速發(fā)展, 嵌入式系統(tǒng)已經(jīng)進(jìn)入32 位時(shí)代。在當(dāng)前數(shù)字信息技術(shù)和網(wǎng)絡(luò)技術(shù)的高速發(fā)展的后PC 時(shí)代,嵌入式系統(tǒng)已經(jīng)廣泛地應(yīng)用于各類產(chǎn)業(yè)。隨著國內(nèi)外嵌入式產(chǎn)品地進(jìn)一步開發(fā)和推廣,嵌入式技術(shù)和人類生活的聯(lián)系越發(fā)緊密。本文介紹了在 SAMSUNG ARM9和嵌入式 Linux平臺(tái)上的,基于BenQ M22模塊的 GPRS 無線通訊模塊的軟硬件設(shè)計(jì)。主要內(nèi)容包括:M22 通訊電路板的 PCB 設(shè)計(jì); ARM9中 Bootloader 編程與 FLASH 燒寫; M22 和 ARM9 的外圍與內(nèi)部硬件電路的設(shè)計(jì);串口通訊的編程; AT 指令的收發(fā)等等。該系統(tǒng)能夠?qū)崿F(xiàn)語音通訊、短信服

4、務(wù)、來電查詢、來電顯示等功能關(guān)鍵詞:嵌入式; ARM;Linux ; GPRS1 緒論1.1嵌入式系統(tǒng)嵌入式系統(tǒng)概述嵌入式系統(tǒng)( EmbeddedSystem),是一種嵌入機(jī)械或電氣系統(tǒng)內(nèi)部、具有專一功能和實(shí)時(shí)計(jì)算性能的計(jì)算機(jī)系統(tǒng)。 嵌入式系統(tǒng)常被用于高效控制許多常見設(shè)備,被嵌入的系統(tǒng)通常是包含數(shù)字硬件和機(jī)械部件的完整設(shè)備, 例如汽車的防鎖死剎車系統(tǒng)。 相反,通用計(jì)算機(jī)如個(gè)人電腦則設(shè)計(jì)靈活, 可以智能處理各式各樣的運(yùn)算情況,以滿足廣大終端用戶不同的需要?,F(xiàn)代嵌入式系統(tǒng)通常是基于微控制器(如含集成內(nèi)存和 / 或外設(shè)接口的中央處理單元)的,但在較復(fù)雜的系統(tǒng)中普通微處理器 (使用外部存儲(chǔ)芯片和外設(shè)接

5、口電路)也很常見。通用型處理器、專門進(jìn)行某類計(jì)算的處理器、為手持應(yīng)用訂制設(shè)計(jì)的處理器等, 都可能應(yīng)用到嵌入式系統(tǒng)。 常見的專用處理器有數(shù)字信號(hào)處理器。嵌入式處理器嵌入式處理器是嵌入式系統(tǒng)的核心, 是控制、輔助系統(tǒng)運(yùn)行的硬件單元。 可以分為:嵌入式微處理器、嵌入式微控制器、嵌入式 DSP處理器等。;.嵌入式處理器是嵌入式系統(tǒng)的核心, 是控制、輔助系統(tǒng)運(yùn)行的硬件單元。 范圍極其廣闊, 從最初的位處理器, 目前仍在大規(guī)模應(yīng)用的位單片機(jī), 到最新的受到廣泛青睞的 32 位, 64 位嵌入式 CPU。1.2 ARM 處理器ARM處理器是一種 32 位嵌入式 RISC處理器。ARM(AdvancedRIS

6、CMachines),既可以認(rèn)為是一個(gè)公司的名字, 也可以認(rèn)為是對微處理器的通稱, 還可以認(rèn)為是一種技術(shù)的名字。 ARM處理器是一個(gè) 32 位元精簡指令集 (RISC) 處理器架構(gòu) , 其廣泛地使用在許多嵌入式系統(tǒng)設(shè)計(jì)。 Thumb指令集為 ARM指令集的功能子集,但與等價(jià)的 ARM代碼相比較,可節(jié)省 30%40%以上的存儲(chǔ)空間,同時(shí)具備 32 位代碼的所有優(yōu)點(diǎn)。大量使用寄存器,數(shù)據(jù)處理指令只對寄存器進(jìn)行操作,只有加載 / 存儲(chǔ)指令可以訪問存儲(chǔ)器,以提高指令的執(zhí)行效率。1.3 GPRS 無線通訊定義通用分組無線服務(wù)(英語:General Packet Radio Service,縮寫: GPR

7、S)是 GSM移動(dòng)電話用戶可以使用的一種移動(dòng)數(shù)據(jù)業(yè)務(wù)/ 技術(shù)。它經(jīng)常被描述成“2.5G”,意指這項(xiàng)技術(shù)介于第二代( 2G)與第三代( 3G)移動(dòng)通訊技術(shù)之間。它是利用 GSM網(wǎng)絡(luò)中未使用的 TDMA信道,提供中速的數(shù)據(jù)傳輸服務(wù)。起初有人想通過擴(kuò)展 GPRS來覆蓋其他標(biāo)準(zhǔn),只是這些網(wǎng)絡(luò)都正在轉(zhuǎn)而使用 GSM標(biāo)準(zhǔn),這樣 GSM就成了 GPRS唯一能夠使用的網(wǎng)絡(luò)。 GPRS在 Release 97 之后被集成進(jìn) GSM標(biāo)準(zhǔn),起先它是由ETSI 標(biāo)準(zhǔn)化,但是現(xiàn)在已經(jīng)移交3GPP負(fù)責(zé)。的技術(shù)特點(diǎn)數(shù)據(jù)實(shí)現(xiàn)分組發(fā)送和接收,按流量計(jì)費(fèi);56115Kbps的傳輸速度 .GPRS的應(yīng)用,遲些還會(huì)配合 Blueto

8、oth( 藍(lán)牙技術(shù) ) 的發(fā)展。到時(shí),數(shù)碼相機(jī)加了 bluetooth ,就可以馬上通過手機(jī),把像片傳送到遙遠(yuǎn)的地方,也不過一刻鐘的時(shí)間。相對于 GSM的 9.6kbps 的訪問速度而言, GPRS擁有 171.2kbps 的訪問速度;在連接建立時(shí)間方面, GSM需要 10-30 秒,而 GPRS只需要極短的時(shí)間就可以訪問到相關(guān)請求;而對于費(fèi)用而言, GSM是按連接時(shí)間計(jì)費(fèi)的,而 GPRS只需要按數(shù)據(jù)流量計(jì)費(fèi); GPRS對于網(wǎng)絡(luò)資源的利用率而相對遠(yuǎn)遠(yuǎn)高于 GSM。;.2 系統(tǒng)選型及設(shè)計(jì)2.1硬件選型由于 ARM系列處理器中 ARM9 對于 Linux操作系統(tǒng)的支持性明顯強(qiáng)于 ARM7。 因此

9、, 本模塊采用的核心微處理器是屬于 ARM9系列微處理器的 SAMSUNG S3C2410出于成本和功能的考慮,本模塊中選用的GPRS/GSM選用的 BenQ的M22無線模塊。主要儀器設(shè)備如下:SAMSUNG ST2410 ARM9開發(fā)板SHARP TFT_LCD液晶屏BenQ M22 GPRS模塊SIM 卡GSM 900/1800 MHz 吸盤天線BenQ M22 電路板2.2模塊總體框圖3 系統(tǒng)硬件設(shè)計(jì)3.1 ARM 硬件結(jié)構(gòu)及電路概述概述S3C2410A采用了 ARM920T 內(nèi)核, 0.18um 工藝的 CMOS標(biāo)準(zhǔn)宏單元和存儲(chǔ)單元。它的低功耗、 精簡和出色的全靜態(tài)設(shè)計(jì)特別適用于對成本

10、和功耗敏感的應(yīng)用 。 同 樣 它 還 采 用 了 一 種 叫 做 Advanced Microcontroller Bus Architecture(AMBA) 新型總線結(jié)構(gòu)。S3C2410 的 顯著 特 性是 它的 CPU 核 心 , 是一 個(gè)由 Advanced RISC Machines(ARM) 有限公司設(shè)計(jì)的 16/32 位 ARM920T RISC 處理器。 ARM920T核;.由 ARM9TDMI、存儲(chǔ)管理單元( MMU)和高速緩存三部分組成。其中, MMU可以管理虛擬內(nèi)存。 ARM920T實(shí)現(xiàn)了 MMU,AMBA BUS和 Harvard 高速緩沖體系結(jié)構(gòu)。這一結(jié)構(gòu)具有獨(dú)立的

11、16KB 指令 Cache 和 16KB 數(shù)據(jù) Cache,每個(gè)都是由 8 字長的行構(gòu)成。 ARM920T有兩個(gè)內(nèi)部協(xié)處理器: CP14 和 CP15。 CP14 用于調(diào)試控制, CP15 用于存儲(chǔ)系統(tǒng)控制以及測試控制。S3C2410 的內(nèi)部結(jié)構(gòu)圖如圖3.1所示圖 3.1 S3C2410內(nèi)部結(jié)構(gòu)圖硬件資源分配S3C2410 將系統(tǒng)的存儲(chǔ)空間分成8組( Bank),每組的大小是128MB,共1GB。 Bank0 到 Bank5 的開始地址是固定的,用于ROM 或 SRAM。 Bank6 和Bank7 用于 ROM、 SRAM 或 SDRAM,這兩個(gè)組可編程且大小相同。Bank7 的開始地址是 B

12、ank6 的結(jié)束地址,靈活可變。所有內(nèi)存塊的訪問周期都是可編程的。S3C2410 采用nGCS7:08 個(gè)通用片選信號(hào)選擇這些組。因此,S3C2410 支持兩種啟動(dòng)模式:從 NAND FLASH啟動(dòng)和從外部 nGCS0 片選的 NOR FLASH啟動(dòng)。;.所以在這兩種啟動(dòng)模式下 , 各片選的存儲(chǔ)空間分配是不同的 , 這兩種啟動(dòng)模式的存儲(chǔ)分配如圖 3.3 所示 :圖 3.3 存儲(chǔ)空間分配圖a) 圖是 nGCS0 片選的 Nor Flash 啟動(dòng)模式下的存儲(chǔ)分配圖; b) 圖是 NAND FLASH啟動(dòng)模式下的存儲(chǔ)分配圖;說明: SFR Area 為特殊寄存器地址空間。在進(jìn)行器件地址說明之前, 有

13、一個(gè)點(diǎn)需要注意, nGCS0片選的空間在不同的。啟動(dòng)模式下,映射的器件是不一樣的。由下表可以知道:在 NAND FLASH 啟動(dòng)模式下,內(nèi)部的4K BytesBootSRAM被映射到 nGCS0 片選的空間。在 Nor Flash 啟動(dòng)模式(非 NAND FLASH啟動(dòng)模式)下,與 nGCS0 相連的外部存儲(chǔ)器 Nor Flash 就被映射到nGCS0片選的空間。地址范圍說明片選信號(hào)SFR(特殊寄存器)地址0x4800_00000x6000_0000空間NANDFLASH啟動(dòng)模式0x4000_00000x4000_0FFF下,該空間沒有被使用非NANDFLASH啟 動(dòng)模式下,該空間為BootS

14、Ram;.0x3000_00000x3400_0000SDRAM空間nGCS60x1900_0300CS8900 的 IO基址nGCS30x0000_00000x0020_00NANDFLASH啟動(dòng)模式nGCS000下,BootRam 的有效地址:0x0000_00000x0000_0FFF非NANDFLASH啟 動(dòng)模式下,Nor Flash 的有效地址空間為:0x0000_00000x0020_0000表 3.1硬件地址分配表接口資源跳線名稱說明JP1(核心板)決定 S3C2410 的啟動(dòng)模式插上短路塊從Nand Flash中啟動(dòng),默認(rèn)不插上短路塊從Nor Flash中啟動(dòng)表 3.2跳線分配

15、表按鍵名稱說明S1(Reset )(核心板)復(fù)位按鍵,小按鍵K1K4 按鍵4 鍵盤表 3.3核心板按鍵說明接口名稱說明T1(RJ45)以太網(wǎng)接口( RJ45, 帶隔離器的)UART1(J8), UART3(J7)串行口 1 , 2U10紅外線 IrDASD_CARD(J1)SD 卡接口J17USB HOST接口USB_DEVICE(J15)USB DEVICE 接口;.J2音頻輸出接口J27CCFL 背光電源輸出接口J6板子的電源接口JP2一些擴(kuò)展口JP1(LCD INTERFACE)LCD 和觸摸屏接口表 3.4底板接口說明的串口通訊由于在本系統(tǒng)中 ARM 與 PC 機(jī)和 M22 模塊都是通

16、過串口進(jìn)行通訊。在此,我詳細(xì)介紹一下 S3C2410 的串口資源。串行通信是微計(jì)算機(jī)之間一種常見的近距離通信手段,因使用方便,編程簡單而廣泛使用,幾乎所有的微控制器, PC 都提供串行通信接口。(1)串行通訊傳輸格式圖 3.4串口的幀數(shù)據(jù)傳輸格式開始前,線路處于空閑狀態(tài), 送出連續(xù)“ 1”。傳送開始時(shí)首先發(fā)一個(gè)“ 0” 作為起始位,然后出現(xiàn)在通信線上的是字符的二進(jìn)制編碼數(shù)據(jù)。每個(gè)字符的數(shù)據(jù)位長可以約定為5 位、 6 位、 7 位或 8 位,一般采用ASCII 編碼。后面是奇偶校驗(yàn)位,根據(jù)約定,用奇偶校驗(yàn)位將所傳字符中為“1”的位數(shù)湊成奇數(shù)個(gè)或偶數(shù)個(gè)。也可以約定不要奇偶校驗(yàn), 這樣就取消奇偶校驗(yàn)

17、位。最后是表示停止位的“ 1”信號(hào),這個(gè)停止位可以約定持續(xù)1 位、1.5 位或 2 位的時(shí)間寬度。至此一個(gè)字符傳送完畢,線路又進(jìn)入空閑,持續(xù)為“1”。經(jīng)過一段隨機(jī)的時(shí)間后,下一個(gè)字符開始傳送才又發(fā)出起始位。每一個(gè)數(shù)據(jù)位的寬度等于傳送波特率的倒數(shù)。微機(jī)異步串行通信中,常用的波特率為 110, 150,300,600, 1200, 2400,4800,9600 等。;.( 2) 電氣特性RS-232 標(biāo)準(zhǔn)采用的接口是 9 芯或 25 芯的 D 型插頭,常用的一般是 9 針插頭( DB-9),表 3.5 是 DB9 引腳說明:引腳名稱全稱說明FGFrame Ground連到及其的接地線TXDTran

18、smitted Data數(shù)據(jù)輸出線RXDReceived Data數(shù)據(jù)輸入線RTSRequest to Send要求發(fā)送數(shù)據(jù)CTSClear to Send回應(yīng)對方發(fā)送的 RTS 的發(fā)送許可,告訴對方可以發(fā)送DSRData Set Ready告知本機(jī)在待命狀態(tài)DataTerminalDTRReady告知數(shù)據(jù)終端處于待命狀態(tài)CDCarrier Detect載波檢出,用以確認(rèn)是否收到Modem的載波SGSignal Ground信號(hào)線的接地線 (嚴(yán)格的說是信號(hào)線的零標(biāo)準(zhǔn)線)表 3.5 DB9 引腳說明圖 3.5 DB9 引腳實(shí)物圖要完成基本的通信功能, 實(shí)際上只需要 RXD,TXD,GND即可,但

19、是由于 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”對應(yīng) 2V3.3V 電平,標(biāo)準(zhǔn)邏輯“ 0”對應(yīng) 0V0.4V 電平,而 RS-232-C 標(biāo)準(zhǔn)采用負(fù)邏輯方式,標(biāo)準(zhǔn)邏輯“ 1”對應(yīng) -5V-15V 電平,標(biāo)準(zhǔn)邏輯“ 0”對應(yīng) +5V+15V。顯然,兩者間要進(jìn)行通信,必須經(jīng)過電平的轉(zhuǎn)換,轉(zhuǎn)換芯片采用的 MAX232。電路原理圖見圖 3.6 :;.圖 3.6串口連接電路圖其中 J8串口負(fù)責(zé)

20、與 BenQ M22 通訊, 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)。1)發(fā)送數(shù)據(jù)數(shù)據(jù)發(fā)送幀的格式是可編程的,它包含一個(gè)開始位, 5 到 8 個(gè)數(shù)據(jù)位,一

21、個(gè)可選的奇偶位和一個(gè)或兩個(gè)停止位,這些可以通過線性控制器UCONn)來設(shè)置。發(fā)送器也能夠產(chǎn)生發(fā)送中止條件。 中止條件迫使串口輸出保持在邏輯 0 狀態(tài),這種狀態(tài)保持一個(gè)傳輸幀的時(shí)間長度。通常在一幀傳輸數(shù)據(jù)完整地傳輸完之后,在通過這個(gè)全0 狀態(tài)將中止信號(hào)發(fā)送給對方。中止信號(hào)發(fā)送之后,傳送數(shù)據(jù)連續(xù)放到FIFO 中(在不使用 FIFO 模式下,將被放到輸出保持寄存器) 。2)接收數(shù)據(jù)與數(shù)據(jù)發(fā)送一樣,數(shù)據(jù)接收的幀也是可以編程的, 它包含一個(gè)開始位,5 到 8 個(gè)數(shù)據(jù),一個(gè)可選的奇偶位和一位或兩位停止位,它們都是通過線性控制器( ULCONn)來設(shè)置的。接收器能夠檢測溢出錯(cuò)誤, 奇偶校驗(yàn)錯(cuò)誤,幀錯(cuò)誤和中止

22、狀況,每種情況下都將會(huì)將一個(gè)錯(cuò)誤標(biāo)志置位。3)波特率的設(shè)置每個(gè) UART的波特率發(fā)生器為傳輸提供了串行移位時(shí)鐘。 波特率產(chǎn)生器的時(shí)鐘源可以 C、從 S3C2410X 的內(nèi)部系統(tǒng)時(shí)鐘或 UCLK 中來選擇。波特率由時(shí)鐘源( PCLK 或 UCLK) 16 分頻和UART波特率除數(shù)寄存器 ( UBRDIVn)指定的 16 位除數(shù)決定。 UBRDIVn 的值可以按照下式確定: UBRDIVn = (int) (PCLK/(bps*16 )-1例如,如果波特率為 115200bps 且 PCLK 或 UCLK為 40MHz, 則 UBRDIVn為:UBRDIVn =(int ) (40000000)(

23、115200*16)-1= (int)(21.7)-1;.= 21-1 = 203.2 M22 通訊電路板的設(shè)計(jì)BenQ M22 通訊電路板主要是由M22 無線模塊的外圍接口電路組成( 參見附錄 1) 。該電路板主要包括以下幾個(gè)部分:(1)電源與整流部分(2)串口通訊接口(3)SIM 卡電路(4)差分語音電路(5)LED 信號(hào)燈顯示電路(6)蜂鳴器接口(7)按鍵輸入(8)天線接口其管腳( 44 腳)分配如表 3.6所示管腳名管腳數(shù)目描述UART/RS2326RS232 接口UART22軟件調(diào)試BU1蜂鳴器輸出GPIO6通用 I/O 管腳Power On1上電運(yùn)行LED Driver1LED 驅(qū)

24、動(dòng)SIM4SIM 卡接口VBATRF3RF 的電源輸入VBATBB1BB 的電源輸入Audio7語音接口Keypad Interrupt1鍵盤中斷接口BGND10地NC1無連接表 3.6 BenQ M22管腳分配表;.電源部分設(shè)計(jì)我們知道無線模塊的耗電具有不穩(wěn)定的特點(diǎn)。在待機(jī)狀態(tài),在和基站的握手狀態(tài),在通話狀態(tài), 在撥號(hào)狀態(tài), 在信號(hào)強(qiáng)弱不同的地方這些因素都會(huì)直接的影響無線模塊的耗電流,所以無線模塊的電源設(shè)計(jì)非常重要。因此我的電源設(shè)計(jì)方案采用LM7805和 LM2576的聯(lián)合設(shè)計(jì)。直流電源( 12V)輸入 LM7805,然后輸出 DC5V,與此同時(shí)通過LM2576產(chǎn)生 DC4V電壓供給 M22

25、。由于 LM2576具有可靠的工作性能、較高的工作效率和較強(qiáng)的輸出電流驅(qū)動(dòng)能力,從而為 M22的穩(wěn)定、可靠工作提供了強(qiáng)有力的保證。圖 3.9 M22電路板電源部分電路原理圖與 SIM 卡的接口由于 BenQ M22 必須通過中國電信的 GSM/GPRS網(wǎng)絡(luò)才能夠工作, 所以必須要用到 SIM 電話卡。安裝時(shí)只要以右上角的缺口為準(zhǔn)即可。圖 3.10 SIM卡接口電路原理圖在語音通訊設(shè)計(jì)方面的問題在語音通訊方面, M22 提供了兩個(gè)語音通道 : 一個(gè)我們叫做差分通道 , 也就是說無論是 MICPHONE信號(hào)的輸入 , 還是 SPEAKER信號(hào)的輸出都是采用差分的;.形式。也就是我們平時(shí)所說的“雙端

26、輸入雙端輸出”。 在管腳的定義上 MICIP, MICIN 就分別是 MICPHONE的正輸入端和負(fù)輸入端。 EARP, EARN就分別是SPEAKER的正輸出端和負(fù)輸出端。另一路語音通道是單端方式。具體管腳定義為 AUXI 和 AUXOP。 其中 AUXI 為 MICPHONE的正輸入端, MICPHONE的負(fù)輸入端應(yīng)該對地。 AUXOP為 SPERKER的正輸出端, SPERKER的另一端應(yīng)該對地。當(dāng)然從外部線路的轉(zhuǎn)換來說在這一路語音通道的使用中, MICPHONE也可以接成差分的形式,但是需要一個(gè)轉(zhuǎn)換電路。 SPERKER也可以接成差分輸入的形式,也需要一個(gè)差分轉(zhuǎn)單端的線路。以上說了關(guān)于

27、單端語音通道的一些問題。下面我們敘述一下差分語音通道的一些問題。圖 3.11 是差分端的 MICPHONE輸入?yún)⒖紙D圖 3.11 差分方式的 MICPHONE電路原理圖圖 3.12 是 SPEAKER的線路圖圖 3.12 差分方式的 SPEAKER 電路原理圖需要說明的是,由于單端輸入單端輸出的語音通道特別容易受到輻射干擾,從而對語音的質(zhì)量產(chǎn)生了很大的影響,所以在本系統(tǒng)中只采用了差分語音通道。通訊板的串口前面已經(jīng)提到了由于 RS-232 電平的問題,M22 不能直接和 PC 機(jī)通訊,但是可以直接和 ARM 或單片機(jī)通訊, 不需要任何電平轉(zhuǎn)換芯片。 那為什么這里卻又需要一個(gè)電平轉(zhuǎn)換芯片( SP3

28、238)呢?;.主要是由于 ST2410 上的串口已經(jīng)通過了MAX232,轉(zhuǎn)換成了 RS-232-C 電平。為了能夠與其通訊,必須也要將由M22 出來的串口信號(hào)轉(zhuǎn)換成RS-232-C電平。在此,我們采用的是另一種電平轉(zhuǎn)換芯片SP3238。因?yàn)榇诵酒梢砸淮无D(zhuǎn)換 9個(gè)信號(hào)線,與 MAX232 相比更方便。圖 3.20 M22 與 ARM 進(jìn)行串口通訊原理圖圖 3.21 SP3238與 M22 接口的電路原理圖4 系統(tǒng)軟件設(shè)計(jì)該 GPRS通訊程序是在 ARM ADS 1.2(ARM Developer Suite 。是 ARM公司推出的新一代 ARM集成開發(fā)工具。)集成開發(fā)環(huán)境中編譯通過后,然后產(chǎn)

29、生可以直接燒寫在 FLASH中的 .bin 格式的二進(jìn)制可執(zhí)行文件,最后進(jìn)行下載運(yùn)行的。;.4.1 引導(dǎo)加載程序的設(shè)計(jì)引導(dǎo)加載程序( Bootloader )是嵌入式系統(tǒng)的重要組成部分。的基本概念一個(gè)嵌入式 Linux系統(tǒng)從軟件的角度看 , 通??梢苑譃樗膫€(gè)層次:( 1)引導(dǎo)加載程序: 包括固化在固件 (firmware)中的 boot代碼 ( 可選 ) ,和Boot Loader兩大部分。(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)

30、核層之間可能還會(huì)包括一個(gè)嵌入式圖形用戶界面。常用的嵌入式GUI 有:MicroWindows 和 MiniGUI 等。引導(dǎo)加載程序是系統(tǒng)加電后運(yùn)行的第一段代碼。我們熟悉的 PC 中的引導(dǎo)程序一般由 BIOS 和位于 MBR 的 OS bootloader (例如 LILO或者 GRUB)一起組成。然而在嵌入式系統(tǒng)中通常沒有像 BIOS 那樣的固件程序 (有的嵌入式CPU 有),因此整個(gè)系統(tǒng)的加載啟動(dòng)任務(wù)就完全由bootloader來完成。在嵌入式 Linux 中, 引導(dǎo)加載程序即等效為 bootloader。簡單地說, bootloader就是在操作系統(tǒng)內(nèi)核運(yùn)行前運(yùn)行地一段小程序。通過這段小程

31、序,我們可以初始化必要的硬件設(shè)備,創(chuàng)建內(nèi)核需要的一些信息并將這些信息通過相關(guān)機(jī)制傳遞給內(nèi)核,從而將系統(tǒng)的軟硬件環(huán)境帶到一個(gè)合適的狀態(tài),最終調(diào)用操作系統(tǒng)內(nèi)核,真正起到引導(dǎo)和加載內(nèi)核的作用。bootloader 是依賴于硬件而實(shí)現(xiàn)的, 特別是在嵌入式系統(tǒng)中。 每種不同的 CPU 體系結(jié)構(gòu)都有不同的 Boot Loader 。有些 Boot Loader 也支持多種體系結(jié)構(gòu)的 CPU,比如 U-Boot 就同時(shí)支持 ARM 體系結(jié)構(gòu)和 MIPS 體系結(jié)構(gòu)。除了依賴于 CPU 的體系結(jié)構(gòu)外, Boot Loader 實(shí)際上也依賴于具體的嵌入式板級(jí)設(shè)備的配置。也就是說,對于兩塊不同的嵌入式板而言,即使它

32、們基于相同的 CPU 構(gòu)建,運(yùn)行在其中一塊電路板上的bootloader,未必能夠運(yùn)行在另一塊電路開發(fā)板上。盡管如此,我們?nèi)匀豢梢詫ootloader歸納出一些通用的概念來,以指導(dǎo)用戶特定的Bootloader設(shè)計(jì)與實(shí)現(xiàn):( 1) Boot Loader 的安裝媒介系統(tǒng)加電或復(fù)位后,所有的CPU 通常都從某個(gè)由CPU 制造商預(yù)先安排的地址上取指令。比如,基于ARM7TDMI core 的 CPU 在復(fù)位時(shí)通常都從地址 0x00000000 取它的第一條指令。而基于 CPU 構(gòu)建的嵌入式系統(tǒng)通常都有;.某種類型的固態(tài)存儲(chǔ)設(shè)備 ( 比如:ROM、EEPROM或 FLASH 等) 被映射到這個(gè)預(yù)先

33、安排的地址上。因此在系統(tǒng)加電后, CPU將首先執(zhí)行 Boot Loader 程序。( 2)用來控制 Boot Loader 的設(shè)備或機(jī)制主機(jī)和目標(biāo)機(jī)之間一般通過串口建立連接, Boot Loader 軟件在執(zhí)行時(shí)通常會(huì)通過串口來進(jìn)行I/O ,比如:輸出打印信息到串口,從串口讀取用戶控制字符等。(3)Bootloader的啟動(dòng)方式Bootloader的啟動(dòng)過程可以是單階段的, 也可以是多階段的。 通常多階段的 bootloader能提供更為復(fù)雜的功能,以及更好的可移植性。從固態(tài)存儲(chǔ)設(shè)備上啟動(dòng)的bootloader大多數(shù)是二階段的啟動(dòng)過程,也即啟動(dòng)過程可以分為 stage1和 stage2兩部分。

34、Boot Loader的 stage1通常包括以下步驟 :1)硬件設(shè)備初始化。2)為加載 Boot Loader的 stage2準(zhǔn)備 RAM 空間。3)拷貝 Boot Loader的 stage2到 RAM 空間中。4)設(shè)置好堆棧。5)跳轉(zhuǎn)到 stage2的 C 入口點(diǎn)。Boot Loader的 stage2通常包括以下步驟1)初始化本階段要使用到的硬件設(shè)備。2)檢測系統(tǒng)內(nèi)存映射 (memory map)。3)將 kernel映像和根文件系統(tǒng)映像從flash上讀到 RAM 空間中。4)為內(nèi)核設(shè)置啟動(dòng)參數(shù)。5)調(diào)用內(nèi)核。( 4) Bootloader 的操作模式大多數(shù) bootloader都包含

35、兩種不同的操作模式:“啟動(dòng)加載”模式和“下載”模式,這種區(qū)別對于開發(fā)人員才有意義。但從最終用戶的角度看,bootloader的作用永遠(yuǎn)就是用來加載操作系統(tǒng),而并不存在所謂的啟動(dòng)加載模式與下載工作模式的區(qū)別。啟動(dòng)加載模式:這種模式也稱為“自主”模式,即bootloader從目標(biāo)機(jī)上的某個(gè)固體存儲(chǔ)設(shè)備上將操作系統(tǒng)加載到RAM 中運(yùn)行,整個(gè)過程沒有用戶的介入。這種模式是bootloader的正常工作模式,因此當(dāng)以嵌入式產(chǎn)品發(fā)布的時(shí)候, bootloader必須工作在這種模式下。下載模式:在這種模式下,目標(biāo)機(jī)上的bootloader將通過串口或者網(wǎng)絡(luò)連接或者其它通信手段從主機(jī)下載文件,比如:下載內(nèi)核鏡

36、像和根文件系;.統(tǒng)鏡像等。從主機(jī)下載的文件通常首先被 bootloader 保存到目標(biāo)機(jī)的 RAM 中,然后被 bootloader 寫到目標(biāo)機(jī)上的 FLASH 類固態(tài)存儲(chǔ)設(shè)備中。 Bootloader 的這種模式通常在第一次安裝內(nèi)核與根文件系統(tǒng)時(shí)使用;此外,以后的系統(tǒng)更新也會(huì)使用 bootloader 的這種工作模式。工作于這種模式下的 bootloader 通常都會(huì)向它的中斷用戶提供一個(gè)簡單的命令行接口。(5)Bootloader 的功能擴(kuò)展Bootloader 最主要的功能是引導(dǎo)加載內(nèi)核鏡像。 但是隨著嵌入式系統(tǒng)的發(fā)展,bootloader 已經(jīng)逐漸在基本功能的基礎(chǔ)上, 進(jìn)行了擴(kuò)展, b

37、ootloader 可以更多地增加對具體系統(tǒng)的板級(jí)支持,即增加一些硬件模塊功能上的使用支持,以方便開發(fā)人員進(jìn)行開發(fā)和調(diào)試。從這個(gè)層面上看,功能擴(kuò)展后的 bootloader 可以虛擬地看成是一個(gè)微小的系統(tǒng)級(jí)的代碼包。的 Bootloader功能說明以上介紹了一般嵌入式系統(tǒng)中的 Bootloader 的特點(diǎn)。 如前所述,對于不同的目標(biāo)板和外圍硬件電路, Bootloader 的設(shè)計(jì)是不相同的。本系統(tǒng)的 Bootloader 除了具有一般的功能外,還具有以下擴(kuò)展功能 :(1) USB 口文件下載(2) 串口文件下載(3) NOR 和 NAND FLASH的燒寫(4) 運(yùn)行存儲(chǔ)在 FLASH 中的程

38、序(5)針對 Linux 設(shè)置啟動(dòng)參數(shù)(6)設(shè)置 Wince 或 Linux 的自啟動(dòng)(7)運(yùn)行 BenQ M22 GPRS通訊系統(tǒng)ST2410 的 Bootloader的流程圖,如圖4.1所示圖 4.1 Bootloader流程圖 構(gòu);.如前所述,此核心板一共由三大存儲(chǔ)設(shè)備 Nor Flash(2M) Nand Flash(64M) SDRAM(64M)。前兩個(gè) Flash 設(shè)備就猶如 PC 機(jī)的兩塊硬盤, ( 由于 Nand Flash 無論在價(jià)格與性能上都優(yōu)于 Nor Flash, 因此現(xiàn)在一般都采用 Nand Flash 。 ) 而 SDRAM就猶如 PC 機(jī)的內(nèi)存設(shè)備。4.2串口通訊

39、程序的設(shè)計(jì)如前所述,本系統(tǒng)有三大模塊:PC 機(jī):主要負(fù)責(zé)人機(jī)交互。 在 PC 機(jī)上運(yùn)行 DNW(一種串口調(diào)試軟件),從而可以顯示和接受來自ARM 的數(shù)據(jù)。ARM微處理器:核心處理器。將已經(jīng)編寫成功的GPRS 通訊程序燒寫到其 Nand Flash 中。M22 通訊模塊: GPRS通訊的具體實(shí)現(xiàn)。接受來自 ARM 的 AT 指令,從而進(jìn)行 GPRS 通訊,并將有用的信息反饋給 ARM。4.3 BenQ M22 模塊內(nèi)部的軟件特性下面我們來描述一下BenQ M22 模塊內(nèi)部集成的軟件系統(tǒng)。對于無線PSTN 的用戶, BenQ 提供 AT 指令的支持。BenQ M22 的內(nèi)部集成的軟件包括以下3個(gè)部

40、分:Layer 1驅(qū)動(dòng)協(xié)議棧 /AT 命令基本接口由于在無線 PSTN 和 BenQ M22 模塊中都有微處理器,在這兩者之間的接口通常是 AT 指令。當(dāng)然由于協(xié)議棧(TCP/IP)的存在,我們也可以通過發(fā)送 AT 指令達(dá)到聯(lián)通 GSM/GPRS網(wǎng)的目的。5 模塊軟件運(yùn)行流程圖;.圖 5.1 軟件主菜單流程圖圖 5.2 外電呼入時(shí)流程圖圖 5.3 發(fā)送短信流程圖圖 5.4 電話本查詢流程圖;.圖 5.5 主動(dòng)呼叫流程圖6 模塊設(shè)計(jì)總結(jié)計(jì)算機(jī)發(fā)展的目標(biāo)是專用電腦, 實(shí)現(xiàn)“普遍化計(jì)算”, 因此可以稱嵌入式系統(tǒng)是構(gòu)成未來世界的“數(shù)字基因”。 嵌入式系統(tǒng)與無線通訊網(wǎng)絡(luò)的有機(jī)結(jié)合,構(gòu)成了最具吸引力的嵌入

溫馨提示

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

評論

0/150

提交評論