• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Windows CE的嵌入式DRM接收機(jī)研究

      2012-06-22 06:54:56沈向輝陳明
      關(guān)鍵詞:聲卡解碼接收機(jī)

      沈向輝,陳明

      (中國(guó)傳媒大學(xué)廣播電視數(shù)字化教育部工程研究中心,北京 100024)

      基于Windows CE的嵌入式DRM接收機(jī)研究

      沈向輝,陳明

      (中國(guó)傳媒大學(xué)廣播電視數(shù)字化教育部工程研究中心,北京 100024)

      介紹了嵌入式數(shù)字調(diào)幅廣播(DRM)接收機(jī)的結(jié)構(gòu),DRM軟件接收機(jī)的工作流程,給出了DRM接收機(jī)軟件—“Dream”從Windows平臺(tái)到Windows CE平臺(tái)的移植方法,并總結(jié)了向嵌入式平臺(tái)—Windows CE移植、調(diào)試軟件的基本方法和感想。

      數(shù)字調(diào)幅廣播;嵌入式操作系統(tǒng);Windows CE;Platform Builder;Embedded Visual C++;嵌入式DRM接收機(jī)

      1 引言

      DRM軟件接收機(jī)不僅可以完成DRM解碼的功能,還可以實(shí)時(shí)地對(duì)接收到的DRM信號(hào)以及傳輸通路的性能進(jìn)行分析、顯示,反映接收質(zhì)量,在DRM廣播外場(chǎng)測(cè)試、DRM廣播質(zhì)量控制、性能評(píng)測(cè)中有重要作用,是DRM硬件接收機(jī)所不能取代的。但由于要用到PC機(jī),體積相對(duì)比較大,攜帶不便。近年來(lái),嵌入式系統(tǒng)及技術(shù)的迅速發(fā)展,為DRM軟件接收機(jī)的研究開辟了新的里程碑。通過(guò)把嵌入式技術(shù)引入DRM軟件接收機(jī)系統(tǒng),開發(fā)嵌入式DRM接收機(jī),可實(shí)現(xiàn)接收機(jī)的小型化,使其移動(dòng)能力大大增強(qiáng)。

      2 DRM軟件接收機(jī)

      DRM軟件接收機(jī)主要由接收前端和接收機(jī)軟件即解碼軟件構(gòu)成。

      2.1 DRM接收前端

      接收前端是一個(gè)射頻接收模塊,實(shí)現(xiàn)從射頻信號(hào)到中頻信號(hào)轉(zhuǎn)換的處理任務(wù),從空中接收調(diào)幅波段(中短波)的信號(hào),進(jìn)行數(shù)字下變頻,將射頻(RF)信號(hào)轉(zhuǎn)為中頻(IF)信號(hào)。

      2.2 解碼軟件

      DRM軟件接收機(jī)的解碼軟件,主要完成對(duì)數(shù)字中頻信號(hào)的時(shí)間同步、頻率同步、采樣時(shí)鐘同步、IQ信號(hào)分離、OFDM解碼、信道估計(jì)與均衡、QAM解調(diào)、MLC(多層編碼)譯碼、業(yè)務(wù)信息解碼和業(yè)務(wù)解碼等主要功能。同時(shí),該接收機(jī)軟件還可以實(shí)時(shí)地對(duì)接收到的DRM信號(hào)以及傳輸通路的性能進(jìn)行分析、顯示。解碼后的數(shù)字信號(hào)通過(guò)聲卡進(jìn)行D/A變換后,可由揚(yáng)聲器播出。接收機(jī)軟件流程如下圖所示:

      圖1 DRM軟件接收機(jī)流程圖

      DRM軟件接收機(jī)的各模塊主要由以上幾個(gè)函數(shù)組成。其中每個(gè)函數(shù)都包含初始化和數(shù)據(jù)處理兩部分。程序在啟動(dòng)時(shí)先進(jìn)行所有模塊的初始化,初始化完成后即開始正式的數(shù)據(jù)處理。

      數(shù)據(jù)一般是從聲卡或者USB輸入的,由聲卡輸出的。在程序中從聲卡/USB獲取數(shù)據(jù)必須保持連續(xù)性,所以聲卡/USB采集數(shù)據(jù)是與接收機(jī)數(shù)據(jù)處理同步進(jìn)行的。這里采取兩個(gè)線程分別控制聲卡/USB的數(shù)據(jù)采集和接收機(jī)的數(shù)據(jù)處理。程序啟動(dòng)即同時(shí)啟動(dòng)以上兩個(gè)線程。其中聲卡以48kHz的速率16bit量化接收數(shù)據(jù),USB的數(shù)據(jù)率為48kHz,接收的數(shù)據(jù)保存在內(nèi)部buffer中。在本設(shè)計(jì)中為方便調(diào)試移植后的軟件,除可從聲卡/USB獲取數(shù)據(jù)外還可以從文件獲取數(shù)據(jù)。

      數(shù)據(jù)處理線程在每個(gè)循環(huán)從buffer中讀取一塊數(shù)據(jù),提供給下一個(gè)模塊;然后根據(jù)估計(jì)的采樣率進(jìn)行采樣率調(diào)整;之后進(jìn)行頻率同步的捕獲,該模塊完成載波頻率的粗估計(jì),當(dāng)頻率捕獲完成后,要設(shè)置時(shí)間同步捕獲時(shí)要用到的低通濾波器的參數(shù);之后進(jìn)行時(shí)間同步的捕獲,根據(jù)同步獲得的數(shù)值確定FFT窗的位置,去掉保護(hù)間隔,在該模塊也要完成魯棒模式的判定;然后進(jìn)行OFDM信號(hào)的解調(diào),信號(hào)由時(shí)域變換到頻域,在解調(diào)之前先要根據(jù)頻率捕獲和跟蹤獲得的頻偏值進(jìn)行頻偏校正;下面利用導(dǎo)頻信號(hào)進(jìn)行同步,包括傳輸幀同步以及采樣率和頻偏的跟蹤,傳輸幀的同步是利用每個(gè)傳輸幀中第一個(gè)OFDM符號(hào)中包含的時(shí)間導(dǎo)頻進(jìn)行計(jì)算,采樣率和頻偏的跟蹤獲得的值再反饋回采樣率和頻偏的校正模塊;然后進(jìn)行信道估計(jì),先估計(jì)出增益導(dǎo)頻所在位置的信道參數(shù),再在時(shí)域進(jìn)行維納濾波插值運(yùn)算,利用信道估計(jì)中時(shí)域內(nèi)插后的估計(jì)值進(jìn)行時(shí)間同步的跟蹤,同時(shí)利用跟蹤的值對(duì)FFT窗的位置進(jìn)行校正,再進(jìn)行頻域內(nèi)的維納濾波,最終獲得二維的信道估計(jì)值,根據(jù)信道估計(jì)值進(jìn)行信道均衡,在該模塊還要完成SNR的估計(jì)等。到此為止,完成了同步及信道估計(jì)。下面進(jìn)行 OFDM單元的解映射,即把OFDM單元解映射為MSC、FAC、SDC三部分,后面分別做不同處理。對(duì)于FAC先進(jìn)行MLC的解碼,再使用FAC數(shù)據(jù)。對(duì)于SDC也是類似處理過(guò)程。MSC則先要進(jìn)行符號(hào)解交織,再進(jìn)行MLC解碼,解復(fù)用,最后進(jìn)行音頻源解碼。至此,整個(gè)接收流程結(jié)束。

      3 嵌入式DRM接收機(jī)

      嵌入式DRM接收機(jī)類似于普通的DRM軟件接收機(jī),也主要由接收前端和接收機(jī)軟件構(gòu)成。所不同的主要是嵌入式DRM接收機(jī)是一個(gè)嵌入式系統(tǒng),其接收機(jī)軟件基于嵌入式操作系統(tǒng)——Windows CE,而不是Windows.下面主要介紹一下嵌入式DRM接收機(jī)的接收機(jī)軟件部分。

      接收機(jī)軟件主要任務(wù)是采集測(cè)量數(shù)據(jù)和運(yùn)行參數(shù)。接收機(jī)軟件采用基于Windows CE的嵌入式系統(tǒng)。下圖為嵌入式DRM軟件接收機(jī)原理圖。

      圖2 基于Windows CE的嵌入式DRM軟件接收機(jī)原理圖

      嵌入式操作系統(tǒng)選擇使用Windows CE,是考慮到以下因素:

      1.DRM解碼程序移植工作量較小;

      2.開發(fā)效率較高,開發(fā)工具(Embedded Visual C++,Platform Builder)功能強(qiáng)大;

      3.對(duì)外部設(shè)備及接口有較好的支持;

      4.使用標(biāo)準(zhǔn)Windows界面,具有良好的人機(jī)交互接口。

      DRM解碼部分程序按照DRM標(biāo)準(zhǔn)中的規(guī)定編寫,能夠?qū)崿F(xiàn)OFDM解調(diào)、信道估計(jì)、解映射、音頻解碼等完整的DRM解碼流程;同時(shí)在此過(guò)程中可以獲取信噪比(SNR)、多徑延時(shí)(Delay)、多普勒效應(yīng)(Doppler)、有效幀數(shù)(Availability Frames)等數(shù)據(jù),以及同步狀態(tài)標(biāo)志位(SYNC)、快速訪問(wèn)信道標(biāo)志位(FAC)、主業(yè)務(wù)信道標(biāo)志位(MSC)、總幀數(shù)(Frames)等運(yùn)行參數(shù)。

      由DRM解碼部分獲得的運(yùn)行參數(shù)、測(cè)量數(shù)據(jù)在嵌入式DRM軟件接收機(jī)內(nèi)存儲(chǔ),并與數(shù)據(jù)傳輸接口相連。DRM解碼后的聲音數(shù)據(jù)可以通過(guò)嵌入式DRM軟件接收機(jī)內(nèi)置聲卡進(jìn)行聲音回放,文本信息或其它數(shù)據(jù)可以通過(guò)LCD進(jìn)行顯示。

      4 嵌入式DRM接收機(jī)軟件的移植

      由于Windows平臺(tái)和Windows CE平臺(tái)的相似性,只需要做如下修改就可以基本實(shí)現(xiàn)程序的移植。

      具體方法如下:

      (1)在Embedded Visual C++(EVC)下利用應(yīng)用程序向?qū)梢粋€(gè)基于對(duì)話框的基本程序框架,工程取名為DrmWce.

      (2)把DRM軟件接收機(jī)—“Dream”文件夾下的文件內(nèi)容拷貝到DrmWce文件夾下。

      (3)向DrmWce工作區(qū)添加新的文件夾并加入相應(yīng)文件。

      (4)修改某些包含文件的路徑。

      (5)在Embedded Visual C++下CString類的字符都是unicode碼,在將字符串賦值給CString對(duì)象前一定要加上 _T()或 TEXT()宏,這兩個(gè)宏在預(yù)定義了_UNICODE情況下,將字符串每個(gè)字符轉(zhuǎn)變成寬字符。也可以在字符串前面加“L”將每個(gè)字符轉(zhuǎn)變成寬字符。

      (6)Visual C++(VC)自帶了復(fù)數(shù)模板,但Embedded Visual C++中沒有,這部分需要移植一下。

      (7)嵌入式DRM軟件接收機(jī)界面如圖3所示。消息處理函數(shù)的函數(shù)體部分直接從Visual C++下的相應(yīng)函數(shù)移植過(guò)來(lái)即可。

      圖3 嵌入式DRM軟件接收機(jī)界面

      5 向嵌入式平臺(tái)移植、調(diào)試軟件的感想及建議

      為實(shí)現(xiàn)產(chǎn)業(yè)化,現(xiàn)在很多軟件都在逐漸地由PC平臺(tái)向嵌入式平臺(tái)移植。在此簡(jiǎn)單總結(jié)Windows平臺(tái)向 Windows CE平臺(tái)移植調(diào)試程序的基本方法。

      首先,由于VC和EVC的相似性,先把VC下的代碼全部復(fù)制到EVC下。然后,對(duì)程序主要做如下兩點(diǎn)修改:

      1.Windows CE中預(yù)定義了_UNICODE宏,所以CString類的字符都是unicode碼,在將字符串賦值給CString對(duì)象前一定要加上“L”將字符串的每個(gè)字符轉(zhuǎn)變成寬字符。

      2.對(duì)于該程序用到的模板,VC下有但EVC下沒有的,要自己從VC下移植過(guò)來(lái),移植過(guò)程中對(duì)該軟件程序用不到的包含文件,函數(shù)適當(dāng)刪減,以便節(jié)約資源。同時(shí),對(duì)該程序用到的MFC或API函數(shù),可以通過(guò)查MSDN或相關(guān)資料確定哪些是VC下有而EVC下沒有或是有等價(jià)的不同名函數(shù),對(duì)于EVC下沒有的函數(shù)需按其功能自己編寫或設(shè)法用EVC下有的函數(shù)代替。對(duì)于那些既不屬于MFC也不屬于API的函數(shù),先移植過(guò)來(lái),在調(diào)試中更正。

      目前的大型軟件都是模塊化設(shè)計(jì)的,在理解其主要流程的基礎(chǔ)上按模塊進(jìn)行對(duì)比調(diào)試??蓮牡谝粋€(gè)模塊開始,寫一段調(diào)試程序,以便對(duì)比模塊的輸出數(shù)據(jù)。若該模塊無(wú)誤,即在VC下和EVC下的該模塊輸出數(shù)據(jù)相同,當(dāng)然輸出數(shù)據(jù)在精度上允許有一定的誤差,則用同樣的方法繼續(xù)調(diào)試下一模塊;若有誤,建議以下兩種調(diào)試方案:

      1.進(jìn)入該模塊內(nèi)部通過(guò)設(shè)置斷點(diǎn)或是寫一些簡(jiǎn)單調(diào)試程序以便輸出中間變量來(lái)進(jìn)行調(diào)試。

      2.可先跳過(guò)有錯(cuò)的模塊,調(diào)試下一模塊。此時(shí)要固定下一模塊的輸入數(shù)據(jù),可讓VC下和EVC下的相應(yīng)模塊讀入相同的文件數(shù)據(jù)。

      6 結(jié)束語(yǔ)

      嵌入式的DRM接收機(jī),其使用和攜帶都比較方便,可在外場(chǎng)調(diào)試中得到廣泛應(yīng)用,還可在它的基礎(chǔ)上發(fā)展多媒體增殖業(yè)務(wù)。嵌入式接收機(jī)將作為DRM—QoS系統(tǒng)(DRM服務(wù)質(zhì)量保證體系)中數(shù)據(jù)采集主機(jī)的一部分投入實(shí)際使用。

      [1]ETSI ES 201 980 V2.3.1(2008-02)[S].

      [2]李棟.數(shù)字聲音廣播[M].北京:北京廣播學(xué)院出版社,2001.

      [3]李士勇.模糊控制·神經(jīng)控制和智能控制論[M].哈爾濱:哈爾濱工業(yè)大學(xué)出版社,1998.

      [4]周根林.嵌入式系統(tǒng)原理與應(yīng)用[M].南京:南京大學(xué)出版社,2006.

      [5]劉媛,周劍.DRM服務(wù)質(zhì)量控制系統(tǒng)信號(hào)監(jiān)測(cè)站研究與實(shí)現(xiàn)[J].北京廣播學(xué)院學(xué)報(bào)(自然科學(xué)版),2005,12(04).

      Research of Embedded DRM Receiver Based on Windows CE

      SHEN Xiang-hui,CHEN Ming
      (ECDAV,Communication University of China ,Beijing 100024,China)

      The article introduces the structure of Embedded DRM receiver and the working thread of DRM soft receiver,giving the transplant method of DRM soft receiver-“Dream”from Windows platform to an embedded platform-Windows CE.Finally,includes the basic method and experience in transplanting and debugging programs on embedded platform.

      DRM;embedded operating system;windows CE;platform builder;embedded visual C++;embedded DRM receiver

      TN911.7

      A

      1673-4793(2012)01-0045-05

      2010-04-02

      沈向輝(1982-),女(漢族),天津人,中國(guó)傳媒大學(xué)廣播電視數(shù)字化教育部工程研究中心助理研究員.E-mail:shen_xiang_hui10@sina.com

      (責(zé)任編輯

      :王 謙)

      猜你喜歡
      聲卡解碼接收機(jī)
      《解碼萬(wàn)噸站》
      解碼eUCP2.0
      NAD C368解碼/放大器一體機(jī)
      Quad(國(guó)都)Vena解碼/放大器一體機(jī)
      一種用于調(diào)幅接收機(jī)AGC的設(shè)計(jì)與實(shí)現(xiàn)
      一種面向ADS-B的RNSS/RDSS雙模接收機(jī)設(shè)計(jì)
      電子制作(2018年19期)2018-11-14 02:36:40
      數(shù)字接收機(jī)故障維修與維護(hù)
      電子制作(2016年1期)2016-11-07 08:42:41
      基于多接收機(jī)的圓周SAR欺騙干擾方法
      麻雀成鳳凰 本本聲卡變X—Fi
      用心聆聽,“高清”聲卡進(jìn)階技
      大竹县| 西华县| 灵台县| 旬邑县| 东方市| 大田县| 玛纳斯县| 普兰县| 潼南县| 蒙城县| 新绛县| 柳江县| 瑞金市| 昭通市| 讷河市| 望城县| 本溪| 长乐市| 卢湾区| 堆龙德庆县| 墨竹工卡县| 读书| 霍林郭勒市| 房山区| 墨玉县| 利川市| 皮山县| 米林县| 莱芜市| 闸北区| 江油市| 宁都县| 安远县| 桐城市| 乌拉特后旗| 班玛县| 乌审旗| 延长县| 花莲县| 南丰县| 明水县|