摘要:单片机在各种电子设计当中得到了广泛的使用,想要设计一款简易的电子琴,首先它的研究方法就应该主要集中在单片机上,用单片机STC89C52作为主要的控制部件来驱动声音,用C语言将音乐的相关知识与单片机联系起来,由于单片机中传出来的脉冲频率小,不在人耳的可听范围内,所以应该运用一个放大器件来对声音进行放大,从而通过扬声器传出来。
基于STC89C52单片机作为核心的控制芯片。在声音传出硬件的选择上,没有选择单一的蜂鸣器发声,而是采用了功率放大器LM386加扬声器的组合来发声,这种方式的优点是音质比单纯采用蜂鸣器悦耳好听。电子琴的弹奏键盘则采用鼠标按键形式来代替传统的的开关按键,这样不仅使设计看起来美观,而且与现实生活中的钢琴有很大的相似度。除此之外还设有2个功能按键,通过单片机的IO口来控制采集按键的状态,以此来实现歌曲的切换和复位等功能。系统的显示部分则采用一位共阳数码管,通过单片机P0口给出数据信号,数码管显示出当前正在播放的音调编号。在软件设计部分选择C语言编程,因为C语言是一种结构化的高级设计语言,它的层次分明便于编写修改,并且简单易懂,可读性较高。
关键词: 电子琴;单片机;STC89C52;
目录
摘要
Abstract
1引言-1
1.1 设计背景-1
1.2 设计意义-2
2 音乐简介-3
2.1 音乐-3
2.2 节拍-3
2.3 音调-3
3 总体设计-4
3.1 设计目的-4
3.2设计要求-4
3.3 设计方案选择-4
3.3.1 按键模块设计方案选择-4
3.3.2 控制模块设计方案选择-4
4 硬件电路设计-6
4.1 整体设计-6
4.1.1 系统整体框图-6
4.1.2 系统整体简介-6
4.2 单片机最小系统-6
4.2.1 最小系统的基础知识-6
4.2.2 最小系统的设计-7
4.3 LM386功放电路-8
4.3.1 LM386-8
4.3.2 LM386引脚-8
4.3.3 LM386驱动扬声器-9
4.4 数码管显示电路-9
4.4.1 数码管-9
4.4.2 数码管驱动方式的分类-10
4.4.3数码管驱动电路-11
4.5 按键输入模块-12
4.6 电源模块-13
5 软件设计-14
5.1 C程序语言-14
5.2 程序总体流程图-14
5.3 单片机的定时器运行-16
5.4 单片机的中断处理程序-17
5.5单片机实现音符-17
5.6 单片机产生音频脉冲-18
6 电路仿真-19
7 硬件焊接与调试-20
7.1 元器件的选择与测量-20
7.2 元器件的焊接-20
7.2.1 焊接注意事项-20
7.2.2 模块焊接-20
7.3 电路的调试-23
7.4 实物演示-23
8 结论-25
参 考 文 献-26
致 谢-28
附 录 A 元 件 清 单-29
附 录 B 原 理 图-30
附 录 C 实 物 图-31