新型MP3播放器设计

合集下载

基于DSPMP3播放器设计

基于DSPMP3播放器设计

基于DSPMP3播放器设计DSPMP3播放器是一种基于数字信号处理技术的音乐播放设备,结合了数字信号处理和MP3音频解码技术,具备较高的音质和功能。

首先,DSPMP3 播放器采用了成熟稳定的DSP(Digital Signal Processor,数字信号处理器)技术,通过对音频信号进行数字化和处理,能够提供更强的音频处理能力。

相比传统的模拟音频处理器,DSP可以进行更高精度的音频处理,并且能够支持多种音频格式的解码,如MP3、WAV、FLAC等。

其次,DSPMP3 播放器内置了专用的MP3音频解码芯片,能够对MP3格式的音乐进行高效解码,实现音频数据的解析和还原。

MP3是一种流行的音频压缩格式,具有压缩率高、音质损失少的特点,因此经常被用于音乐播放器中。

DSPMP3播放器的内置解码芯片将MP3文件解码,通过DAC (Digital-to-Analog Converter,数模转换器)转换为模拟信号,输出到耳机或扬声器,使用户能够获得高质量的音频体验。

此外,DSPMP3播放器还可以通过USB接口和计算机进行连接,实现音乐文件的传输和充电。

用户只需将播放器连接到计算机上,就可以轻松地将音乐文件传输到播放器中,方便快捷。

同时,播放器也可以被视为一个U盘设备,在计算机上直接进行文件的读写操作。

所以,DSPMP3播放器不仅是一个音乐播放设备,还是一个便携式存储设备。

最后,DSPMP3播放器的设计也注重用户体验和界面友好性。

播放器通常采用嵌入式设计,具有直观的操作界面和便捷的按键布局,方便用户进行音乐的选择、调整和控制。

同时,播放器还可以支持多国语言的显示,满足不同国家和地区用户的需求。

总的来说,基于DSPMP3播放器的设计结合了数字信号处理技术和MP3音频解码技术,具备较高的音质和功能。

其应用领域广泛,不仅可以用于个人音乐播放,还可以应用在汽车音响、便携式音箱、智能音箱等多个领域,为用户提供更好的音频体验。

项目(4)-简易MP3播放器设计

项目(4)-简易MP3播放器设计

简易MP3播放器设计一、项目简介MP3播放器从90年代末开始出现,发展到今天已经是一种相当成熟的电子娱乐消费品了。

目前市面上存在着许多的MP3播放器,样式繁多,功能各异。

但它们都脱离不了一个核心,音频解码。

该项目用利用51单片机作为主控,VS1003作为音频解码芯片,再加上SD卡作为MP3的存储媒质,实现一个简易的MP3播放器。

同时可扩展TFT液晶模块制作出一个良好的人机交互界面。

二、项目要求1、支持播放格式为 .mp3的音频文件。

2、支持上一首、下一首、暂停、继续、音量调节、重音低调节。

3、支持单曲循环、全部循环模式。

4、控制方式任意。

5、扩展要求1:利用TFT制作一个人机交互界面。

能够显示音量、音效、音乐列表、播放时间进度等信息。

6、扩展要求2:支持WMA、MIDI、WAV格式的音频文件。

三、项目方案解码方案:音频解码可分为软解码和硬解码。

软解码需要大量的运算,消耗很多的时间与空间资源,因此对处理器的存储容量(ROM和SRAM)以及速度要求都比较高。

目前一般的单片机及ARM7处理器都很难做到对音频软解码。

另外,软解码之后的数据还要送到DAC,经DAC转换后才能输出模拟信号,如果DAC的驱动能力较弱的话还可能需要一个功率放大电路。

而硬解码一般是由专门的解码芯片实现,其优点是速度快、集成度高(内含DAC、功放等电路)、处理器容易控制、解码效果好。

因此在解码上选择与开发板配套的VS1003专用音频解码芯片比较合适。

解码方案确定后,该项目大体的实现思路就是,首先要分开各外设模块实现驱动,如VS1003驱动、SD卡驱动等。

用51单片机作主控,对VS1003、SD卡、串行口、TFT液晶等外设部件进行初始化。

接着根据用户控制来选择功能。

在音乐播放方面,要根据FAT32文件系统原理与MP3文件存储格式来读取MP3文件数据,再把有用音频数据发送到VS1003进行解码后输出。

人机交互界面的设计比较灵活,可根据个人喜好来完成设计。

STM32的MP3播放器设计

STM32的MP3播放器设计
图 32.3 SCI 读时序 从图 32.3 可以看出,向 VS1003 读取数据,通过先拉低 XCS(VS_XCS),然后发送读 指令(0X03),再发送一个地址,最后,我们在 SO 线(VS_MISO)上就可以读到输出的 数据了。而同时 SI(VS_MOSI)上的数据将被忽略。 看完了 SCI 的读,我们再来看看 SCI 的写时序,如图 32.4 所示:
表 32.3 MODE 寄存器各位描述 这个寄存器,我们这里只关注第 2 和第 11 位,也就是 SM_RESET 和 SM_SDINEW。 其他位,我们用默认的即可。这里 SM_RESET,可以提供一次软复位,建议在每播放一首 歌曲之后,软复位一次。SM_SDINEW 为模式设置为,这里我们选择的是新模式,所以设 置该位为 1(默认的设置)。其他的位,在本章都没有用到,所以就不做介绍了。 接着我们看看 BASS 寄存器,该寄存器可以用于设置 VS1003 的高低音效。该寄存器的 各位描述如表 32.4 所示:
表 32.1 VS1003 新模式下 SPI 口信号线功能 VS1003 的 SPI 数据传送,分为 SDI 和 SCI,分别用来传输数据/命令。SDI 和前面介绍 的 SPI 协议一样的,不过 VS1003 的数据传输是通过 DREQ 控制的,主机在判断 DREQ 有 效(高电平)之后,直接发送即可(一次可以发送 32 个字节)。 这里我们重点介绍一下 SCI。SCI 串行总线命令接口包含了一个指令字节、一个地址字 节和一个 16 位的数据字。读写操作可以读写单个寄存器,在 SCK 的上升沿读出数据位,所 以主机必须在下降沿刷新数据。SCI 的字节数据总是高位在前低位在后的。第一个字节指令 字节,只有 2 个指令,也就是读和写,读为 0X03,写为 0X02。 一个典型的 SCI 读时序如图 32.3 所示:

基于STM32MP3播放器设计

基于STM32MP3播放器设计

基于STM32MP3播放器设计STM32MP3播放器是一种基于STM32单片机搭建的MP3音频播放设备,具有播放音频文件、调节音量、选择曲目等功能。

其基本原理是通过STM32单片机的内部ADC/DAC模块与外部音频解码器进行数据传输和处理,实现音频播放的功能。

首先,STM32MP3播放器的硬件设计主要包括以下几个部分:STM32单片机、音频解码芯片、外部存储器、显示屏、按键和音频输出设备。

STM32单片机作为控制中心,负责控制整个播放器的各个元件以及与用户的交互。

音频解码芯片负责解码音频文件,将数字信号转换为模拟声音输出。

外部存储器用于存储音频文件,通常是SD卡或者闪存。

显示屏用于显示播放器的状态和当前播放的曲目信息。

按键用于控制播放器的各项功能,如暂停/播放、切换上一首/下一首等。

音频输出设备可以是耳机、扬声器等。

其次,STM32MP3播放器的软件设计主要包括存储设备读写控制、音频解码控制、用户交互控制等功能。

首先,存储设备读写控制部分负责从外部存储器读取音频文件,并将音频数据传输给音频解码芯片进行解码。

其次,音频解码控制部分负责控制音频解码芯片的工作,包括选择解码算法、设置音频参数、调节音量等。

最后,用户交互控制部分负责响应用户的操作,如按键事件处理、显示屏信息更新等。

对于STM32MP3播放器的设计流程,可以分为硬件设计和软件设计两个阶段。

首先,根据实际需求确定硬件设计方案,包括选择STM32单片机型号、音频解码芯片、外部存储器、显示屏、按键和音频输出设备等,并进行硬件电路的设计与布局。

随后,进行软件设计,包括编写驱动程序、实现音频解码算法、处理用户交互操作等。

在实际的设计过程中,需要根据硬件平台和技术条件进行优化,以保证播放器的音质和性能。

例如,可以通过选择合适的音频解码算法,优化解码性能,提高音频质量。

同时,还可以通过采用高性能的存储设备和使用缓存技术来提高音频文件的读取速度,减少卡顿现象。

mp3设计方案

mp3设计方案

mp3设计方案一、概述随着科技的发展,多媒体设备已经成为人们生活中不可或缺的一部分。

MP3作为一种便携式音频播放器,已经在市场上占据了重要的地位。

本文将介绍一种新的MP3设计方案,旨在提供更好的音频体验和使用便捷性。

二、硬件设计1. 外观设计为了吸引用户的眼球,我们将采用时尚简约的外观设计。

MP3的主体采用纤薄轻巧的材质,配以金属外壳,既美观又耐用。

同时,屏幕的大小和位置也需要经过合理的考虑,以便用户能够轻松地操作和浏览音乐信息。

2. 功能设计除了基本的音频播放功能外,我们还将增加以下功能:- 内置存储空间:提供足够的存储容量,用户可以随时随地收藏和播放自己喜爱的音乐。

- 蓝牙连接:支持蓝牙技术,用户可以无线连接耳机或音箱,享受更自由的音乐体验。

- 音效调节:通过内置的音效芯片,用户可以自由调节音质,适应不同的音乐风格和个人口味。

- FM收音机:为了满足用户的多样化需求,我们将在MP3中加入FM收音机功能,使用户可以收听广播节目。

- 计步器功能:MP3将搭载计步器传感器,用户可以通过MP3的携带来记录运动步数。

- 语言支持:多语言界面的设计,方便不同地区的用户使用。

三、软件设计1. 用户界面设计为了提供良好的用户体验,我们将采用直观简洁的用户界面设计。

主界面将显示当前播放歌曲的信息,以及快捷按钮用于切换音乐、调节音量等操作。

页面风格将采用简洁大方的设计,避免过多花哨的效果,降低用户使用的复杂度。

2. 操作逻辑设计MP3的操作逻辑需要清晰易懂,并且符合用户的操作习惯。

通过简单的按键操作,用户可以快速切换歌曲、调节音量和选择播放模式。

同时,我们将提供易于理解的使用说明书,以帮助用户更好地使用MP3。

3. 兼容性设计为了满足不同用户的需求,MP3将支持多种音频格式,如MP3、WAV、FLAC等。

此外,MP3还将具备与计算机和其他设备的连接功能,方便用户进行音乐的传输和管理。

四、市场推广1. 宣传策略针对我们的MP3设计方案,我们将采取多种宣传渠道,包括在线广告、社交媒体和传统媒体。

基于DSP的MP3播放器设计

基于DSP的MP3播放器设计

基于DSP的MP3播放器设计MP3播放器是一种数字音频播放设备,它能够将储存在MP3格式的音频文件转化为可听的声音并播放出来。

在设计MP3播放器时,可以使用数字信号处理(Digital Signal Processing, DSP)技术来实现音频的解码、数字信号的处理以及音频输出等功能。

下面将介绍基于DSP的MP3播放器的设计。

首先,MP3播放器的设计需要一个高性能的DSP芯片。

DSP芯片是一种特殊的微处理器,它具有强大的浮点运算和信号处理能力。

在选择DSP芯片时,需要考虑其处理速度、功耗以及音频处理功能是否满足要求。

接下来,需要选择合适的软件解码器。

软件解码器是通过软件算法将MP3音频文件解码成原始音频信号的一种技术。

在设计中可以使用开源的解码器库,如Helix MP3解码器、LAME MP3解码器等。

这些解码器具有良好的音频解码性能和稳定性。

在软件解码器的工作原理上,主要包括以下几个步骤:首先,读取MP3文件的头部信息,获取音频文件的采样率、码率等参数;然后,解析MP3文件的帧结构,分离出帧头以及音频数据;接着,对音频数据进行解码,恢复为PCM(Pulse Code Modulation)格式的音频信号;最后,对解码后的PCM音频信号进行数字信号处理,如均衡、混响等效果的处理。

另外,MP3播放器的设计还需要考虑音频输出部分。

一般来说,可以使用DAC(Digital-to-Analog Converter)芯片将数字音频信号转换为模拟音频信号,然后通过功放输出到耳机或扬声器。

同时,还可以考虑使用耳机放大器来提升音频信号的输出功率,使其可以推动耳机或扬声器的驱动单元。

此外,用户界面设计也是MP3播放器设计中的重要部分。

可以考虑使用LCD屏幕来显示音频文件的信息,如歌曲名、艺术家、播放进度等。

同时,可以设置按键或触摸屏来实现播放、暂停、音量调节等功能。

最后,为了方便用户的音频文件传输和存储,可以考虑为MP3播放器设计一个USB接口,以便与计算机进行连接。

基于DSP的MP3播放器的设计

基于DSP的MP3播放器的设计

6.D/A转换芯片TLV5616
数模转换器,又称D/A转换器,简称DAC, 它是把数字量转变成模拟的器件。D/A转 换器基本上由4个部分组成,即权电阻网 络、运算放大器、基准电源和模拟开关。 模数转换器中一般都要用到数模转换器, 模数转换器即A/D转换器,简称ADC,它 是把连续的模拟信号转变为离散的数字信 号的器件。TLV5616是一个12位电压输出 数模转换器(DAC),带有灵活的4线串 行接口,可以无缝连接TMS320、SPI、 QSPI和Microwire串行口。数字电源和模 拟电源分别供电,电压范围2.7~5.5V。 输出缓冲是2倍增益rail-to-rail输出放大器, 输出放大器是AB类以提高稳定性和减少 建立时间。rail-to-rail输出和关电方式非常 适宜单电源、电池供电应用。通过控制字 可以优化建立时间和功耗比。
三. MP3 播放器系统构成
根据 MP3 播放器特点要求选择了 TI 公司的 TMS320VC 5402 芯片,主机选用功能较强的 AT89C51 芯片。C5402 芯片的信号 处理部分和 89C51 的智能控制部分来分别完成电路设计,MP3 播放器系统选用大容量的 FLASH MEMORY 作为主存储器硬件 存储语音文件,利用串口通信电路可以实现由 PC 机下载语音 文件功能,利用液晶显示屏 LCD, 还可以从 PC 机下载小说并 在 LCD 上阅读。DSP 芯片的 Bootloader 采用了 HPI 口方式。 DSP 扩展了一片 64K 字高速静态RAM(CY7C1021V33-10),作 为 DSP 芯片的片外 RAM,用 以适应各种音频处理算法对存储 器容量的要求。DSP 芯片处理后的信号由 D/A 输出到耳机。 D/A 变换由 TLV5616实现,可直接和 DSP 芯片的输出相连。而 MPU 主要完成三项功能,分别是 LCD 显示,控制 DSP 芯片的 运行和文件 的串口下载。

毕业设计(论文)-基于单片机的mp3播放器设计[管理资料]

毕业设计(论文)-基于单片机的mp3播放器设计[管理资料]

摘要在我们的日常生活中,人们会面对许多来自周围环境的压力,而听音乐已经成为普通大众放松自己的方式,MP3播放器则是听音乐必不可少的工具。

以前的音乐播放器有功能单一、系统流畅度低、输出音质差、无法扩展容量、与电脑交换数据时传输缓慢等缺点。

为了提高MP3播放器的质量,满足各类人群需求,特此设计了一个基于单片机的MP3播放器。

本课题主要研究基于单片机的MP3设计,设计以STC12C5A60S2单片机作为主控芯片,同时结合音频解码芯片VS1003、功率放大器、存储电路、SD卡读写模块等外部电路组成音乐播放系统。

能够完成对存储器识别和数据读取,将在存储器中读取的MP3文件或其他音频文件解码并播放流畅的音乐。

关键词:MP3播放器;STC12C5A60S2单片机;VS1003解码器AbstractIn our daily life, people face a lot of pressure from the surrounding environment, and listening to music has become a way of the general public to relax,the MP3 player is the tool to listening music. Once upon a time the music player has a single function, low system fluency, output quality is poor, cannot expand capacity, exchange data transmission shortcomings such as slow with computers. In order to improve the quality of the MP3 player, meet the needs of all kinds of people, we designed a MP3 player based on single chip microcomputer.This topic finishes the software design of the music player based on the 51 microcontroller,In combination with audio decoding chip VS1003,power amplifier,storage circuit and the SD card reader module composition a music playback system. The system is able to complete the recognition and data memory read,read the files in the memory and play music fluently.Keywords:MP3 player; STC12C5A60S2 MCU; VS1003 decoder目录1 绪论 (1)课题背景 (1)课题意义 (2)课题研究内容 (2)2 主要元器件介绍 (3)STC12C5A60S2单片机简介 (3)VS1003(MP3/WMA音频编解码器) (3)VS1003概述 (3)VS1003特性 (4)VS1003芯片LQFP-48和BGA-49Ball封装的引脚分配 (4)SD卡读写模块 (6)SD卡读写模块概述 (6)技术规格 (6)引脚分配 (7)3 系统硬件设计 (9)系统硬件设计综述 (9)按键控制电路 (9)SD卡电路 (10)VS1003电路 (10)4 系统软件设计 (12)编程软件介绍 (12)Keil软件介绍 (12)Keil使用方法 (12)程序语言介绍 (15)C语言 (15)语言特点 (15)C语言与汇编语言对比 (16)系统软件设计综述 (17)VS1003模块的MP3文件播放程序设计 (20)系统性能分析 (21)5硬件测试 (22)结论 (23)致谢 (24)参考文献 (25)附录A 英文原文 (25)附录B 汉语翻译 (27)附录C 源程序 (28)附录D 元件清单 (44)附录E 电路图 (45)附录F 实物图 (47)1 绪论课题背景德国人Brandenburg在20世纪80年代进入顶尖的研究机构Fraunhofer Institute for Integrated Circuit,组成了MP3研发小组,并开始着手研发MP3。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

简易模拟MP3播放器功能一.目的:1.通过学习,尝试编写歌曲简谱,加深对PWM音乐输出控制原理的认识和理解。

2.实验通过7段数码管显示播放曲目,提高对SPI接口的应用能力。

3.通过修改和添加《深入浅出ARM7》中的相关程序,控制歌曲的快进、快退、暂停、循环播放、停止等实现简易模拟MP3播放器功能,增强对ARM的程序读写能力。

二.仪器:ARM开发板一块、装有ADS1.2及EasyJTAG仿真器的电脑一台三.原理:1.SPI接口控制7段数码管显示:(1)SPI数据和时钟的相位关系:(2)SPI寄存器描述:①SPI控制寄存器SPCR:②SPI状态寄存器SPSR:通过对相关寄存器的读写操作,即可控制主从机的数据传输。

2.PWM控制音乐输出:(1)两个匹配寄存器可用控制单边沿PWM输出。

PWMMR0控制PWM周期速率,另一个匹配寄存器(PWMMR1~PWMMR6)控制PWM边沿的位置。

每个额外的单边沿PWM输出只需要一个匹配寄存器,因为所有PWM输出的重复速率是相同的。

多个单边控制PWM周期的开始,当PWMMR0发生匹配时,都有一个上升沿。

(2)PWM管脚汇总:(3)PWM定时器控制寄存器PWMMTCR:(4)PWM匹配寄存器PWMMR0—PWMMR6:PWM匹配寄存器值连续与PWM定时器计数TC值比较。

当两个值相等时自动触发相应动作(产生中断、复位计数器或停止定时器)。

具体执行什么动作油PWMMCR 寄存器控制。

(5)PWM锁存使能寄存器PWMLER:四.实验程序:1.实验流程图:2.实验程序:(见附录)五.调试结果:(跳线连接:PWMMR3,4,5,6输出口连接LED1~4; PWMMR1连接BEEP;)当烧录程序后,数码管先显示0,然后按KEY3或KEY4可播放下一首或上一首歌曲,同时数码管更新显示曲目;放音过程中,按一次KEY5可实现放音暂停,再按KEY5继续放音;放音过程中,按KEY1键可复位播放当前歌曲,并实现重复播放。

按KEY2键复位并停止播放音乐。

放音过程中LED1~4伴随播放音调明暗变化。

六.调试总结及体会:通过不断调试,终于实现了简易模拟MP3播放功能,调试过程是自己不断学习进步的过程,从中收获了很多。

通过对课本中关于“虹彩妹妹”音乐编程的分析,以及通过网络学习了相关的音乐简谱常识,掌握了用蜂鸣器实现播放音乐的编程方法。

实验中“倩女幽魂”、“沉默是金”、“当年情”都是自己通过歌曲简谱编写的音乐程序。

事物都是相互联系的。

通过对音乐程序的编写,加深了对用PWM播放音乐原理的认识。

通过反复的调试,对AXD调试环境更加的熟悉,更加熟练了对其基本功能的应用。

同时,提高了ARM编程应用能力。

能够对一些基本的错误快速识别,为今后的编程奠定一定基础。

附录://跳线连接:PWMMR3,4,5,6输出口连接LED1~4; PWMMR1连接BEEP;#include "config.h"#include "music.h"#define HC595_CS (1 << 29) // P0.29口为74HC595的片选#define AA 1<<12// 歌曲曲谱-倩女幽魂const uint32 HCMM1[] ={_LA, _SO, _MI, _MI,_MI, _RE, _DO, _SO,_LA, _DO, _LA, _LA,_DO1, _DO1,_LA, _LA,_MI,_DO1,_DO, _1TI, _DO, _1TI,_1LA,_DO1, _DO1,_MI,_SO,_DO,_DO,_LA,_RE,_DO1, _DO1,_RE, _RE, _RE,_FA,_DO1, _FA, _MI, _FA, _LA,_MI,_RE, _DO,_DO1,_FA, _MI, _RE,_1TI, _1TI, _FA,_MI, _RE,_DO,_1LA, _1SO, _1LA, _1LA,_1LA,};// 歌曲节拍const uint32 HCMM_L1[] ={_16, _16,_8, _2d,_4d, _4, _4, _8,_16, _16,_8, _2d,_4, _4,_4d, _8,_1,_4,_8, _8, _4d, _8,_1,_4, _4,_4, _4,_4, _2, _4,_8, _4,_8,_4, _4,_1,_4, _4,_8, _4, _8,_1,_4, _8, _8, _4, _4,_4d,_8, _2,_4d, _8, _4, _4,_4, _2, _4,_4d, _8, _2,_4d, _8,_4, _4,_1,};//歌曲曲谱-虹彩妹妹const uint32 HCMM2[] ={_LA, _LA, _SO, _LA,_LA, _SO, _MI, _LA, _SO, _MI,_RE, _RE, _DO, _RE,_MI, _MI, _SO, _LA, _DO1, _LA, _SO,_MI, _MI, _SO, _DO,_MI, _MI, _MI, _MI, _MI,_1LA,_1LA,_1SO,_1LA,};// 歌曲节拍const uint32 HCMM_L2[] ={_4, _8, _8, _4, _8, _8,_8, _4, _8, _2,_4, _8, _8, _4, _8, _8,_8, _4, _8, _2,_4, _8, _8, _8, _8, _8, _8,_8, _4, _8, _2,_4, _4, _4, _8, _8,_8, _4, _8, _2,};//当年情const uint32 HCMM3[] ={_MI, _MI, _RE, _MI, _MI,_RE,_MI, _SO, _SO, _LA,_SO,_FA, _MI,_FA, _FA, _MI, _FA,_RE,_DO,_TI,_LA, _TI,_MI, _RE,_MI,_MI, _RE, _MI, _MI,_RE,_MI, _LA,_LA,_TI,_LA, _LA,_RE, _MI,_RE, _DO, _RE, _RE,_MI,_RE, _DO, _1LA,_DO,_DO,_MI,_MI,_RE,_MI,_MI,_RE,_MI,_SO,_SO,_LA,_SO,_SO,_MI,_MI,_FA,_MI,_MI,_FA,_MI,_DO,_RE, _DO1,_DO1,_MI,_MI,_RE,_MI,_MI,_RE,_MI,_LA,_LA,_TI,_LA,_LA,_RE,_DO,_RE,_RE,_DO,_MI,_RE,_DO,_SO, _DO1,_SO, _SO,_FA,_MI,_MI,_RE,_MI,_MI,_RE,_MI,_SO,_SO,_LA,_SO,_SO,_MI,_MI,_FA,_MI,_MI,_FA,_MI,_DO,_RE, _DO1,_DO1,_MI,_MI,_RE,_MI,_MI,_RE,_MI,_LA,_LA,_TI,_LA,_LA,_RE,_DO,_RE,_RE,_DO,_RE,_MI,_1LA,_DO,_DO,_DO, _DO1,_DO1,_DO, _MI, _FA, _FA,_DO, _DO,_TI, _LA,_SO,_TI, _MI,_MI,_LA, _DO, _RE, _DO,_RE,_MI, _FA,_MI, _1TI,_RE, _1TI,_1TI,_DO, _MI,_FA,_FA, _DO,_DO,_TI,_DO, _TI,_MI, _LA,_LA, _DO,_RE,_DO1, _MI,_MI, _1TI,_RE, _1TI,_1TI,_1SO,_1TI, _1LA, _1LA,_1LA,_DO1,_DO1, _DO1,_DO1, _DO1,_DO, _MI,_FA,_FA, _DO,_DO,_TI, _LA,_SO, _TI,_MI, _MI,_LA, _DO,_RE, _DO,_RE,_MI, _FA,_MI, _1TI,_RE, _1TI,_1TI,_DO, _MI,_FA,_FA, _DO,_DO,_TI, _DO,_TI, _MI,_LA,_LA, _DO,_RE,_DO1, _MI,_MI, _LA,_SO, _TI,_LA,_LA,_DO1,_SO,_FA,_MI,_MI,_RE,_MI,_MI,_RE,_MI,_SO,_SO,_LA,_SO,_FA,_MI,_FA,_FA,_MI,_FA,_RE,_DO,_TI,_LA,_LA,_MI,_RE,_MI,_MI,_RE,_MI,_MI,_RE,_MI,_LA,_LA,_TI,_LA,_RE,_DO,_RE,_RE,_DO,_RE,_MI,_RE,_DO,_SO,_LA,_MI,_LA,_LA, _TI,_LA,_LA,_MI,_RE,_DO,_RE,_RE,_MI,_RE,_DO,_LA,_DO,_DO,_DO,};//歌曲节拍const uint32 HCMM_L3[] ={_4d, _16, _16, _4d, _16,_16,_8, _8, _8d, _16,_4d,_16, _16,_4d, _16, _16, _8,_4,_8,_4d,_8, _4d,_16, _16,_4d,_16, _16, _4d, _16,_16,_8, _8,_8d,_16,_4, _16,_16, _16,_16, _16,_4d, _16,_16,_8, _8, _16,_8d,_1,_4d,_16,_16,_4d,_16,_16,_8,_8,_8,_16,_16,_4d,_16,_16,_4d,_16,_16,_8,_4,_8,_2, _4,_4,_4d,_16,_16,_4d,_16,_16,_8,_8,_8,_16,_16,_4d,_16,_16,_4d,_16,_16,_8,_4,_8,_2, _8,_8, _8,_8,_4d,_16,_16,_4d,_16,_16,_8,_8,_8,_16,_16,_4d,_16,_16,_4d,_16,_16,_8,_4,_8,_2, _4,_4,_4d,_16,_16,_4d,_16,_16,_8,_8,_8,_16,_16,_4d,_16,_16,_4d,_16,_16,_8,_8,_8,_16,_16,_2, _4,_4,_4d, _16, _16, _4d,_16, _16,_8, _8,_8,_16, _16,_2,_4d, _8, _4d, _16,_16,_8, _8,_8, _8,_8, _8,_4,_4d, _16,_16,_4d, _16,_16,_8,_8, _8,_8, _2,_4d, _8,_2,_8, _8,_8, _8,_8, _8,_8,_8,_16, _16, _8,_2,_4,_4, _4,_4, _4,_4d, _16,_16,_4d, _16,_16,_8, _8,_8, _16,_16, _2,_4d, _8,_4d, _16,_16,_8, _8,_8, _8,_8, _8,_4,_4d, _16,_16,_4d, _16,_16,_8, _8,_8, _8,_2,_4d, _8,_2,_8, _8,_8, _8,_4d, _8,_1,_2,_4,_8,_8,_4d,_16,_16,_4d,_16,_16,_8,_8,_8d,_16,_4d,_16,_16,_4d,_16,_16,_8,_4,_8,_4d,_8,_4d,_16,_16,_4d,_16,_16,_4d,_16,_16,_8,_8,_8d,_16,_4d,_16,_16,_4d,_16,_16,_8,_8,_8,_8,_1,_1,_8,_8,_8d, _16,_4,_16,_16,_16,_16,_4d,_16,_16,_8,_8,_8,_8,_1,_1,};//沉默是金const uint32 HCMM4[] ={_DO, _LA,_SO,_DO, _RE, _MI,_SO,_RE,_DO,_DO,_MI, _SO, _SO,_LA, _SO, _SO,_MI,_RE,_MI, _MI, _MI, _RE, _DO,_DO,_LA,_DO,_DO,_RE,_DO,_DO,_LA, _SO, _MI, _SO,_LA,_DO,_DO,_RE,_DO,_DO,_LA,_SO,_MI,_SO,_SO,_SO,_LA,_MI,_MI,_SO,_MI,_RE,_LA,_SO,_MI,_RE,_MI,_SO,_RE,_LA,_SO,_MI,_RE,_DO,_DO,_DO,_RE,_MI,_MI,_MI,_RE,_DO,_LA, _DO,_DO, _LA,_SO,_SO,_LA, _DO, _DO, _RE, _DO,_DO, _LA,_SO,_MI, _SO,_LA, _DO, _DO,_RE, _DO,_LA, _SO,_SO,_LA, _MI,_MI,_SO,_MI,_RE, _MI, _RE, _RE,_MI,_FA,_SO,_MI,_SO, _SO,_LA, _SO,_SO,_MI,_RE,_MI, _MI,_MI, _RE,_DO,_DO,_LA, _DO,_DO, _RE,_DO,_DO,_LA,_SO,_MI, _SO,_LA,_DO, _DO,_RE, _DO,_DO,_LA,_SO,_MI,_SO, _SO,_SO, _LA,_MI,_MI,_SO,_MI,_RE, _RE,_LA, _SO,_MI, _RE,_DO,_DO,_DO,_SO, _MI,_RE, _LA,_SO, _MI,_RE,_DO, _SO,_MI,_RE, _LA,_SO, _MI,_RE,_DO,};/* 歌曲节拍*/const uint32 HCMM_L4[] ={_2d, _1,_2d,_2d, _8, _8,_1,_1,_1,_1,_8, _8, _8,_16, _16, _4,_16,_8d,_8, _8, _8, _16, _16,_2,_8,_8,_8,_16,_16,_4,_8, _8, _8,_1,_8,_8,_8,_16,_16,_4,_8,_8,_8,_8,_8,_8,_16,_16,_4,_8,_8,_4d,_8,_4,_8,_8,_8,_1,_4d,_8,_4,_8,_8,_1,_4,_8,_16,_16,_8,_8d,_16,_8d,_8, _8,_8, _16,_16,_2,_8, _8, _8, _16, _16,_4, _8,_8,_8,_1,_4d, _8, _8,_8, _4,_8, _8,_8,_16, _16,_4,_8,_8,_4d, _8, _4, _8,_8,_8,_1,_8,_8, _8,_16, _16,_4,_16,_8d,_8, _8,_8, _16,_16,_2,_8, _8,_8, _16,_16,_4,_8,_8,_8,_1,_8,_8, _8,_16, _16,_4,_8,_8,_8,_8, _8,_8, _16,_16,_4,_8,_8,_8, _4,_8, _8,_4, _8,_1,_1,_2d,_8, _8,_4d, _8,_8, _4,_8,_2d, _8,_8,_4d, _8,_8, _4,_8,_1,};const uint32 KEY1=1<<16;const uint32 KEY2=1<<17;const uint32 KEY3=1<<18;const uint32 KEY4=1<<19;const uint32 KEY5=1<<20;void Delay(uint8 dly){uint32 i;for(; dly > 0; dly--)for(i = 0; i < 0x7FFFF; i++);}/****************************************************************************** **************************** 函数名称:MSPI_Init()** 函数功能:初始化SPI接口,设置为主机。

相关文档
最新文档