单片机信息网:深圳市今科电子有限公司
网站地图 RSS订阅
高级搜索 收藏本站
会员中心 欢迎投稿
首页 | 业界动态 | 解决方案 | 技术文献 | 下载中心 | 单片机学习 | 单片机原理 | 单片机编程 | 单片机设计 | 单片机开发 | 技术专题 | 单片机论坛 |单片机博客| 联系我们
单片机新闻 | 单片机学习 | 单片机编程 | 单片机设计 | 单片机开发 | 单片机原理 | 单片机解密 | 芯片解密 | IC解密 | 单片机方案 | 51单片机 | AVR单片机 | PIC单片机
单片机程序实例大全 | 潜入式系统 | PCB设计 | 单片机资料下载 | 工具/软件下载 | 技术经验分享 | 单片机技术人生 | IC资料下载 | 数字电路 | 模拟电路 | 单片机空间
当前位置:主页>嵌入式系统>文章内容
基于ARM的嵌入式网络收音机的设计
来源:单片机信息网 作者: 发布时间:2008-01-25 阅读次数: 【大 中 小】【收藏本文】 【打印

基于ARM的嵌入式网络收音机的设计


收音机作为接收广播的工具,经过漫长的发展过程,由单波段发展到多波段,由电子管,晶体管发展到集成电路,由机械调谐发展到数字调谐功能等,其技术 和品质都有了长足的进步。如今,在收音机这个家族中新的成员也在不断加入,如卫星广播接收机等。当社会进入网络时代后,更是出现了网络收音机这种跨越全球 的信息接收设备。但是,目前这种网络收音机大多是通过基于PC机上的软件开发来实现的其功能的,也就是说这种网络收音机不能脱离电脑这种相对比较大的和比 较昂贵的设备。

  为了克服PC机形式的网络收音机的缺点,本文研究了一种基于ARM的嵌入式技术的网络收音机的设计方案。该方案以ARM处理器及其外围模块作为 硬件平台,以嵌入式Linux作为操作系统,以Mplayer作为网络播放软件,再配合设计的用户应用程序,共同实现了嵌入式网络收音机的全部功能。这种 设计方法在网络收音机的设计史上是一个创新。同时,随着网络技术的高速发展,该设计将具有极好的市场应用前景。

  1系统的结构及工作原理

  系统的层次结构如图1所示。系统以S3C2410及其外围电路为硬件平台,以嵌入式Linux和设备驱动程序作为系统的软件平台,为上层Mplayer播放器和用户应用程序提供用户接口支持[1]。在这三层结构的支持下,共同来实现嵌入式网络收音机的全部功能。

  

系统层次结构图

  图1 系统层次结构图

  系统的硬件结构框图如图2所示。本系统选用的ARM处理器是Sumsing(三星)公司的一款ARM9系列的芯片,型号为S3C2410。网卡 芯片采用的是Cirrus Logic公司的一颗网络处理芯片CS8900。FLASH芯片采用的是 K9F5608,用来存储启动引导程序U-boot、内核及文件系统,SDRAM芯片采用的是HY57V281620,作为该系统的内存。16*4的字符 型液晶显示模块用来显示网络电台、音频文件名等相关信息。音频D/A转换芯片选用的是飞利浦公司的UDA1341芯片,该芯片具有IIS接口,可以方便的 与S3C2410连接。

  

系统硬件结构框图

  图2 系统硬件结构框图

  系统在Linux提供的TCP/IP协议的支持下,通过应用程序和Mplayer控制,经过网卡连接到internet上指定的网络电台服务 器,下载网络电台列表。系统支持在按键的控制下的网络电台选择和LCD上显示电台信息等功能。Mplayer解析出选中的电台的IP地址后,再连接到要收 听的电台的网站,系统便可以接收并解析出该网站发出的流媒体数据。系统将接收到的流媒体数据保存到SDRAM中。之后,经过Mplayer的解码,送到音 频D/A转换芯片,即可收听到该网络电台播放的声音等信息。

  2 系统的硬件设计

  2.1 S3C2410

  本系统的硬件核心平台采用的是Samsung 公司的处理器S3C2410。该处理器内部集成了ARM 公司ARM920T 处理器核的32 位微控制器,资源丰富,带独立的16KB 的指令Cache 和16KB 数据Cache、MMU虚拟内存管理单、LCD 控制器、RAM控制器、NAND 闪存控制器、3 路UART、4路DMA、4 路带PWM的Timer、并行I/O 口、8 路10 位ADC、Touch Screen 接口、I2C 接口、I2S 接口、2 个USB接口控制器、2 路SPI,主频最高可达203MHz[2]。其内部结构如图3所示。

{{分页}}

  2.2 网络接口

  系统的网卡芯片采用Cirrus Logic公司的一种局域网处理芯片CS8900,该芯片内部集成了RAM、10BASE-T收发滤波器,并且提供8位和16位两种接口。其片选信号连接 到S3C2410的nGCS1,因此网卡的地址空间映射到0X08000000~0X0FFFFFFF。在Linux内核中,一般都含有CS8900的驱 动程序,使用时只需修改驱动与处理器的地址映射关系,并在配置内核的Device Driver选项中,选中CS8900项。

  2.3 SDRAM存储器

  本设计的SDRAM采用的是HY57V281620芯片。该芯片是一个数据宽度为16BIT,容量为16M字节的SDRAM。HY57V281620与S3C2410的连接图如图4所示。

  HY57V281620的ncs引脚接到处理器的nGCS6。由于在处理器的存储空间中,字节是存储容量的唯一单位。而HY57V281620 的数据宽度为16位,它的每一个存储单元都包含2个字节。因此HY57V281620的A0引脚接到了S3C2410处理器的地址线ADDR01上面。 HY57V281620的容量为16MB,因此它需要ADDR00~ADDR23共24跟地址线来寻址,所以,BA0~BA1引脚应该接到 ADDR22~ADDR23地址线上。

  3 系统的的软件设计

  3.1 嵌入式Linux的移植

  嵌入式Linux内核的版本很多,一般情况下版本越高,系统越稳定,驱动更完善,本系统选择了2.6.18的Linux内核。其实对于2.6以 后版本的Linux内核,对S3C2410的支持都有了很好的支持,所以移植过程都比较简单[3]。Linux2.6.18移植到S3C2410的基本步 骤如下:

  (1)下载Linux2.6.18内核,并解压到相应目录。

  (2)修改内核顶层目录下的Makefile文件,指明交叉编译器。进入Linux-2.6.18内核目录,输入命令vi Makefile,找到ARCH和CROSS_COMPILE两项,将其修改为ARCH = arm,CROSS_COMPILE = arm-linux-。

  (3)设置PATH环境变量,使其可以找到交叉编译工具。输入su root,进入root,在输入vi/etc/bashrc,在结尾处加入以下行:export PATH="/usr/local/arm/3".4.4/bin:$PATH,然后重启终端或重新登陆即可。

  (4) 设置Flash分区。首先要在arch/arm/mach-s3c2410/devs.c文件中添加分区信息,其次在arch/arm/mach- s3c2410/mach-smdk2410.c文件的smdk2410_devices[]的成员中添加&s3c_device_nand。这 样Linux内核启动时,就会对Flash分区的设置初始化。

  (5)禁止Flash ECC校验。修改drivers/mtd/nand/s3c2410.c 文件,找到s3c2410_nand_init_chip()函数,在该函数体最后加上一条语句:chip->eccmode = NAND_ECC_NONE。

  (6)配置内核。通过make menuconfig命令配置内核。

  (7)编译内核,make zImage命令,得到Linux内核的映像文件zImage。

  (8)制作根文件系统。

  3.2 Mplayer移植

  Mplayer是Linux下的一个多媒体网络播放器。它的主要功能是对接收到的各种格式的流媒体数据进行解码,同时也完成对接收的网络电台的 IP地址进行解析的任务。Mplayer支持mp3、ogg 和wma等多种格式的流媒体数据进行解码,是一个功能十分强大的开源应用软件。Mplayer的移植步骤如下:

  (1)下载源代码MPlayer-current.tar.bz2,并解压。

  (2)为了让mplayer支持在线播放,从而能够播放网络电台,还必须下载安装网络协议包(主要指RTSP、MMS等协议)。可从www.live555.com上下载live555协议包,解压后配置并编译。

{{分页}}

  (3)配置mplayer的命令格式如下:

  ./configure --cc=arm-linux-gcc --target=arm-armv4-linux --enable-static --disable-win32 --host-cc=gcc --disable-dvdread --enable-fbdev --disable-mencoder --disable-mp3lib --enable-mad --enable-libavcodec --enable-live --with-livedir=/live555的目录/ --2>&1 | tee logfile。

  其中,--host-cc=gcc是用来编译一些需要在host上执行的中间文件的,如codec-cfg。--cc=arm-linux- gcc 是用来指定交叉编译工具。关于 --target=arm-armv4l-linux这个参数要注意的是它被分为三部分,第一部分的arm是指arch,这里设定为arm;第二部分的 armv4l是指具体的版本;第三部分是系统平台。--enable-static是设定静态连接。--2>&1 | tee logfile意思是将执行的情况在输出到屏幕的同时记录到logfile文件中,在控制台下编译比较有用。

  (4)输入make命令开始编译,编译完成后在顶层目录生成mplayer可执行文件。

  3.3软件主流程图

  系统主流程图如图5所示。系统上电后,bootloader(U-boot)启动,完成硬件设备的初始化, 并引导系统内核启动。系统启动执行初始化任务后,首先配置网络连接,通过运行DHCP Clieant向DHCP Server申请获取本系统IP地址。然后系统自动访问默认的电台服务器,该服务器上有最近更新的世界各地的网络电台的URL地址,系统下载该列表,并更 新上次保存的列表。然后系统判断有无按键按下,若有按键按下,系统根据按键选择相应网络电台,若在一定时间段内没有按键按下,系统自动连接电台列表的第一 个电台地址,并开始播放该网络电台。同时,LCD将显示电台的有关信息和系统信息。在播放过程中,同样可以根据按键来中断、选择网络电台。

  

系统主流程图

  图5 系统主流程图

  4 结束语

  本设计基于ARM的嵌入式技术,通过软硬件等三层结构,实现了一个嵌入式网络收音机系统。该系统克服了PC机形式的网络收音机的诸多缺点,是一个极具创新思维的设计。随着网络技术和嵌入式技术的高速发展,该设计具有很好的市场应用前景和科研价值。

  本文作者创新点:

  1、首次提出了用嵌入式技术设计网络收音机的系统设计方案,极具创新特点。

  2、实现了Mplayer软件在Linux系统平台下向ARM9的移置。

  参考文献

  [1] 周立功等.ARM 微控制器基础与实践[M].北京航空航天大学出版社,2003.7.

  [2]李侃,廖启征. 基于s3c2410平台与嵌入式Linux的图像采集应用[J].微计算机信息, 2006,3-2:125-127.

  [3] 孙琼. 嵌入式Linux应用程序开发详解[M]. 人民邮电出版时, 2006.7.



上一篇:使用虚拟机嵌入式Linux开发前的必要准备   下一篇:多功能绘图解决方案—针对高画质行动运算环境打造全新一代AMD笔记本电脑平台

标签:ARM 嵌入式 网络收音机 设计 点此搜索本站更多相关信息...搜索更多相关内容..

您可能还感兴趣的内容: 深圳今科电子单片机解密、IC解密服务 今科电子单解机、IC解密业务是怎样的流程?

此页的访问者还关注了下面这些相关资讯


·使用虚拟机嵌入式Linux开发前的必要准备
·嵌入式DSP上的视频编解码与相应名词解释
·高速嵌入式视频系统中SDRAM时序控制分析
·构建RTW下的嵌入式系统开发环境
·基于mClinux的嵌入式USB接口设计
·模拟器开发以及嵌入式系统内核调试
·SldView嵌入式Linux集成开发环境
·嵌入式操作系统的调试
·32位ARM嵌入式处理器的调试技术
·Linux 2.6内核嵌入式系统应用
·嵌入式LINUX系统的静/动态集成调试模式
·嵌入式Linux的GDB调试环境建立
·嵌入式Linux系统的GDB远程调试的实现
·基于AVR单片机的嵌入式“瘦服务器”系统设计思想
·凌华科技推出嵌入式无风扇计算机GEME-12000
·45nm Penryn转战嵌入式领域
·文鼎科技与Mentor Graphics携手拓展行动装置嵌入式系
·微软投7500万美元研发资金 盯准嵌入式操作系统
·基于ARM高速闪存MCU应对广泛嵌入式需求
·编写适合自己需要的printf()函数
·详细定义嵌入式操作系统概念
·利用图形化平台开发多核嵌入式系统
·详细定义嵌入式操作系统概念
·嵌入式实时Linux的技术研究
·嵌入式系统设计中的存储碎片收集策略
·X86嵌入式处理器开发
·支持网络传感器的嵌入式操作系统设计
·用串行RapidIO交换处理高速电路板设计的信号完整性
·基于WinCE的ARM视频监控系统
·MOXA嵌入式计算机在变电站综合自动化中的解决方案
·两种嵌入式操作系统的比较
·浅析嵌入式程序设计中的优化问题
·基于WinCE的ARM视频监控系统
·嵌入式微型主板也疯狂
·All-In-One 嵌入式系统平台概述
·在SoC器件中如何平衡嵌入式软件的关键作用?
·如何调试复杂的实时嵌入式系统?
·嵌入式软件测试
·嵌入式系统软件的质量保证
·嵌入式系统开发工具发展


版权声明:
( 更多版权详述 | 隐私政策 )

1、凡本网注明“来源:单片机信息网”或“单片机论坛”的文字、图片和音视频作品,版权均属深圳市今科电子有限公司所有,任何媒体、网站或个人未经本网书面授权不得转载、链接、转贴或以其他方式使用;已经本网书面授权的,在使用时必须注明“来源:单片机信息网”或“单片机论坛””。
2、本网未注明“来源:单片机信息网”或“单片机论坛”的作品均为转载稿,本网转载稿件只为传递更多信息,并不意味着认同其观点或真实性。如其他媒体、网站或个人转载使用,必须保留本网注明的“稿件来源”,并自负法律责任。
3、对于单片机信息网通过单片机论坛发布的作品,本网受著作权人委托禁止任何媒体、网站或个人在未经书面授权的情况下转载使用。
4、为维护自身权益、尊重作者版权,单片机信息网特委托深圳市律师协会为本网站法律顾问。对于违反本声明的,单片机信息网律师将依法追究其责任;对于刊载作品涉及版权等问题的,请作者在两周内与网站管理或张朝阳律师联系。
责任编辑:今科电子
双击复制本文网址,发送给您QQ/MSN上的朋友:
[收藏] [推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]
用户名: 新注册) 密码: 匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。

·用户发表意见仅代表其个人意见,并且承担一切因发表内容引起的纠纷和责任
·本站管理人员有权在不通知用户的情况下删除不符合规定的评论信息或留做证据
·请客观的评价您所看到的资讯,提倡就事论事,杜绝漫骂和人身攻击等不文明行为
§最新评论
今科热门解密系列
·PIC芯片DSP系列单片机解密PIC芯
·Freescale单片机解密飞思卡尔芯
·飞思卡尔(Freescale)单片机解密/
·pic18f系列单片机解密
·三星(Samsung)系列单片机极速解
·飞林Feeling芯片系列MCU单片机/I
·MICROCHIP微芯(PIC)系列单片机/M
·单片机破解的常用方法及应对策略
·IC卡预付费电度表的安全及防范技
·单片机解密 单片机解密方法 单片
·PHILIPS系列单片机解密
·独家STC单片机解密
·我对红外遥控信号的解码思路
·51系列单片机解密(数分钟搞定)
·芯片解密业务流程介绍
·单片机解密后提供什么文件?
·单片机解密后为何要提供厂家的专
·芯片是如何被解密的?
·SST系列MCU单片机/IC/芯片解密
·INTEL系列单片机/IC/芯片解密
·ISSI系列MCU单片机IC破解芯片解
·ZILOG系列MCU单片机IC破解芯片解
·MOTOROLA系列MCU单片机IC破解芯
·LG(HYUNDAI系列MCU单片机/IC破
·MCPLD/EPLD系列MCU单片机IC破解
·新茂系列MCU单片机IC破解芯片解
·PHILIPS系列MCU单片机IC破解芯片
·MXIC系列MCU单片机IC破解芯片解
·(ATMEL)51系列MCU单片机IC破解芯
·华邦芯片系列MCU单片机/IC/芯片
·(MICROCHIP)微芯(PIC)系列MCU单
·CYPRESS系列MCU单片机IC破解芯芯
·Sinowealih系列MCU单片机IC破解
·Tenx系列MCU单片机IC破解芯片解
·松翰(SONIX)系列MCU单片机IC破解
·义隆(EMC)系列MCU单片机IC破解
·合泰(HOLTEK)系列MCU单片机IC破
·麦肯(MDT)系列mcu单片机IC破解芯
·今科单片机解密服务
·单片机程序开发
热点技术文章文献
·单片机课程设计(直流风扇电机转
·单片机课程设计(报警器)
·单片机课程设计心得体会
·单片机课程设计(数字温度计设计)
·单片机课程设计(秒表的设计)
·步进电机单片机控制系统设计
·单片机控制GSM手机的技术及应用
·单片机课程设计(秒表的设计程序)
·步进电机运行系统控制设计
·基于单片机的真空冷冻干燥试验仪
·基于单片机的LED汉字显示屏设计
·基于单片机通用引脚的软件UART设
·基于看门狗芯片MAX708的数据保护
·HT46R22单片机在电磁炉功率控制
·基于nRF905的无线数据传输设备设
·基于单片机控制的新型智能电梯语
·单片机硬件系统设计原则
·一个单片机串行数据采集/传输模
·数字音频射频收发芯片nRF24Z1原
·基于单片机的具有通讯口的智能温
·8051单片机中DPTR的扩展设计
·汉王手写芯片的触摸屏控制器应用
·嵌入式系统的技术特点及前景展望
·加密存储芯片AT88SC1616的原理和
·编写适合自己需要的printf()函数
·用单片机设计A/D、D/A转换器
·基于PIC无线发射器件的环形天线
·基于51单片机的车用数字仪表设计
·单片机实现对CF卡的读写
·基于MPC8260和FPGA的DMA接口设计
今科推荐产品
·51系列单片机解密(数分钟搞定)
·今科单片机解密服务
·单片机程序开发
·小家电(厨卫电器)系列产品
·灯饰控制系列产品
·四键遥控器系列产品
·红外遥控器系列产品
相关技术文献资讯
·使用虚拟机嵌入式Linux开发前的
·嵌入式DSP上的视频编解码与相应
·高速嵌入式视频系统中SDRAM时序
·构建RTW下的嵌入式系统开发环境
·基于mClinux的嵌入式USB接口设计
·模拟器开发以及嵌入式系统内核调
·SldView嵌入式Linux集成开发环境
·嵌入式操作系统的调试
·32位ARM嵌入式处理器的调试技术
·Linux 2.6内核嵌入式系统应用
·嵌入式LINUX系统的静/动态集成调
·嵌入式Linux的GDB调试环境建立
·嵌入式Linux系统的GDB远程调试的
·基于AVR单片机的嵌入式“瘦服务
·凌华科技推出嵌入式无风扇计算机
·45nm Penryn转战嵌入式领域
·文鼎科技与Mentor Graphics携手
·微软投7500万美元研发资金 盯准
·基于ARM高速闪存MCU应对广泛嵌入
·编写适合自己需要的printf()函数
·详细定义嵌入式操作系统概念
·利用图形化平台开发多核嵌入式系
·详细定义嵌入式操作系统概念
·嵌入式实时Linux的技术研究
·嵌入式系统设计中的存储碎片收集
论坛最新讨论资讯
芯片解密常见问题
· 什么是单片机?
· 单片机要如何加密?
· 单片机芯片是如何被解密的?
· 单片机解密后提供什么文件?
· 芯片解密为何用专用格式文档?
· 芯片解密是怎样的业务流程?
首页 - 隐私政策 - 版权申明 - 网站地图 - 产品中心 - IC解密中心 - 企业文化 - 代理加盟 - 公司简介 - 人才招聘 - 常见问题 - 我要投稿 - 联系我们 - 返回顶部
[单片机信息网] .© 2006-2009 版权所有,严禁非法复制与建立镜像.运营商:[今科电子] 公司地址:中国.深圳/上海 E-Mail:renbangent#126.com sales#techmcu.com(换#为@)
深圳公司 电话热线:+86 0755-82964200 82964201 82964700 传真:0755-82964432 支持手机:13684994966 业务QQ: 501995683 联系人:王小姐 张小姐(工程师) 罗先生(高工)
上海公司 电话热线:+86 021-63062380 15001885509   传真:+86 021-63062380-6   技术支持:15001885509 业务QQ:xxxxxxxx   联系人:郑小姐(业务) 陆工(工程师)
Optimized for 1024x768 to Firefox,Opera and MS-IE6 or higher,Template designed by: Berlin Lee.Web Support[FuAn Network] ICP Record No.:07053756 Webmaster