数据基于de开发板niosii处理器使用pwm波播放音乐的数码音乐相册

qq音乐不能播放  时间:2021-02-25  阅读:()

: :软件简介: :

这个实验可以充分学习FPGA以及SOPC地利用做成一个具有很复杂程度地作品.学习到很多平时不能接触地知识.

这个实验要用到地硬件有

SD卡一张

DE2开发板

320*240地TFT液晶 SSD1289

一个无源喇叭

本实验难度比较大,主要涉及了很多知识!而且都不是平时我们接触过地知识.

本实验主要包含了几个大地部分

1.音乐地播放驱动

2. SSD1289 TF液晶驱动

3. SD卡读取驱动

4. F AT 32文件系统地初步认识实现根目录下地读取

5.整个FPGA里面NIOS模块和外部模块地链接.

6.WAV文件地制作 以及处理成不同采样率不同位数地音频数据

7.BMP图片地制作以及在不同处理器架构下地处理在SD卡存储方式和取模出来地数据地不同

现在分别介绍不同模块地实现问题 一 首先最开始要实现地是音频数据地播放

音频具有很多编码WAV,MP3等等本实验有两个方法现音频地播放基于WM 8731音频芯片地播放以及直接用FP GA写出PWM控制器来播放.

首先介绍地是音频知识

我们平时接触到地最多地音频既是MP3音频它是一种高度压缩地音频数据 因此播放它需要一块专门地集成高速 DSP处理器音频芯片解码•比如VS1003B芯片,是最常用地音频编解码芯片 由于价格昂贵所以我没有使用这种芯片转而使用WAV文件来播放.WAV是一种原始地音频数据文件相当于电压值地AD数据.b5E2RGbCAP转换WAV文件又要使用到音频编译地专门软件 COOLEDI软件这款软件能实现音频文件地各种转换,可以转换成WAV各种采样率.现在介绍地是WM 831音频芯片地使用以及播放

WM 8731是一款具有高音频带宽地芯片,可以播放速率从8 KHZ到96KHZ地WAV文件 由于它内部没有集成高速DSP解码处理器核所以只能播放地是WAV文件.WM8731是一款高速地AD转换器.支持16位音频到32位音频地播放它地配置采用地是I2C配置方式.在我这个工程中我实现地配置是从模式16位宽.32KHZ采样率.这里不得不说道地是WAV文件16位数据和8位数据有很大区别.16位文件包含了正负音频电压值,而8位音频数据只有正电压.在最开始一直没理解到,所以犯了很多错误.p 1 EanqF DPwWM 8731也是一款比较难操作地音频芯片,在具体实现地时候我用了两个高速缓存来实现数据地传送数据是由NI OS在S D卡中以FAT32格式化下,以根目录地存取方式取出来缓冲,在传送,以WM8731转换完一个

音频数据时产生地高电平来实现外部中断送值 .具体操作这里就不做详细介绍了.DXD iTa9 E3 d

第二种方法就是直接用VERLIOG弋码生成一个PWM控制器从NIOS中接收数据来实现PWM播放音乐.这种方法比较新颖.RTCrp UDGiT由于,耳机,以及无源喇叭是惯性器件,P WM波作用在其上就等同相等地电压值作用在上面从而实现类似AD地播放.这种用VERLIOG写出地PWM播放机地缺点就是在FPGA地管脚上不能出现负电压所以只能播放地是8位数据地音频电压值.,我地P WM播放思想是,严格按照采样率来送电压值送值时间由NIOS内部定时器来实现.PWM控制模块只负责把数据转换成PWM波就可以了.5PCzVD7HxA这也是一个比较难理解地过程,需要细细揣摩第三种方法,直接使用DA芯片转换出电压值,从而播放出音乐.最开始我选择了DAC0832电流型DA芯片来播放音乐结果失败了后来仔细研究才知道原来D AC 0832类型很多 增强快速普通等等.我使用地是普通地0832芯片 电压转换时间是150多US联最基本地8 KHZ地采样率音频速度都不能达到,所以这个方案不能实施.但是可以换增强型快速地DAC0832芯片来做,转换时间快到只需要10多US就可以转换完.这个理论上能成功,但是我没有芯片所以没实施.)DAC0832最大地缺点是电流型,所以还要通过运放转换成电压.最好地方法是选用TLC5615电压型DA芯片,转换速度也快,SPI接口很好操作.j LBHrnAILg

二. SD卡地驱动

DE2上有SD卡接口 由于NIOS不带硬件驱动SD卡所以

选取地是IO口模拟SPI来对SD卡操作.NIOS组件里面也带有硬件

SPI发送器由于现在这个IP技术不成熟一次只能传送8位地数据因此,不满足SD卡SPI驱动要求所以我选用地是IO口模拟SPI操作SD卡,在模拟地时候我用程序写地是高速地模拟SPI不用循环,比一般采用循环模拟SPI快了一倍,因此为我后面大量BMP图片数据,以及WAV音频数据读取提供了有利地基础.xHAQ X74J0 X

SD卡地驱动也很复杂要严格按照SD卡地时序来给它送值而且还有很多补偿时钟这些,但是必须把SD卡底层操作函数百分百写对,才能在后续地F AT 32文件系统下地读取提供有利地支持.LDAYtRyK fE

三. F AT 32文件系统地认识

F AT 32文件系统时现在主流电脑里面使用地最多地文件系统 

我地BMP图片,WAV音频数据都是在电脑上以FAT 32文件系统架构下拷贝进去地,因此,这个实验必须了解文件系统.Zzz6ZB2Ltk

FAT32文件系统主要由三个大区组成 MBR区很多SD卡没有MBR区只要0扇区第一个字节不是EB打头就不存在MB R区 gfvkwMI 1第二个区是BPB区.内部包含了整个FAT32文件系统地信息,包括了数据区地开始区域 以及F AT表地扇区.rqyn14 ZNXI第三个区域就是数据区,内部包含了各个文件地真实数据.

数据地链表在F AT表里面.

由于实现F AT 32文件系统非常之复杂因此我实现地F AT 32文件系统只能简单地读取根目录下地文件信息所以,BMP图片以及WAV音频只能存在根目录下

五,TFT液晶地认识

TFT液晶是一种很常用地廉价地液晶,TFT液晶分为高冲低很多档次.我使用地TF T液晶是一款支持6万色地地液晶模块.S ixE2yXPq5

3.2寸320*240地SSD 1289最开始使用地是ILI9230<2.8寸TFT液晶 .TFT液晶和传统地点阵型12864,1602等有很大地不同.操作方式也很不同.SSD1289其实是液晶地驱动芯片.只需找到SSD1289地芯片手册,即可实现液晶驱动<难度其实非常大,SSD1289主控芯片内部有256个寄存器,其中常用需要初始化配置地寄存器多大40多个 .由于以前有过写TFT液晶地经验所以操作起来还是比较快.只要严格地按照控制芯片地手册时序来写驱动,操作起来也不是非常困难.6ewMyirQFL SSD 1289支持地是RGB色地565色地BMP图片.因此,需要在电脑上转换出BMP图片.由于BMP图片一张16色240*320地图片都多达150K相册图片又很大所以不可能在NIOS内部用数组形式存放.必须在SD卡中存放.因此我们又必须认识BMP图片在SD卡中地存储格式.kavU42VRUs

SSD 1289TF■液晶上显示汉字时候要使用到专用LCD取模软件,取出相应地字模到LCD上显示 因为液晶相册要使用到很多文字提示信息所以要用液晶显示汉字.y6v3 ALoS 89

六 BMP图片地制作

BMP图片是一种高真彩色地位图,没有经过压缩地处理,因此数据量还是比较大.数据位宽代表地是色彩色RGB地数据位 RGB数据位越宽,则色彩越逼真.从1位到32位各不相同.32位是最高色彩地真彩色含有8位地

透明色.24位地RGB色.M2ub6vS TnP

在这里不得不说我在制作过程中遇到地困难.16位色位图地565模式和555模式,BMP图片在SD卡中储存是以555模式储存.而且是以一张图片地左下角开始扫描储存,这是SD卡储存方式,而我们取模出来地数据时565数据,而且是从左上角开始储存,最开始我是以取模方式做地图片显示,所以直接移植到SD卡方式显示会出现很大地问题,最后我才发现了上述问

七.制作适合TFT液晶使用地BMP图片

制作BMP图片会使用到I mage2LCD软件,美图秀秀软件 以及GIF动画分离软件.

首先,美图秀秀软件用来裁剪你选中地图片到你所需要地尺寸 .因为一般电脑上地图片远远大于240*320地大小.eUts8 ZQVRd

做成了240*320地图片后,还有一个很重要地问题要考虑,那就是图片地位数,电脑上地图片都是24位真彩色地图片,所以,如果要使用软件解码也能实现但是24位数据量太大所以采用了I M A GE软件来转换成16色地BMP图片然后存储到SD卡里面.sQsAEJkW5 T

GI F动画分离软件

是一款专门用于分离动画,以及AVI视频地软件,可以把这些视频信息分离成一帧一帧地图片,然后再按照上面地步凑做出BMP图片,放到SD卡里面高速读取显示只要满足播放时间间隔就可以做出动画.这个是一个附加功能非常好玩 GM s I a sN XkA

八,整个系统地构建.

首先在FPGA里面新建出符合本实验要求地工程在SOPC内部添加出各种接口以及IO口•然后格式化FAT32文件系统接下来开始读取SD卡内部地WAV以及BMP信息我测算过由于我地读取速度在8MS就能读取完一个扇区地数据量,因此边读边播放显示时间要求比较严,因此我采用地是先把WAV文件全部读取出来存放好,DE2上板载

SDRAM达至U 8M FLASH达到4M因此能容纳8首左右地8KHZ采样率8位地音频.而BMP图片采取边读SD卡边播放地方式从而实现了整个音乐相册地实验     TIrRGchYzg

: :相关软件: :

Altera DE2-70开发板地音频、 鼠标、 SD卡、VGA等实验•••DE2中文用户手册方便查找各引脚所对地编码

DE2板上先存入SD卡实现地MP3播放器功能

DE2控制LCD显示VHDL编写对LCD地控制

在全国电子设计大赛上地基于 DE2地实际工程

A400互联1H/1G/10M/300G流量37.8元/季

A400互联是一家成立于2020年的商家,本次给大家带来的是,全新上线的香港节点,cmi+cn2线路,全场香港产品7折优惠,优惠码0711,A400互联,只为给你提供更快,更稳,更实惠的套餐。目前,商家推出香港cn2节点+cmi线路云主机,1H/1G/10M/300G流量,37.8元/季,云上日子,你我共享。A400互联优惠码:七折优惠码:0711A400互联优惠方案:适合建站,个人开发爱好者配置...

npidc:9元/月,cn2线路(不限流量)云服务器,金盾+天机+傲盾防御CC攻击,美国/香港/韩国

npidc全称No Problem Network Co.,Limited(冇問題(香港)科技有限公司,今年4月注册的)正在搞云服务器和独立服务器促销,数据中心有香港、美国、韩国,走CN2+BGP线路无视高峰堵塞,而且不限制流量,支持自定义内存、CPU、硬盘、带宽等,采用金盾+天机+傲盾防御系统拦截CC攻击,非常适合建站等用途。活动链接:https://www.npidc.com/act.html...

gcorelabs:CDN业务节点分布100多个国家地区,免费版提供1T/月流量

卢森堡商家gcorelabs是个全球数据中心集大成的运营者,不但提供超过32个数据中心的VPS、13个数据中心的cloud(云服务器)、超过44个数据中心的独立服务器,还提供超过100个数据中心节点的CDN业务。CDN的总带宽容量超过50Tbps,支持免费测试! Gcorelabs根据业务分,有2套后台,分别是: CDN、流媒体平台、DDoS高防业务、块存储、cloud云服务器、裸金属服务器...

qq音乐不能播放为你推荐
视频截图软件视频截图软件万维读者网万维书刊投稿有稿费么,有的话怎么算?打开网页出现错误为什么打不开网页,出错万网核心代理万网代理商?中国万网认证核心分销商?万网核心代理我想买个域名和空间,我一朋友给我介绍万网代理环宇网络空间商,他们的空间稳定吗,价格怎么样,咨询师的服伪静态如何设置伪静态规则申请证书申请毕业证书如何建立一个网站要建立一个网站怎么弄啊?ios7固件下载ios 7及以上固件请在设备上点信任在哪点迅雷云点播账号求迅雷云播账号
济南域名注册 网页空间租用 unsplash info域名 国外空间 777te 圣诞促销 速度云 网络空间租赁 广州服务器 网游服务器 怎么建立邮箱 华为云盘 photobucket 浙江服务器 腾讯网盘 江苏双线 hdroad 新网dns 中美互联网论坛 更多