<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于ARM9的無線電臺(tái)網(wǎng)絡(luò)控制系統(tǒng)的設(shè)計(jì)與研究

          基于ARM9的無線電臺(tái)網(wǎng)絡(luò)控制系統(tǒng)的設(shè)計(jì)與研究

          作者: 時(shí)間:2009-03-18 來源:網(wǎng)絡(luò) 收藏

          1、引言

          本文引用地址:http://www.ex-cimer.com/article/152581.htm

          在如今的信息時(shí)代,由于人們對(duì)系統(tǒng)性能和成本控制要求的不斷提高,嵌入式系統(tǒng)憑其優(yōu)良的性價(jià)比和獨(dú)特的便利性得到了越來越多的人們的青睞。已經(jīng)由傳統(tǒng)的模擬式向數(shù)字化演進(jìn),由孤立系統(tǒng)向互聯(lián)邁進(jìn)。技術(shù)的快速發(fā)展極大地推動(dòng)了嵌入式系統(tǒng)的發(fā)展。

          隨著技術(shù)的飛速發(fā)展,越來越多的行業(yè)開始使用,因?yàn)橛脽o線電臺(tái)方式實(shí)現(xiàn)數(shù)據(jù)采集、監(jiān)視與控制,相對(duì)于架設(shè)專用的電纜或光纜,具有造價(jià)低廉、運(yùn)行可靠、維護(hù)方便等優(yōu)點(diǎn)[1]。無線電臺(tái)的使用從最早的按鍵電碼、電報(bào)發(fā)展到模擬電臺(tái)加無線MODEM、數(shù)字電臺(tái)和DSP及軟件無線電。數(shù)據(jù)傳輸速率從低速走到高速,傳輸?shù)男盘?hào)從簡(jiǎn)單代碼發(fā)展到遙控遙測(cè)數(shù)據(jù)、數(shù)字化語音、動(dòng)態(tài)圖像等。無線電臺(tái)因其高穩(wěn)定性和高可靠性適用于各類無線數(shù)據(jù)采集與監(jiān)視,尤其是應(yīng)用在輸油供氣管網(wǎng)監(jiān)測(cè)、城市防空?qǐng)?bào)警控制、鐵路信號(hào)監(jiān)控、電力負(fù)荷監(jiān)控[2]、城市路燈監(jiān)控、鐵路供水集中控制、GPS定位系統(tǒng)、地震測(cè)報(bào)、污水處理、環(huán)境監(jiān)測(cè)等工業(yè)自動(dòng)化系統(tǒng)。

          2、系統(tǒng)概述

          本文把嵌入式技術(shù)與無線電臺(tái)通信技術(shù)相結(jié)合,出一種新型的嵌入式控制器。控制器內(nèi)的電路板是以arm9嵌入式微處理器為核心,對(duì)外提供多個(gè)接口,包括3個(gè)串口,小型的系統(tǒng)總線接口,以及非常豐富的常用嵌入式系統(tǒng)接口,如SPI x 1、I2C x 1、I2S x 1、AD x 2、PWM x 1 、USB Host、 USB Slave接口等,有了這些接口,我們可以根據(jù)需求拓展嵌入式網(wǎng)絡(luò)控制器的功能。在本系統(tǒng)中我們主要使用3個(gè)串口及以太網(wǎng)口。

          該無線電臺(tái)網(wǎng)絡(luò)控制器的主要原理是:電臺(tái)接收對(duì)講機(jī)發(fā)出的語音信號(hào)并通過音頻電纜輸出到網(wǎng)絡(luò)控制器終端??刂破鲀?nèi)的語音編解碼芯片負(fù)責(zé)把模擬的語音信號(hào)轉(zhuǎn)換成數(shù)字信號(hào),控制器內(nèi)的軟件負(fù)責(zé)壓縮音頻數(shù)據(jù),壓縮后的語音數(shù)據(jù)包通過互聯(lián)網(wǎng)發(fā)送到服務(wù)器,服務(wù)器軟件根據(jù)一定的規(guī)則轉(zhuǎn)發(fā)數(shù)據(jù)包到其它網(wǎng)絡(luò)控制器終端。收到語音壓縮碼流的控制器負(fù)責(zé)解碼、D/A轉(zhuǎn)換,通過音頻電纜把語音信號(hào)輸入到電臺(tái),最后無線電臺(tái)通過內(nèi)部的發(fā)射模塊將語音信號(hào)發(fā)送到對(duì)講機(jī)。這個(gè)過程實(shí)現(xiàn)了語音數(shù)據(jù)跨互聯(lián)網(wǎng)傳輸,用戶通過PC或其他網(wǎng)絡(luò)設(shè)備將控制指令發(fā)送到控制器終端。終端內(nèi)的軟件負(fù)責(zé)解釋指令并且通過串口將指令傳送給電臺(tái)。電臺(tái)再下達(dá)指令給各個(gè)被控制的設(shè)備,從而實(shí)現(xiàn)了對(duì)電臺(tái)及相關(guān)設(shè)備的遠(yuǎn)程控制。

          3、硬件

          在分析了無線電臺(tái)網(wǎng)絡(luò)控制器工作原理的基礎(chǔ)上,我們對(duì)系統(tǒng)的子模塊和任務(wù)進(jìn)行了整體。整個(gè)系統(tǒng)可以分成兩個(gè)相對(duì)獨(dú)立的部分來完成:無線電臺(tái)網(wǎng)絡(luò)控制器終端和服務(wù)器軟件??刂破?將編碼后的g72x碼流發(fā)送到服務(wù)器,服務(wù)器根據(jù)路由表信息,將數(shù)據(jù)轉(zhuǎn)發(fā)到控制器2、控制器3、控制器4…控制器n,控制器與服務(wù)器之間采用TCP或UDP協(xié)議。無線電臺(tái)網(wǎng)絡(luò)控制器結(jié)構(gòu)示意圖如圖1所示。

          硬件設(shè)計(jì)除了核心板的選型外,主要是外部電路的設(shè)計(jì)。我們選擇了性價(jià)比比較好的SBC-2410核心板。外圍電路的設(shè)計(jì)主要包括音頻信號(hào)采集模塊、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)模塊、串口控制電路等[3],其中音頻信號(hào)采集電路我們選的是uda1341語音編解碼芯片,網(wǎng)絡(luò)控制器芯片我們采用的是cs8900芯片。

          3.1 嵌入式核心板簡(jiǎn)介

          SBC-2410具有高性能、低功耗、接口豐富和體積小等優(yōu)良特性,并且已經(jīng)應(yīng)用在多個(gè)設(shè)計(jì)中,可重用的思想,整個(gè)平臺(tái)承載ARM最精簡(jiǎn)系統(tǒng),把有用的信號(hào)線通過兩排插針引出去。無線電臺(tái)網(wǎng)絡(luò)控制器終端的具體應(yīng)用按照實(shí)際的需求進(jìn)行設(shè)計(jì),通過兩排插座與核心板相連[4]。

          圖1 無線電臺(tái)網(wǎng)絡(luò)控制器結(jié)構(gòu)圖

          3.2 語音芯片接口電路

          由于S3C2410內(nèi)置的IIS總線接口能夠和其他廠商提供的多媒體編解碼芯片配合使用,所以無線電臺(tái)網(wǎng)絡(luò)控制器終端內(nèi)部語音模塊的設(shè)計(jì)是IIS(Integrate Interface of Sound)接口的。提供IIS接口能夠讀取IIS總線上面的數(shù)據(jù),同時(shí)也為FIFO(First Input First Output)數(shù)據(jù)提供DMA(Direct Memory Access)的傳輸模式,這樣能夠同時(shí)傳送和接收數(shù)據(jù)。IIS接口有3種工作方式,分別是正常傳輸模式、DMA模式和傳輸/接受模式,在本文的設(shè)計(jì)中,我們選擇了傳輸/接受模式,在這種模式下,IIS總線可以同時(shí)接收和發(fā)送音頻數(shù)據(jù)。


          上一頁 1 2 下一頁

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();