摘 要: 為了提高辦公的效率和實(shí)現(xiàn)人民生活的智能化,,研制了一種基于ARM-Linux的便攜式語音業(yè)務(wù)群呼系統(tǒng)。系統(tǒng)以S3C2440為處理器,、TC35i為GSM模塊,、UDA1341為語音芯片,ARM處理器通過AT指令控制GSM模塊將錄制好的語音業(yè)務(wù)進(jìn)行群呼,。測(cè)試結(jié)果表明,,該系統(tǒng)具有錄入話音、設(shè)置呼叫號(hào)碼,、自動(dòng)撥號(hào)放音和統(tǒng)計(jì)未呼叫成功號(hào)碼等功能,,系統(tǒng)操作簡(jiǎn)單、界面友好,、成本低廉,。
關(guān)鍵詞: 語音業(yè)務(wù);ARM,;Linux,;GSM模塊
0 引言
科技的發(fā)展和社會(huì)的進(jìn)步影響和改變了人們的生產(chǎn)和生活方式。隨著生產(chǎn)的社會(huì)化程度日益加劇,,出現(xiàn)了一大批規(guī)模巨大的企事業(yè)和生產(chǎn)企業(yè),,這就給這樣單位和公司發(fā)布開會(huì)通知帶來了困難:一些大公司和單位如果要召開緊急會(huì)議,,就需要用短信群發(fā)或逐個(gè)撥打語音電話通知與會(huì)人員,而如果通過發(fā)送短信通知會(huì)議人員則會(huì)由于短信聲音小且振鈴時(shí)間短不易被人們發(fā)覺(而且缺少實(shí)時(shí)性),;而通過語音撥號(hào)則由于需要逐個(gè)撥打而顯得極為繁重,,特別是如果公司和企事業(yè)單位人數(shù)太多,這一問題就尤為突出[1],。因此,,設(shè)計(jì)一個(gè)能錄入通話內(nèi)容、在線添加和修改被叫人號(hào)碼,、自動(dòng)撥號(hào)及統(tǒng)計(jì)未撥通號(hào)碼的語音群呼系統(tǒng)非常必要,。
根據(jù)實(shí)際需要,該系統(tǒng)需要滿足如下功能:
?。?)錄入,、添加、修改,、刪除用戶,;
(2)錄音功能,;
?。?)設(shè)定撥號(hào)次數(shù);
?。?)按照設(shè)定的次數(shù)和錄入的用戶信息自動(dòng)撥號(hào)并完成錄入語音的播放,;
(5)顯示撥號(hào)狀態(tài),、統(tǒng)計(jì)撥號(hào)次數(shù)和返回未撥通的用戶名單,。
1 系統(tǒng)組成及工作過程
該群呼系統(tǒng)由主控制器、人機(jī)接口,、語音模塊,、GSM模塊等構(gòu)成,如圖1所示,。
系統(tǒng)通過語音模塊錄制需要播放的語音存入存儲(chǔ)器中,,然后在ARM處理器的控制下將觸摸屏手寫筆存入的用戶號(hào)碼通過GSM模塊撥通,撥通后將該語音通過GSM的語音接口播放出去,,撥號(hào)的結(jié)果通過觸摸屏顯示出來,。
在該系統(tǒng)中,,人機(jī)接口采用TFT-LCD觸摸屏,、ARM處理器采用三星的S3C2440處理器、語音芯片采用飛利浦公司的UDA1341,、GSM模塊采用西門子公司的TC35i,。
2 硬件設(shè)計(jì)
本系統(tǒng)的硬件設(shè)計(jì)比較復(fù)雜,,這里只給出部分核心電路,包括ARM處理器與觸摸屏的連接,、語音模塊與ARM處理器及GSM模塊的連接,、GSM模塊與ARM處理器的連接。
2.1 ARM處理器與觸摸屏的連接
TFT-LCD的主要特點(diǎn)是為每個(gè)像素配置一個(gè)半導(dǎo)體開關(guān)器件,,由于每個(gè)像素都可以通過點(diǎn)脈沖直接控制,,因此每個(gè)節(jié)點(diǎn)都相對(duì)獨(dú)立,并可以進(jìn)行連續(xù)控制[2],。
該LCD接口是一個(gè)41Pin 0.5 mm間距的白色座,,其中包含了常見LCD所用的大部分控制信號(hào)(行場(chǎng)掃描、時(shí)鐘和使能等)和完整的RGB數(shù)據(jù)信號(hào)(RGB輸出為8:8:8,,即最高可支持1 600萬色的LCD),;37、38,、39,、40為四線觸摸屏接口,它們可以直接連接觸摸屏使用,。
2.2 語音模塊與ARM處理器及GSM模塊的連接
圖2所示為語音模塊與ARM處理器及GSM模塊的連接的硬件框圖,。
ARM處理器S3C2410的IIS總線信號(hào)與語音芯片UDAl34l的IIS信號(hào)直接相連[3]。L3接口的引腳L3MODE,、L3CLOCK和L3DATA分別連到S3C2440的GPBl,、GPB2和GPB3通用數(shù)據(jù)輸出引腳。UDAl34l對(duì)外提供兩組音頻信號(hào)輸入接口,,每組包括左右2個(gè)聲道,。由于IIS總線只處理音頻數(shù)據(jù),而其他的信號(hào)(如編碼,、控制等信號(hào))單獨(dú)傳送[4],。為了使必需的引腳數(shù)最小并且保持連線簡(jiǎn)單,IIS總線由3條信號(hào)線組成:時(shí)分復(fù)用的數(shù)據(jù)通道線,、字段選擇線和時(shí)鐘信號(hào)線,。本系統(tǒng)由系統(tǒng)主控制器提供時(shí)鐘信號(hào),控制數(shù)字音頻數(shù)據(jù)在各個(gè)IC之間的流向,。此時(shí),,發(fā)送器在外部時(shí)鐘信號(hào)的控制下產(chǎn)生數(shù)據(jù),處于從模式,。具體連接如圖3所示,。
2.3 GSM模塊與ARM處理器的連接
ARM處理器S3C2440與GSM模塊TC35i是通過USB轉(zhuǎn)串口進(jìn)行通信的。用USB Host接口與GSM模塊連接[5],。USB Host與普通PC的USB接口是一樣的,,接口電路如圖4所示,。
3 軟件設(shè)計(jì)
軟件設(shè)計(jì)包括Linux內(nèi)核移植、QT-4.6移植,、語音業(yè)務(wù)GSM拔號(hào)軟件設(shè)計(jì)和語音錄放軟件設(shè)計(jì),,本文只對(duì)該系統(tǒng)的GSM語音拔號(hào)軟件設(shè)計(jì)和語音錄放軟件設(shè)計(jì)這兩個(gè)核心部分進(jìn)行介紹,至于Linux內(nèi)核移植,、QT-4.6移植這些部分與其他的嵌入式開發(fā)系統(tǒng)并無太大差別[6-7],,這里不再贅述。
3.1 語音業(yè)務(wù)GSM拔號(hào)程序設(shè)計(jì)
ARM處理器通過串口發(fā)送AT指令來控制GSM模塊TC35i的工作,。AT指令及該GSM模塊的使用及相關(guān)信息可以參考相關(guān)文獻(xiàn)資料,。
首先需要進(jìn)行串口的設(shè)置,串口通信的設(shè)置要符合TC35i通信的要求,;然后就是對(duì)TC35i初始化,,初始化的過程主要包括與TC35i建立連接、音頻模式的設(shè)置,、取消回顯等,;最后就是進(jìn)行循環(huán)呼叫,在呼叫的同時(shí),,不斷讀取并且更新拔號(hào)的狀態(tài),,同時(shí)也統(tǒng)計(jì)呼叫的次數(shù),每當(dāng)呼叫一個(gè)號(hào)碼之后,,進(jìn)行一下號(hào)碼呼叫,,直到所有的號(hào)碼呼叫完為止。撥號(hào)放音應(yīng)用主程序及子程序如圖5,、圖6所示,。
3.2 語音錄放程序設(shè)計(jì)
(1)錄音部分
本系統(tǒng)支持兩種錄音格式,,一種是原始數(shù)據(jù)pcm格式,,沒有經(jīng)過任何壓縮的WAV音頻文件;另一種是經(jīng)過lame壓縮的mp3格式,。從聲卡讀取pcm數(shù)據(jù),,加上文件頭信息直接寫入WAV文件,如果要錄制成mp3格式,,需要使用lame庫對(duì)pcm數(shù)據(jù)進(jìn)行壓縮,,然后寫入mp3文件。其設(shè)計(jì)流程圖如圖7所示,。
?。?)放音部分
放音與錄音相反,放音時(shí),如果為WAV文件格式,,解析頭獲取采樣率,、量化位數(shù),、聲道數(shù),,對(duì)聲卡進(jìn)行初始化,然后跳過文件頭,,直接讀取pcm數(shù)據(jù)寫入聲卡,,就能播放WAV文件。對(duì)于MP3文件格式,,需要使用libmad解碼成pcm數(shù)據(jù)即可,。其設(shè)計(jì)流程圖如圖8所示。
4 測(cè)試結(jié)果
至此系統(tǒng)設(shè)計(jì)完成,,圖9,、圖10所示為對(duì)系統(tǒng)的撥號(hào)部分和語音的錄放部分分別進(jìn)行的測(cè)試。
5 結(jié)論
本文介紹了一種基于ARM+Linux的便攜式語音業(yè)務(wù)群呼系統(tǒng)硬件與軟件設(shè)計(jì),,通過自行設(shè)計(jì)樣機(jī)的測(cè)試表明該系統(tǒng)具有能錄入話音,、設(shè)置呼叫號(hào)碼、自動(dòng)撥號(hào)放音和統(tǒng)計(jì)未呼叫成功號(hào)碼等功能,,系統(tǒng)操作簡(jiǎn)單,、界面友好、成本低廉,。隨著生產(chǎn)社會(huì)化的日益加劇和人民對(duì)生活智能化的要求日益提高,,以該系統(tǒng)所代表的技術(shù)和理念的語音業(yè)務(wù)群呼智能系統(tǒng)必將廣泛應(yīng)用于各領(lǐng)域之中。
參考文獻(xiàn)
[1] 劉誠(chéng).智能家居控制子系統(tǒng)的設(shè)計(jì)實(shí)現(xiàn)[D].北京:北京大學(xué),,2008.
[2] 潘玉龍.嵌入式家庭智能終端的集成與實(shí)現(xiàn)[D].北京:北京大學(xué),,2004.
[3] Samsung. S3C2410 datasheet[DB/OL]. (2010-05-30)[2013-02-15]. http://download.csdn.net/download/omycle/2408896.
[4] Philips.UDA1341 datasheet[DB/OL].(1998-12-18)[2013-02-15]. http://datasheet.eepw.com.cn/datasheet/search
[5] Siemens. TC35i user guide[DB/OL].(2009-09-10)[2013-02-15]. http://www.siemens.com.
[6] 田澤.ARM9嵌入式Linux開發(fā)試驗(yàn)與實(shí)踐[M].北京:北京航空航天大學(xué)出版社,2006.
[7] 熊茂華.ARM9嵌入式系統(tǒng)設(shè)計(jì)與開發(fā)應(yīng)用[R].北京:清華大學(xué)嵌入式設(shè)計(jì)研究院,,2008:136-180.