基于单片机的简易MP3
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 项目概述和要求
1.1 项目开发背景
随着电子科技的飞速发展,电子技术正在逐渐改善着人们的学习、生活、工作,因此开发本系统希望能够给人们多带来一点生活上的乐趣。
基于当前市场上的玩具市场需求量大,其中电子琴就是一个很好的应用方面。单片机技术使我们可以利用软硬件实现电子琴的功能,从而实现电子琴的微型化,可以用作玩具琴、音乐转盘以及音乐童车等等。并且可以进行一定的功能扩展。鉴于传统电子琴可以用键盘上的“1”到“A”键演奏从低So到高DO等11个音,从而可以用来弹奏喜欢的乐曲。该设计将十一个琴键改成16个,使电子琴的功能更加完美。不但可以实现对乐曲的演奏,同时还具有存储音乐、播放歌曲以及显示按键的功能。使该设计功能更加完善。
1.2 项目目的
利用AT89C51单片机自带资源,设计一款能实现弹奏和带存储功能的电子琴。
(1)能够对电子电路、电子元器件、印制电路板等方面的知识有进一步的认识,独立对其进行测试与检查。
(2)熟悉8051单片机的内部结构和功能,合理使用其内部寄存器,能够完成相关软件编程设计工作。
(3)为实现预期功能,能够对系统进行快速的调试,并能够对出现的功能故障进行分析,及时修改相关软硬件。
(4)对软件编程、排错调试、焊接技术、相关仪器设备的使用技能等方面得到较全面的锻炼和提高。
1.3设计要求
①设计出15个音符,随意弹奏,按“0”键为音乐休止符,不发声,用它时间的长短表示休止时间的长短。
②用功能键转换成歌曲演奏,可播放预存的音乐。
③可存储现场弹奏的音乐。
[扩充功能]:
④采用LCD显示信息,开机时有欢迎提示符,播放时显示歌曲序号(或名称)。
⑤显示乐曲播放时间或剩余时间。
2 系统硬件设计
2.1电子琴原理
在介绍总体方案之前,先简单介绍一下电子琴的发生原理以及如何改变音色的基本原理:声音的频谱范围约在几十到几千赫兹, 若能利用程序来控制单片机某个口线不断输出“高”“低”电平, 则在该口线上就能产生一定频率的方波, 将该方波接上喇叭就能发出一定频率的声音, 若再利用程序控制“高”“低”电平的持续时间, 就能改变输出波形的频率从而改变音调。乐曲中, 每一音符对应着确定的频率, 下表给出各音符频率。如果单片机某个口线输出“高”“低”电平的频率和某个音符的频率一样, 那么将此口线接上喇叭就可以发出此音符的声音[1]。
本系统就是根据此原理设计, 对于单片机来说要产生一定频率的方波大致是先将某口线输出高电平然后延时一段时间再输出低电平, 如此循环的输出就会产生一定频率的方波, 通过改变延时的时间就可以改变输出方波的频率。单片机内部有两个位的定时计数器T1和T0, 单片机的定时计数器实际上是个计数装置它既可以对单片机的内部晶振驱动时钟计数也可以对外部输入的脉冲计数, 对内部晶振计数时称为定时器, 对外部时钟计数时称为计数器。当对单片机的内部晶振驱动时钟计数时,每个机器周期定时计数器的计数值就加, 当计数值达到计数最大值时计数完毕并通知单片机的尸比对外部输入的时钟信号计数时, 外部时钟的每个时钟上升沿定时计数器的计数值就加, 当计数值达到计数最大值时计数完毕并通知单片机。
因此, 如果知道单片机的机器周期或者外部输入时钟信号的周期单片机就可以根据定时器的计数值计算出定时的时间。用此方法定时十分准确, 想得到多大的延时时间就可以给定时器赋一定的计数初值, 定时器从预先设置的计数初值开始不断增当增加到计数最大值时计数完毕, 调整计数初值的大小就可以调整定时器定时的时间, 从而达到准确的延时。
2.2系统结构
本系统主要由四部分组成:
(1)键盘:控制系统和演奏音乐
(2)扬声器:发声
(3)LED:显示欢迎界面,显示操作,显示演奏音乐歌词(后期开发计划)
(4)AT89C51:系统控制中心 系统结构图如图2-1所示。
图2-1 系统结构图
2.3 硬件部分总体方案
51单片机P0口通过8155扩展,连接4*8的矩阵键盘,作为琴键键盘和相应的功能控制键;并P2口一起,与EPROM 连接;P0口则接通不通音色的滤波电路,通过程序控制P0口,选通不通的琴声音色滤波电路,使电子琴发出不同音色的声音。
硬件电路包括中心控制模块、播放模块、按键控制模块三大模块。其电路图如图2-2所示:
振荡器
分频器
电源
键 盘
放大器
扬声器
1
2
3
4
5
Title Num
Size B Date:26-M File :
D:\Pr
V c c
40
E A
31
R S T
9
G N D
20
X 1
19
X 2
18
P1.0
1
P1.1
2P1.2
3P1.3
4P1.4
5P1.5
6
P1.6
7P1.7
8P3.0/RXD
10P3.1/TXD
11P3.2/INT0
12P3.3/INT1
13P3.4/T0
14P3.5/T1
15P3.6/WR
16P3.7/RD
17P0.0/AD0
39
P0.1/AD1
38P0.2/AD2
37P0.3/AD3
36P0.4/AD4
35P0.5/AD5
34
P0.6/AD6
33P0.7/AD7
32ALE 30
PSEN
29P2.7/A15
28
P2.6/A14
27P2.5/A13
26P2.4/A12
25P2.3/A11
24P2.2/A10
23P2.1/A9
22P2.0/A821U1
AT89S51
R110K R210K
R310K
Y112MHz
C7
30pF C630pF
12345678P1
HEADER 8
S1SW -PB
S2SW -PB
S3SW -PB
S4SW -PB
S5SW -PB S6SW -PB S7SW -PB S8SW -PB S9SW -PB S10SW -PB S11SW -PB S12SW -PB S13SW -PB S14SW -PB S15SW -PB S16SW -PB C1
10uF
VCC
Vcc 6IN+3IN-2BYPASS 7
V OUT 5GAIN 1GAIN 8GND
4
U2
LM386
C2
10uF C3
0.1uF VCC
C4
10uF R4
10K C50.1uF
LS1
扬声器
CR4CR3CR2CR1BR4BR3BR2BR1
C R 4
C R 3C R 2C R 1B R 4B R 3B R 2B R 1a
g d e
f
b
c d p a
7
b 6
c 4
d 2
e 1
f 9G N D
3
G N D
8
g 10dp 5U3
DP Y7_SEG_DP
R4220
图2-2 电子琴电路图
2.4元件清单
1) AT89C51
AT89C51是一种带4K 字节闪存可编程可擦除只读存储器(FPEROM —Flash Programmable and Erasable Read Only Memory )的低电压,高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K 字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL 高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出