1、 毕业设计(论文) 题 目 基于单片机的简单电子琴设计 系 ( 分 院 ) 机 械 电 子 工 程系 学 生 姓 名 学 号 专 业 名 称 电 子 信 息 工 程 指 导 教 师 基于单片机的简单电子琴设计 摘 要:随着社会的发展进步,音乐逐渐成为我们生活中很重要的一部分,有人曾说喜欢音 乐的人不会向恶。我们都会抽空欣赏世界名曲,作为对精神的洗礼。本论文设计一个基于单片机 的简易电子琴。 电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重 要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中, 成为不可替代的一部分。 本文的主要内容
2、是用 AT89S52 单片机为核心控制元件, 设计一个电子琴。 本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有 一定的实用和参考价值。 关键词:单片机 电子琴 AT89S52 一、 系统硬件设计及说明 1.1 系统组成及总体框图 硬件设计的任务是根据总体设计要求,在选择的机型的基础上,具体确定系统中 所要使用的元器件,设计出系统的原理框图、电路原理图。 该设计要实现一种由单片机控制的电子琴,单片机工作于 12MHZ 时钟频率,使 用其定时/计数器 T0,工作模式为 1,改变计数值 TH0 和 TL0 可以产生不同频率的脉 冲信号。该设计具有 11 个音节的
3、键盘,用户可以根据乐谱在键盘上进行演奏,音乐 发生器会根据用户的弹奏,通过扬声器将音乐播放出来。由于本例实现的音乐发生器 是由用户通过键盘输入弹奏乐曲的,所以节拍由用户掌握,不由程序控制。用单片机 产生的音频脉冲直接驱动扬声器并不能产生所要实现的音乐,因为它没有足够的驱动 能力,这就需要音频功率放大电路。 本例使用国家半导体公司的低压音频功率放大器 LM386 来实现音频功放电路。 键 盘 扫 描 A T89S52 LED 灯光显示 扬声器播放音乐 系统结构图 1.2 显示电路 本次毕业设计的显示电路采用LED数码管显示, 由于 LED是属于电流控制器件, 使用时必须加限流电阻。通过单片机查表
4、得出数码管显示编码,传送给数码管显示, 以此来实现按键与显示程序的一致性。 二、 系统软件设计 2.1 音乐相关知识 乐音听起来有的高,有的低,这就叫音高,音高是由发音物体振动频率的高低决 定的,频率高声音就高,频率低,声音就低,不同音调的乐音是用 C、D、E、F、G、A、 B 表示的,这 7 个字母就是乐音的音名,它们一般依次唱成 DO、RE、MI、FA、SO、LA、 SI,这是唱曲时乐音的发音,所以叫唱名。 音持续时间的长短即时值,一般用拍数表示,休止符表示暂停发音。 一首音乐是由许多不同的音符组成的,而每个音符对应着不同的频率,这样就可 以利用不同频率的组合,加以与拍数对应的延时,构成音
5、乐。 2.2 如何用单片机实现音乐的节拍 除了音符以外,节拍也是音乐的关键组成部分。 节拍实际上就是音持续时间的长短, 在单片机系统中可以用延时来实现, 如果 1/4 拍的延时是 0.4 秒,则 1 拍的延时是 1.6 秒,只要知道 1/4 拍的延时时间,其余的节 拍延时时间就是它的陪数。如果单片机要自己播放音乐,那么必须在程序设计中考虑 到节拍的设置,由于本例实现的音乐发生器是由用户通过键盘输入弹奏乐曲的,所以 节拍由用户掌握,不由程序控制。对于不同的曲调我们也可以用单片机的另外一个定 时/计数器来完成。音乐的音拍,一个节拍为单位(C 调)具体如下表: 表 2-1 音乐节拍表 曲调值 DEL
6、AY 曲调值 DELAY 调 4/4 125ms 调 4/4 62ms 调 3/4 187ms 调 3/4 94ms 调 2/4 250ms 调 2/4 125ms 2.3 如何用单片机产生音频脉冲 了解音乐的一些基本知识后可知,产生不同频率的音频脉冲即能产生音乐,对于 单片机而言,产生不同频率有脉冲非常方便,可以利用它的定时/计数器来产生这样 的方波频率信号,因此,需要弄清楚音乐中的音符和对应的频率,以及单片机定时计 数的关系。 在本实验中,单片机工作于 12MHZ 时钟频率,使用其定时/计数器 T0,工作模式 为 1,改变计数值 TH0 和 TL0 可以产生不同频率的脉冲信号,在此情况下,C 调的各 音符频率与计数值 T 的对照如下表: 表 2-2 音符频率与计数值 T 的对照表 音符 频率(HZ) 计数值(T 值) 音符 频率(HZ) 计数值 (T值) 低 1DO 262 63628 #4FA# 740 64860 #1DO# 277 63737 中