ARM Cortex-M3的嵌入式网络播放系统设计应用

arm cortex-m3的嵌入式网络播放系统设计应用
随着网络应用的普及,为普通嵌入式系统增加网络功能,能更好满足消费者对网络资源的需求。这里采用基于arm cortex-m3的微控制器lm3s1138实现一种具备网络功能的播放终端系统,该系统不仅具有良好的播放效果,还可从网络音乐服务器上点播音乐并实时播放。
1 网络播放系统的设计方案
该网络播放系统由服务器、用户终端和音响设备组成。其中,服务器通过以太网提供音乐资源,用户终端通过网络下载音频数据再实现音频解码,音响设备实现音乐播放。图1给出该系统设计框图。
该系统设计采用基于arm cortex-m3的控制器lm3sll38作为主控制器。该控制器改进了代码密度,减少中断延时,实现thumb-2指令集,并具有更低功耗,适用于嵌入式微处理器;网络模块采用以太网控制器enc602j28;音频编解码器采用vsl003,该器件拥有自主产权的dsp处理器核,具有高性能、低功耗等特性;并采用usb总线接口器件ch375扩展存储模块。支持海量存储。
将嵌入式实时操作系统μc/os-ii移植到主处理器上,实现多任务的调度管理。系统工作时,通过操作播放器上的配置按钮,设置服务器和用户终端的相关网络配置,点击播放器中的连接按钮,发送连接服务器请求,服务器收到用户终端的连接请求,验证终端帐号正确后开始网络连接,向用户传送点播的资源列表,用户终端在播放器界面显示列表,此时,用户可以选择点播的歌曲,然后将音乐文件下载到存储设备中,下载完毕后,服务器关闭网络连接,播放器就可播放已下载歌曲。
2 系统硬件模块设计
2.1 以太网接口
enc28j60是独立的以太网控制器,采用业界标准的spi串行接口,具有10 mb/s spi接口,符合ieee802.3协议,内置10 mb/s以太网物理层器件(phy)及介质访问控制器(mac)。另外,它还具有可编程8 kb双端口sram缓冲器,此缓冲存储器具有灵活可靠的数据管理机制,以高效方式进行信息包的存储、检索和修改,以减轻主控器件的内存负荷。
图2为网络接口硬件连接示意图。enc28j60通过spi总线实现与lm3sll38的数据传输,cs为片选信号,sclk为时钟信号,mosi/miso为数据传输串口。此外,enc28j60还与网络变压器hr901l70a相连,引出刚45接口。
2.2音频接口
vsl003音频编解码器为vsl0xx系列第3代产品,包括mp3/wma/midi解码和adpcm编码2个单器件。其内置有高性能、低功耗的dsp处理核(vsdsp),工作内存,可供用户程序使用的5.5 kb ram,串行spi总线接口,高质量的采样频率可调的过采样d/a转换器以及16位的过采样a/d转换器。图3为音频编解码器模块硬件连接示意图,vsl003采用spi总线与lm3sll38实现通信。其中,sclk为输入时钟,cs为片选信号,mosi/miso为数据串口,demand为命令有效信号,vsl003外接音频输出设备。
2.3 usb控制接口
ch375是一款支持usb-host主机方式和usb-de-vice/slave从设备方式的器件,主机端点输入和输出缓冲区各64字节,支持常用的12 mb/s全速usb设备,支持usb设备的控制传输、批量传输、中断传输。内置固件处理海量存储设备的专用通讯协议,支持bulk-only传输协议和scsi,ufi,rbc或等效命令集的usb存储设备。
图4为usb控制接口模块硬件连接示意图,ch375通过uart串口与lm3s1138传输数据,*****为中断信号,txd/rxd为数据传输串口,ch375连接usb存储设备。
3 系统软件设计
μc/os-ii是专门为嵌入式应用设计的实时操作系统内核,其具有以下优点:源代码公开,代码结构清晰,注释详尽,组织有条理,具有良好的可扩展性和可移植性,最多可以管理60个任务。该系统移植的μc/os-ii由用户层、中间件层、μc/os-ii源码层、μc/os-ii移植层和驱动库组成。用户层存放用户代码及设置,其中main.c是用户编写任务处,main.h定义堆栈大小及优先级;中间件层middleware存放uart、spi等串口通信中间件和tcp/ip协议栈lwip;μc/os-ii源码层source存放μc/os-ii的源代码;μc/os-ii移植层port存放μc/os-ⅱ基于lm3s的移植代码,包括os_cpu_c.c,os_cpu_a.a,os_cpu.c等3个必要文件;驱动库层是直接面向硬件设备层,它是硬件设备和应用程序之间的枢纽,直接与系统底层的硬件设备打交道,按照硬件设备的具体工作方式读写设备寄存器。将寄存器的数据与应用软件交互,enc28j60、vsl003和ch375的驱动函数都在该层。
3.1网络驱动程序
本系统采用enc28j60以太网控制器,需编写网络设备驱动程序,实现低层网络接口及硬件函数驱动。该驱动程序设计主要包含网卡的初始化和数据的发送接收。
网卡初始化的驱动程序包括定义发送缓冲区大小、发送缓冲区数、enc28j60的片选信号、enc28j60的复位引脚以及网卡自检。具体程序代码如下:
网卡数据传输的驱动程序包括申请ip地址,建立与服务器的连接,以及数据的接收和发送等,图5为其程序流程。
3.2文件系统
文件系统是一种以结构化格式存储和信息检索的实现方法,可使用户方便快捷的管理存储数据。文件系统一般包括fat32/16,ntfs,ext2/3,nfs等,本设计采用fatl6,可支持2 gb的最大分区,用于管理u盘中的音频文件,该文件系统的实现主要针对usb接口器件ch375进行驱动开发。
在ch375驱动设计中,先实现fat32/16文件系统层,再实现文件级api应用层。文件系统层采用ch375开发商提供的u盘文件级子程序库来实现,ch375的u盘文件级子程序库具有以下特性;支持常用的fat16和fat32文件系统,磁盘容量可达100 gb以上,支持多级子目录。支持8.3格式的大写字母和中文文件名,支持小写字母或长文件名,支持文件打开、删除、读写以及搜索等。文件系统移植好后,再进行api应用层驱动设计。应用层驱动包括ch375引脚配置、文件读写缓冲区配置、ch375读写程序的设计。在读写程序的设计中,要注意对ch375的延时操作,满足ch375的时序要求。
3.3音频驱动程序
音频驱动的设计主要是针对vsl003的初始化设置和实现音频数据流的传输,并对应用层提供api接口,这里完成了音频播放功能程序的设计。
在该程序设计中,首先对lmll38和vsl003控制接口的(miso、mosi、sck、cs、demand)引脚进行相应配置,vsl003初始化配置完成后,开始等待系统的播放标志置位,播放标志为“0”时,重新初始化vsl003,播放标志为“l”时,接收到系统的播放消息,使能spi接口,选择将要播放的数据包,把音频数据写入spi的缓冲存储区,然后再发送给vsl003的数据寄存器,当音频数据发送完成后,开始由vsl003处理这些音频数据,实现模拟音频数据的输出。该函数能够流畅地完成音频播放功能。
3.4用户应用程序
系统的应用程序主流程如图6所示。
系统主任务启动后,先初始化人机界面库函数,它提供了操作界面的按键中断处理函数以及lcd的显示函数;再读取初始系统配置数据,如本地ip、服务器ip、用户账号、密码等,完成网络、音频编解码以及存储等模块的初始化;然后,主任务再创建多个子任务,包括enc28-j60task,ch375task,vsl003task,humaninterfacetask,接着进入消息循环,消息循环是整个应用程序的核心部分,通过消息循环,系统不断获取用户操作消息,并做出相应处理,实现系统功能;当收到一个退出消息时,系统强制主任务跳出消息循环,关闭播放器操作界面,系统退出应用程序。
4 系统测试及分析
系统调试成功后,可流畅地从服务器中下载音频数据,保存到外接usb设备中,然后再通过音频解码从音响播放出来。图7为该系统主界面,系统音质良好,达到设计要求。
5 结束语
本系统设计采用基于arm cortex-m3的嵌入式器件lm3s1138作为主控制器件,采用enc28j60作为网络接口器件,在μc/os-ii平台上构建一个实时的网络播放系统。该系统能够实现网络点播功能。如将enc28j60更成为具有usb接口的无线网卡,则该系统还具有无线网络功能。而随着以太网技术的深入发展,将嵌入式系统与网络结合,在嵌入式实时操作系统中引入tcp/ip协议栈,以支持嵌入式设备接入网络,成为嵌入式领域重要的研究方向,且对于一些基于网络接口的嵌入式系统都将具有广泛的应用前景。

雷达水位计的工作原理
压电螺钉及二维镜片调节架的特点及技术参数
AI存储市场规模将达到104亿美元 将迎来新的发展热潮
怎样借助人工智能来分类乐高积木
简易电孵箱电路图
ARM Cortex-M3的嵌入式网络播放系统设计应用
七彩虹iGameRTX2070SuperVulcanXOC拆解高清图赏
气动角座阀东北销售
三星S24系列将搭载Exynos自研处理器 北美市场仍用高通芯片
联想再度携手中科院共建HPC平台,为基因测序科学研究赋能
DS4422, DS4424应用电路图
紧缩场技术发展历史
Phononic将向Luminar提供热电冷却器件及相关设计和工程服务
至纯科技2023年业绩预增50%-70%,新订单额达132.93亿元
雷军持股31.4%_博弈小米概念股投资机会_.港交所“同股不同权”招来小米
国内机器人产业集聚区呈现差异化发展
联发科将推出P23芯片:告别落伍,全面兼容最新技术!
本田将相继推出两款纯电动车型,并逐步淘汰柴油车型
行业聚焦!10·18博威联合深连协、材料学会诚邀您参加新材料高峰论坛
捷豹将推新能源汽车SUV车型 混动、纯电双动力