首页 » 互联网 » 单片机创意小制作ARM7音乐播放器_播放器_接口

单片机创意小制作ARM7音乐播放器_播放器_接口

神尊大人 2025-01-15 18:03:17 0

扫一扫用手机浏览

文章目录 [+]

这次制作的主题是——做一款能够媲美山寨CD机的音乐播放器。
随着MP3、MP4、手机、PMP等便携播放器的涌现,在市场上很少看到专门卖CD机的柜台了。
想想也是,现在马路上很少看到有人拿个硕大的CD机听音乐。
最紧张的缘故原由,估计是CD光盘尺寸偏大,携带不便,以是现在听MP3的人越来越多了。
但是,不管若何,CD的音质还是相称好的。
还记得去年,我制作了一款M8音乐播放器,朋友听了后,直接评价那音质弗成。
我阐明说,那是8位的播放器,还是被他鄙视了。
太伤我心了。
于是,我又琢磨着做一款新的播放器,希望它超过普通MP3的音质。
这回做好后,又特意给那位朋友试听了一下,这次他评价说,这音质的确超过普通MP3了。
下面我会和大家分享制作它的过程。

紧张芯片先容

这次制作的音乐播放器利用了TI公司的PCM1770,它是24位低功耗立体声音频DAC。
由于它能够直接驱动耳机,以是选择它作为音频解码器。
当耳机的阻抗为16Ω时,它的输出功率为13mW。
PCM1770利用的电源范围为1.6~3.6V,支持标准的I2S音频接口。
对DAC的操作是通过SPI接口实现的。
它的音量也由软件掌握,音量掌握一共分为64个等级。

单片机创意小制作ARM7音乐播放器_播放器_接口 单片机创意小制作ARM7音乐播放器_播放器_接口 互联网

电路的处理器利用Atmel公司的AT91SAM7S64。
它有64KB的FLASH程序存储器,16KB的内部SRAM,是高性能的32位RISC架构的ARM7处理器,最高事情频率可达55MHz。
它一共有64个引脚,PIO掌握的I/O驱动电流可以达到8mA,PA0~PA3可以达到16mA,但所有I/O电流之和不能超过150mA。
这款处理用具有SSC同步串行掌握器,支持I2S标准,也有SPI接口,可以设定8到16位的数据长度,每个SPI接口有4个片选线。
这样,处理器与DAC解码器的数据传输、掌握命令的发送都可以在硬件上连接实现。

单片机创意小制作ARM7音乐播放器_播放器_接口 单片机创意小制作ARM7音乐播放器_播放器_接口 互联网
(图片来自网络侵删)
可实现功能

这个制作完成后,将CD音质的WAV文件复制到SD卡内,文件必须存放在根目录下。
程序通过AT91SAM7S64的SSC串行掌握器,把音频的数据流利过SSC接口传输到TI的音频DAC上。
这样,耳机就播放出动听的音乐了。
播放器利用普通的微动按钮掌握,一共用了5个按钮,分别实现音量、选曲、播放、停息等掌握。

事情事理

全体制作,由图11.1所示的AT91SAM7 S64 最小系统(左边)、洞洞板(中间)和转接成DIP封装的PCM1770 DAC(右边)组成。

图11.1 制作所需的各部分实物

这款音乐播放器的事情事理并不繁芜。
紧张由5大部分组成:

(1)AT91SAM7S64最小系统,比51单片机最小系统轻微繁芜些。

(2)PCM1770 I2S音频解码器,用于驱动耳机或音响,播放音乐。

(3)SD卡存储卡,存放44.1kHz/16位的WAV格式的音乐文件。

(4)5个普通的微动按钮,功能分别为:掌握音量、前后选择音乐和播放/停息音乐。

(5)大略的用稳压芯片将5V的USB电源转换成3.3V的电路事情电源。

音乐播放器的事理图如图11.2所示,可分为5大部分:左上角为稳压电路,左下角为5个微动按钮,右上角为SD卡,右下角为TI的音乐DAC芯片,中间的便是AT91SAM7S64的最小系统了。

1.稳压电源

图11.2 电路事理图

它利用1117-3.3V的稳压芯片,把USB接口的5V电源转换成3.3V。
4个电容起到滤波浸染。
稳压芯片可以采取SPX1117-3.3V、LM1117-3.3V或AMS1117-3.3V。
如果利用有极性的电解电容,不要粗心地把正负极性弄反。

2. 5个微动按钮

这5个微动按钮排列成经典的高下、旁边、中间的十字构造,它的掌握功能大家很随意马虎理解,分别是高下为音量掌握、旁边为切换歌曲掌握、中间为停息/连续播放掌握。

3. SD 卡

利用了它的SPI接口,直接和ATM7的SPI接口的NPCS0、MOSI、MISO、SPCK连接,在程序中我利用了系统时钟16.9344MHz作为SPCK时钟,这样它的传输速率才可以超过CD音乐格式标准的数据流速率。

4. TI的DAC

这是这个别系最关键的地方,它须要SPI接口掌握它,同时又须要I2S接口给它供应数据流。
它的SPI掌握接口与AT91SAM7S64的NPCS1、MOSI、MISO、SPCK引脚相连,程序通过拉低 NPCS0 与 NPCS1 这两个引脚来片选 SD 卡或 DAC 芯片。
在传输数据时,可以拉低不同的片选旗子暗记来指定传输的方向。
DAC的LRCK、DATA、BCK接口分别与RAM7的TF、TD、TK连接。
但由于DAC芯片还须要系统时钟,它可以是128fs、192fs、256fs或384fs(fs为音乐的采样率,如44.1kHz采样率)。
以是,我通过ARM7的PCK0引脚输出384fs频率的时钟。
末了,还可以通过掌握DAC的PD引脚为0,让DAC休眠,减低它的功耗。

5. AT91SAM7S64 最小系统

精确连接好处理器各内部掌握器的电源,如VDDFALSH、VDDIO、VDDCORE、VDDPLL等,确认USB的D+上拉电阻到3.3V。
在播放44.1kHz音乐时,确认利用的是16.9344MHz晶体(不才载程序时利用18.432MHz)。
末了,在AT91SAM7S64的PLL RC引脚上连接 PLL滤波用的电容。
这样,ARM7上电后就能运行代码了。

AT91SAM7S64的电源系统比较繁芜,但还好仅仅须要单一的3.3V电压,即可办理所有供电问题。
电源利用USB的5V电压,经由1117-3.3V稳压芯片稳压,然后给DAC、AT91SAM7S64、SD卡供电。
AT91SAM7S64还须要1.8V的电源电压,好在它内部集成的电压调节功能,能输出1.8V电压。

AT91SAM7S64处理器只要精确连接好须要的2种电源电压(3.3V、1.8V),焊接上18.432MHz的外部晶体,并且连接上大略的USB接口电路,在物理上就能够下载程序了。
把稳,当利用18.432MHz的外部晶体时,烧录文件才能通过USB接口下载。
但由于音乐播放器须要16.9344MHz的外部晶体,才能以正常的速率播放CD采样率(44.1kHz)的音乐。
因此,下载好程序后,还须要切换晶体。
这一步麻烦些。

程序首先初始化AT91SAM7S64的SPI接口和SSC接口,并使能PIOA引脚(连接按钮的引脚)和SSC接口(I2S接口)的中断。
等初始化接口完毕后,程序才能通过已经精确配置的接口,初始化音频DAC、SD卡设备。
等这些操作完成后,程序会通过读取SD卡的特定扇区,识别文件系统种类,并搜索根目录下的第1个音乐文件。
末了,通过按钮掌握,实现音乐的播放。

利用方法

先要格式化SD卡,利用FAT(FAT12与FAT16的合集)或FAT32都可以。
然后,复制44.1kHz、16位的WAV音乐到SD卡上(把稳,请复制到根目录)。
插上USB电源后,按中间的播放/停息按钮播放音乐(音乐播放器在上电时不能自动播放,还须要按下播放/停息按钮才能播放)。

烧录文件的下载与利用

1. 勾引代码简介

AT91SAM7S64内部含有一段叫SAM-BA BOOT的程序,它在出厂时已被固化,不会被擦除,也不会被改变。
在特定的条件下,它会被复制到内部Flash中,这个复制的过程叫系统程序规复。
系统程序规复后,下一次上电或手动复位时,SAM-BA BOOT代码就会运行了,它利用片上集成的USB或DEBUG串口与上位机通信,实现自编程。

2. 规复启动代码

在PA0、PA1、PA2、TST这4个引脚保持高电平的状态下,上电并等待10s。
由于上电时PA0、PA1、PA2默认上拉电阻使能了,以是这3个引脚可以悬空。
而TST引脚内部下拉电阻使能,因此须要通过外部电路将TST引脚拉高。

10秒后当芯片再次上电时(记得规复TST引脚为低电平),就会运行SAM-BA BOOT程序了。
这时,把芯片的USB接口连接上电脑,电脑上就会创造新硬件,并自动安装驱动。
当然,条件是你在电脑上已经安装了SAM-BA ISP下载软件。

3. 关于 ERASE 引脚

上电时ERASE引脚的上拉可以用来擦除内部Flash的安全位,并且会在50ms的韶光内完成。
它的浸染是使全体内部Flash存储器的内容被打消掉。
当完成这些操作后,安全位才会打消。

当你利用SAM-BA对器件编程后,实行了Enable Security Bit操作,即编程了Flash安全位,那么下一次规复系统程序前必须拉高ERASE引脚。

4. SAM-BA 软件利用

首先,安装SAM-BA ISP软件,它会连同驱动一起安装的。
这样,当把已经规复启动代码的ARM7插入USB接口时,驱动即可自动安装,并在设备管理器里多出如图11.3所示的设备。

然后,双击软件运行,涌现图11.4所示的运行画面。
选择图11.4所示的连接办法“\usb\ARM0”和开拓环境“AT91SAM7S64-EK”后,按“Connect”后连接。
接着,烧录软件的主界面就会跳出,如图11.5所示。

图11.3

图11.4

图11.5

然后,点击“Send File”按钮,选择烧任命的BIN文件。
末了,点击“Send”发送即可。
期间会弹出扇区解锁确认和扇区锁定确认对话框,点击“Yes”即可。

几秒后,程序就烧录完毕了。
重新上电后,音乐播放器的代码就能成功运行了。

制作简介

实在,全体制作对刚学习ARM7处理器的人也不难。
买一个AT91SAM7S64的最小系统,它的32个PIO口一样平常都会引出来的,并用插针连接。
只须要自己做底板,焊接好插座,就能方便地合并了。

我做的这个底板是用万用板制作的,尺寸大约是10cm×10cm。
仔细不雅观察的朋友,还会创造,这个底板的功能不仅仅是特意用来做音乐播放器的,还可以做许多关于ARM7的小实验。

底板的反面我用绝缘导线连接线路,这也是我目前喜好的做法(见图11.6)。
如果以为丢脸,大家还可以低廉甜头PCB的底板,这样也能轻松焊接。

为了使自己的制作更都雅,我又在网上买了片1.8mm厚的有机玻璃板。
用小锯切割成10cm×10cm大小后,用砂纸仔细打磨。
打磨好后在得当的位置上钻孔,末了用2mm的螺丝和对应的铜座固定,这个制作的外不雅观就完成了(见图11.7)。

大家会创造制作的正面还有一根飞线,这是由于我买的最小系统,3.3V的电源插针没有向下引出,只好拿了条杜邦线连接到底板了。

图11.6 用绝缘导线连接底板背面的线路

图11.7 用有机玻璃制作播放器的外壳

标签:

相关文章

论中国芯片成长史_家当_芯片

一、择要本文以中国芯片发展史为背景,剖析了我国芯片家当的发展进程、关键技能打破、家当链布局以及面临的寻衅与机遇。通过对我国芯片家当...

互联网 2025-01-15 阅读0 评论0

Boot 引脚激发的血案_单片机_鱼鹰

程序下载到程序之后,没有正常运行。疑惑下载过程或者程序涌现问题,但是同样的工具,同样的程序,下载到另一块单片机没有任何问题。那么问...

互联网 2025-01-15 阅读3 评论0