《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于Windows CE的嵌入式網絡收音機
基于Windows CE的嵌入式網絡收音機
電子設計工程
摘要: 本文基于Windows CE系統實現的嵌入式實體網絡收音機,內嵌WiFi技術,充分利用Windows CE系統資源實現訪問網絡電臺并獲取音頻信息,下載播放并實現網絡收音功能。它將電子信息技術融入傳統家電設備中,有利于數字化和網絡技術更廣泛地深入家庭生活。
Abstract:
Key words :

   摘要: 針對國內嵌入式實體網絡收音機的發展現狀,提出一種低成本、多功能網絡收音機實現方案,該方案以Samsung 公司的ARM920T內核芯片S3C2440A為硬件平臺,以Windows CE操作系統為核心,通過網絡連接訪問國內外網絡電臺并獲取音頻信息,下載播放并實現網絡收音功能。

  引言

  目前,國內收音機設備還停留在模擬收音技術階段,而國外網絡收音機均采用專用集成芯片接收方案,成本高昂且均以ODM(原始設計制造商)方式投入市場,技術封閉且界面單調,這無疑給信息家電和數字化家庭信息化系統的推廣增加了阻力。

  本設計將嵌入式技術應用于實體網絡收音機系統設計中,以Samsung公司ARM920T內核的S3C2440A為核心處理器,以Windows CE操作系統為軟件平臺,通過加載必要的驅動程序和應用程序構建一個完整的實體網絡收音機系統,通過網絡連接訪問國內外網絡電臺并獲取音頻信息,下載播放并實現網絡收音功能。系統可以通過有線連接或者無線連接(WiFi)接入網絡,分析網絡電臺傳輸協議:對于采用順序流式傳輸MMS協議的網絡電臺,利用Windows CE系統自帶的Windows Media Player控件進行下載和播放;而對于采用實時流式傳輸RTSP協議的網絡電臺,利用相應的運行庫實現網絡收音功能,并通過軟件音頻解碼后發送到音頻設備,實現解碼播放。

  1  系統硬件設計

  系統結構框圖如圖1所示。系統包括核心處理器S3C2440A、支持802.11b/g的USB無線網卡、快速以太網控制處理器DM9000網卡、I2S接口音頻編解碼芯片UDA1341聲卡、觸摸屏、存儲器、USB外設和電源管理模塊等。


圖1  系統結構框圖

  S3C2440A最高頻率可達400 MHz,其包含有豐富的外圍設備資源,支持SDRAM的外部存儲控制器、AC97編解碼器接口和TFT/STN液晶觸摸屏接口。這些特性為系統的硬件電路設計提供了很多便利,能夠在體積更小的單系統封裝內提供更強大的運算與存儲能力,同時減少產品使用的組件數量,讓制造商開發出新型與獨特功能設計的產品。

  2  軟件系統設計

  操作系統采用Windows CE5.0。它提供了一個開放的標準基礎平臺,具有多線程、多任務、完全搶占式的特點。其模塊化設計使嵌入式系統和應用開發者能夠方便地定制以適應不同的產品。

  Windows CE包含4個主要模塊:設備管理模塊、對象存儲模塊、GWES模塊和通信模塊。除此之外,它還包括一些可選的操作系統模塊,主要有以下幾種:安裝型設備驅動程序、多媒體(聲音)支持模塊、COM支持模塊和Windows CE外殼模塊。Windows CE模塊化設計使嵌入式系統和應用程序開發者能夠方便地定制以適應一系列產品的不同要求。

  Platform. Builder是微軟公司為開發基于Windows CE操作系統的可定制平臺而設計的集成開發平臺。它包括集成開發環境、平臺生成器、SDK導出器、調試器、遠程實用工具和仿真器等,可以幫助用戶方便地設計和調試基于Windows CE的平臺。

  2.1  操作系統的定制


圖2  Windows CE操作系統定制流程

  如圖2所示,操作系統的定制主要包括Bootloader(系統引導程序)的開發、OAL(設備商適配層)的開發、本地驅動程序的開發以及平臺文件配置等。

  Windows CE操作系統已為其中大部分硬件外設提供了可供參考的Bootloader程序、OAL程序和驅動源代碼,為系統設計開發提供了樣本程序,可有效提高開發的工作效率,減少重復性工作。

  針對本系統中采用的核心處理器S3C2440A,BSP(板級支持包)可由Samsung公司提供的SMDK2440BSP包克隆生成,因此源代碼配置文件只需要對系統新添加的模塊進行設置,完整編譯即可完成。

  本系統除了要加入一些系統級模塊(例如文件系統支持、觸摸屏支持等)之外,還要加入Windows Media Player模塊和VIA公司提供的無線網卡驅動模塊。修改注冊表中對應模塊的設置,即在platform.reg中添加對VIA公司無線網卡的支持:

  [HKEY_LOCAL_MACHINECommVNUWLC5]

  "DisplayName"="VNT VT6656 Wireless LAN"

  "Group"="NDIS"

  "ImagePath"="VNUWLC5.dll"

  添加對以太網控制器DM9000的支持:

  [HKEY_LOCAL_MACHINECommDM9CE]

  "DisplayName"="DM9000 ISA Fast Ethernet Adapter"

  "Group"="NDIS"

  "ImagePath"="dm9isa.dll"

  2.2  SDK的生成

  SDK(軟件開發工具包)是軟件開發商提供給二次開發人員的針對性開發工具。SDK提供核心連接支持,用來支持桌面操作系統與嵌入式系統之間的通信,開發人員通過它來使用開發工具與嵌入式操作系統進行應用程序的運行測試。在Platform. Builder集成開發環境里,針對定制的鏡像文件(nk.bin)輸出SDK。

  2.3  應用程序開發

  Windows CE應用程序使用Embedded Visual C++集成開發環境,并且需要具體平臺的SDK支持。本系統利用Platform. Builder定制生成的SDK直接進行開發,有效地提高了開發效率。目前,主要流媒體協議分為支持實時流式傳輸的RTSP協議和支持順序流式傳輸的MMS協議。如rtsp://real.cnr.cn:554/encoder/cnr2(中央人民廣播電臺2臺)的地址格式,這類網絡數字廣播采用RTSP協議來進行數據傳輸;如mms://windows_media_server/sample.asf的地址格式,這類網絡數字廣播采用MMS協議來進行數據傳輸。


圖3  系統設計框圖

  為了盡可能接收到所有網絡電臺,系統設計兼容兩種傳輸協議。針對系統的特殊性,適用于該方案的系統設計框圖如圖3所示。

  系統通過解析用戶輸入的網絡電臺網址,分辨出所訪問電臺支持的流媒體傳輸協議,針對兩類不同協議作出實時響應,接收數據并播放。

  2.3.1  實時流式傳輸RTSP協議

  實時流協議RTSP,用于建立和控制時間同步的連續媒體流,以及控制具有實時特征的數據發送。RTSP提供控制機制,能夠處理更高層的問題(例如會話建立和注冊),在體系結構上工作在RTP、TCP、UDP等協議的上層。正因為如此,RTSP可以很好地利用人們對現有工業標準的改善和提高,而不需要額外的優化工作。

  本系統采用開源軟件LIVE庫來實現RTP/RTCP協議,包括RTP/RTCP會話的建立、數據的接收。其主要任務是解析RTSP協議,通過DESCRIBE、SETUP、PLAY請求來獲得音頻數據格式,并將RTP包解包獲得MP3幀數據,寫入數據接收緩沖區。

  LIVE庫僅包含4個基本的類:BasicUsageEnvironment、UsageEnvironment、groupsock以及livemedia。BasicUsageEnvironment和UsageEnvironment負責任務的調度和環境的配置;groupsock負責socks套接字的創建以及相應信息(詢問信息和數據信息)的發送接收;Livemedia是整個工程的核心,負責rtsp、session(subsession)和rtcpinstance的運轉。

 

  在數據傳輸過程中,LIVE庫根據RTSP協議來建立會話描述。RTSP會話的建立分為以下幾個步驟:

  ① 建立使用環境對象,創建客戶端。

  ② 由RTSPClient對象向服務器發送OPTION消息并接收回應。

  ③ 發送DESCRIBE請求,并解析回應。

  ④ 根據SDPDescription在MediaSession中創建MediaSession對象。

  ⑤ 配置所有子會話對象。

  ⑥ 由RTSPClient對象向服務器發送SETUP消息并接收回應。

  ⑦ 由RTSPClient對象向服務器發送PLAY消息并接收回應。

  接收到的經過壓縮編碼的MP3音頻數據只有經過解碼后發送給音頻設備,才能實現解碼播放。為了縮短開發周期,本文使用LIBMAD庫來實現MP3解碼。LIBMAD庫是一個開源的高精度MPEG音頻解碼庫,支持MPEGLayer I、 MPEGLayer II和MPEGLayer III。LIBMAD提供24位的PCM輸出,完全是定點計算,非常適合應用在沒有浮點支持的平臺上。使用LIBMAD提供的一系列 API(應用程序編程接口),就可以非常簡單地實現 MP3 數據解碼。

  為了使系統接收到的音頻流數據能夠正常解碼并播放,系統采用雙線程(數據接收線程和音樂播放線程)、雙緩沖(數據接收緩沖和音樂播放緩沖)操作。兩個線程并發運行,且音樂播放線程運行速度較慢。如果網絡速度較快,數據接收線程的接收緩沖區已滿,而當前音樂播放線程正在播放音樂,那么數據接收線程必須停止接收數據。如果不讓數據接收線程進入等待狀態,它會一直輪詢音樂播放線程觀察其是否需要數據。簡單的輪詢會浪費 CPU 資源,在這種情況下,有必要讓數據接收線程進入等待狀態。本系統使用信號量機制來動態控制線程的運行,有效地提高程序執行效率。

  2.3.2  順序流式傳輸MMS協議

  MMS(Microsoft Media Server,微軟媒體服務器)協議由微軟制定,用來訪問以及用于流式接收Windows Media服務器中的流文件,也是連接Windows Media單播服務的默認方法。在Windows Media Player中輸入一個URL以便連接播放內容時要使用這個協議,當用MMS協議連接到發布點后,服務器會使用“協議翻轉”來獲得最佳的連接。

  Windows CE操作系統自帶Windows Media Player組件,在操作系統定制時也特別加入了該組件。Windows Media Player 具有模塊化體系結構,用戶界面與音頻和視頻內容的播放功能相互獨立,因此在本設計中只使用了其播放功能,并且將其外觀功能隱藏,通過應用程序建立自己的應用界面。在應用程序中,只需要新建Windows Media Player ActiveX變量,設置其屬性并調用Open方法即可實現連接和播放。

  2.4  界面設計

  人機界面設計首先要確立用戶類型。嵌入式實體網絡收音機定位于信息家電市場,因此界面設計要求操作簡單、信息量最少以減小用戶記憶負擔,要有恢復出錯現場的能力,在系統內部處理工作要有提示,盡量把主動權讓給用戶。

  工程利用Visual Studio 2005平臺進行開發,選擇基于對話框結構模式設計,并且要求Windows Sockets支持和ActiveX控件支持。根據系統分析,需要5個按鈕控件(Button Control)、1個進度條控件(Slider Control)、1個樹目錄控件(Tree Control)和1個圖表控件(Picture Control)。系統主界面如圖4所示。


 圖4  系統主界面

  完成控件的拖放后,拖動各個控件調整其布局,并對其屬性和功能進行完善,實現網絡收音機的基本功能。

  結語

  本文基于Windows CE系統實現的嵌入式實體網絡收音機,內嵌WiFi技術,充分利用Windows CE系統資源實現訪問網絡電臺并獲取音頻信息,下載播放并實現網絡收音功能。它將電子信息技術融入傳統家電設備中,有利于數字化和網絡技術更廣泛地深入家庭生活。


 

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲先锋成人| 欧美伊人久久久久久久久影院| 一本色道久久88综合亚洲精品ⅰ| 国内综合精品午夜久久资源| 国产麻豆午夜三级精品| 国产精品av免费在线观看| 欧美电影免费观看大全| 久久最新视频| 久久人人爽人人爽爽久久| 欧美在线视频在线播放完整版免费观看| 在线视频你懂得一区| 日韩亚洲欧美在线观看| 亚洲精品国产精品久久清纯直播| 亚洲第一黄网| 久久精品99久久香蕉国产色戒| 小黄鸭精品aⅴ导航网站入口| 亚洲欧美卡通另类91av | 一本久久a久久免费精品不卡| 91久久精品一区| 亚洲国产小视频| 最新日韩av| 亚洲免费大片| 一本色道综合亚洲| 亚洲婷婷综合色高清在线| 亚洲午夜一区| 午夜精品亚洲| 久久精品女人天堂| 亚洲三级国产| 在线综合亚洲欧美在线视频| 亚洲在线免费视频| 亚洲视频 欧洲视频| 国产综合色产在线精品| 伊人春色精品| 亚洲欧洲一区二区三区久久| 99国产精品久久久久老师| 亚洲午夜精品久久久久久app| 亚洲一区视频| 欧美在线在线| 亚洲精品一区二区在线| 在线综合+亚洲+欧美中文字幕| 亚洲欧美激情一区二区| 欧美在线一二三区| 久久在线免费观看视频| 欧美日本国产在线| 国产精品美女久久久久av超清| 国产模特精品视频久久久久| 伊人蜜桃色噜噜激情综合| 亚洲人成高清| 亚洲线精品一区二区三区八戒| 欧美一区二区三区四区在线 | 在线精品福利| 亚洲人体大胆视频| 亚洲一区中文字幕在线观看| 久久成人综合视频| av成人福利| 欧美在线首页| 欧美电影打屁股sp| 国产精品久久久久久久久久直播| 国产亚洲电影| 亚洲精品美女91| 性色av一区二区三区红粉影视| 亚洲激情电影在线| 亚洲一区图片| 免费看成人av| 国产精品久久久久三级| 在线不卡中文字幕| 亚洲四色影视在线观看| 亚洲国产高潮在线观看| 亚洲一二三区在线观看| 麻豆9191精品国产| 国产精品大片| 亚洲二区在线视频| 午夜精品福利电影| 在线视频精品| 美女精品网站| 国产精品一区毛片| 亚洲精品黄网在线观看| 欧美在线免费| 亚洲影视在线播放| 欧美顶级大胆免费视频| 亚洲人午夜精品免费| 狠狠狠色丁香婷婷综合激情| 亚洲美女黄网| 久久国产色av| 亚洲欧美日韩直播| 欧美久久久久久久| 狠狠综合久久| 亚洲自拍偷拍一区| 一区二区高清视频在线观看| 老司机久久99久久精品播放免费| 国产精品女人久久久久久| 亚洲精品免费电影| 最新国产精品拍自在线播放| 欧美在线免费一级片| 欧美日韩在线不卡| 亚洲人成亚洲人成在线观看图片| 亚洲高清久久| 久久精品电影| 国产精品视屏| 99国产精品| 日韩视频免费观看| 玖玖综合伊人| 国产一二三精品| 亚洲尤物精选| 亚洲免费网站| 欧美日韩另类字幕中文| 亚洲国产精品一区在线观看不卡| 午夜精品视频在线观看| 午夜精品美女久久久久av福利| 欧美天天视频| 亚洲免费观看高清完整版在线观看熊 | 亚洲精选在线观看| 亚洲精品日本| 裸体一区二区三区| 伊人蜜桃色噜噜激情综合| 久久精品视频在线| 久久久久久久久一区二区| 国产欧美丝祙| 午夜一区二区三区在线观看| 欧美在线观看天堂一区二区三区| 国产精品视频一| 亚洲一本大道在线| 亚洲欧美日韩精品一区二区| 国产精品成人一区| 一区二区三区高清在线| 国产伦精品一区二区三区视频孕妇| 99综合在线| 久久精品麻豆| 国产在线不卡精品| 久久激情视频免费观看| 久久这里只有精品视频首页| 国模精品一区二区三区| 久久精品国产精品亚洲综合| 久久全国免费视频| 伊人男人综合视频网| 亚洲精品影视在线观看| 欧美日韩国产在线播放网站| 亚洲精品视频中文字幕| 亚洲天堂免费观看| 国产精品羞羞答答| 香蕉成人啪国产精品视频综合网| 久久av最新网址| 国产一区二区毛片| 亚洲国产精品第一区二区 | 久久精品国产亚洲a| 狠狠操狠狠色综合网| 欧美电影电视剧在线观看| 欧美一区二区网站| 国产一区91精品张津瑜| 欧美一区国产二区| 免费观看成人鲁鲁鲁鲁鲁视频| 亚洲春色另类小说| av不卡在线| 国产精品成人一区二区三区吃奶| 亚洲一区二区av电影| 久久久91精品国产| 亚洲国产精品福利| 亚洲一区二区在线看| 国产精品专区第二| 亚洲二区免费| 欧美日韩mv| 亚洲欧美精品| 欧美成人在线免费观看| 中日韩在线视频| 久久婷婷蜜乳一本欲蜜臀| 亚洲美女色禁图| 欧美中文字幕在线观看| 在线视频国内自拍亚洲视频| 亚洲婷婷免费| 国内精品国产成人| 日韩视频免费大全中文字幕| 国产精品美女久久久久久2018 | 国产精品视频观看| 亚洲第一二三四五区| 欧美日韩一区二区在线播放| 亚洲午夜一区二区| 麻豆成人在线| 亚洲一区黄色| 蜜臀久久99精品久久久久久9| 一本久久a久久精品亚洲| 久久色中文字幕| 99精品视频一区二区三区| 久久精品中文字幕一区二区三区 | 亚洲人午夜精品免费| 欧美专区第一页| 亚洲精品中文字| 久久久久国产精品麻豆ai换脸| 亚洲毛片在线看| 久久久精品久久久久| 一本一本久久a久久精品综合麻豆| 久久久五月婷婷| 一区二区三区黄色| 免费一级欧美片在线播放| 亚洲网站在线观看| 尹人成人综合网| 日韩视频在线免费观看| 久久久蜜臀国产一区二区| 一本色道**综合亚洲精品蜜桃冫 | 国产午夜精品美女毛片视频| 一本色道88久久加勒比精品|