600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > 毕业设计 单片机MP3音乐播放器系统 - 物联网 嵌入式

毕业设计 单片机MP3音乐播放器系统 - 物联网 嵌入式

时间:2023-07-08 21:29:19

相关推荐

毕业设计 单片机MP3音乐播放器系统 - 物联网 嵌入式

文章目录

1 简介2 主要器件3 实现效果4 设计原理核心算法:音频解码流程 5 部分实现代码6 最后

1 简介

Hi,大家好,今天向大家介绍一个学长做的单片机项目

基于单片机的MP3设计与实现

大家可用于 课程设计 或 毕业设计

2 主要器件

对于便携式 MP3 系统, 主要考虑的是其体积小巧、 低功耗、 高容量、 低价格, 一个 MP3 播放器主要应包括:

(1) 单片机控制系统(2) 大容量的移动存储设备(3) MP3 解码器(4) D/A 转换芯片(5) 音频放大电路(6) USB 接口(7) LCD 显示和键盘电路

3 实现效果

4 设计原理

学长主要实现一个 MP3 播放器的功能, 由于涉及文件传输和存储问题, 所以附带需要实现 USB 存储器的功能。 整个系统由 AT89C51SND1C(MCU)、 K9F2808U0A(Flash 芯片), 电源部分、 音频部分、 串行通信部分和人机接口部分组成。

MCU 部分: 控制整个系统, 提供 USB 控制和 MP3 解码功能;Flash 芯片: 存放系统文件;电源部分: 提供系统工作所需要的电源, 包括 1 个升压和 1 个降压部分;音频部分: 把数据流转化为声音信号;人机接口部分: 包括按键和 LED 指示等等

为了方便调试, 系统中还提供了串行通信部分, 在这个部分中主要详细介绍电源、

音频部分。

电源部分: 整个开发板上所有芯片统一采用 3. 3 伏供电, 对开发板的供电采取 2

种形式: USB 供电和 7 号电池供电。

USB 供电模式: USB 供电参数如下: USB 接口提供 5V 电压和 200mA 电流, Imax=500mA;

PC 机为 500mA; 笔记本电脑为 100mA。

核心算法:音频解码流程

5 部分实现代码

解码程序头文件#define unit nusingned int#define uchar unsingned char#define MP3_ON 1#define MP3_OFF 0Bit MP3 _SwitchUchar Key_VolUchar Key_BasUchar Key_MedUchar Key_Tre//以上为键盘读入的声音控制参数//MP3COM 寄存器内部位定义sbit MPEN=MP3CON^7sbit MPBBST= MP3CON^6sbit CRCET=MP3CON^5sbit MSKANC=MP3CON^4sbit MSKREQ=MP3CON^3sbit MSKLAY=MP3CON^2sbit MSKSYN=MP3CON^1sbit MSKCRC=MP3CON^0//MP2STA1 寄存器内部位定义sbit MPFREQ=MP3STA1^4sbit MPFREQ=MP3STA1^3Mp3_Reg_Init();Mp3_Data_Input();Mp3_Error_Del()Mp3_Clk_Set()Mp3_Audio_Contr()Mp3_AncData_Del()void Mp3_Int_Del()解码程序#include<mp3_contr.h>#include<regsnd1.h>Mp3_Reg_Init(){If(MP3_Switch= = MP3_ON){MP3CON=0xBF;}else MP3CON=px3F;}MP3_Data_Input(){If ((MPFREQ= =1 )&&(MPBREQ= =1)= =1){MP3DAT= MP3_Data;}}MP3_Error_Del(){If(ERRLAY= =1){//提示}If(ERRCRC= =1){// go on}//以上两部分对应的错误提示用户可以自行根据系统进行设置If(ERRSYN= =1){MP3_Data_Input();}}MP3_Clk_Set(){If(MPVER= =1){MP3CLK=0}Else{MP3CLK=1;}}MP3_Audio_Contr(){MP3VOL = Key_Vol;MP3VOLR= Key_Yol;MP3MED = Key_Med;MP3TRE = Key_Tre;MP3BAS = Key_Bas;}MP3_AncData_Del(){//留出接口供调用}Void MP3_Int_Del() interrupt 5 using 2{if(MPREQ= =1)//缺少数据{MP3_Data_Input();}else if(MPANC= =1)//处理附加数据{MP3_AncData_Del();}eles MP3_Error_Del();}

6 最后

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。