基于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的外部存储控制器、AC97编解码器接口和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台)的地址格式,这类网络数
- 如何使WINCE启动时自动运行应用程序(04-11)
- 基于WinCE操作系统的通用USB数控键盘设计(08-05)
- 基于WinCE的ARM视频监控系统(11-14)
- WinCE系统下BootLoader的开发(04-10)
- WinCE下光电编码器的驱动程序设计(04-12)
- WindowsCE.Net下CAN卡的驱动程序设计(04-12)