版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、广东保护学院单片机实训报告 学号 姓名 刘少邦 学号 姓名 刘源 班级 电气自动化一班 指导教师 车海波 题目 电子琴 基于51单片机简易电子琴设计摘 要 随着社会的发展进步,音乐逐渐成为我们生活中很重要的一部分,有人曾说喜欢音乐的人不会向恶。我们都会抽空欣赏世界名曲,作为对精神的洗礼。本论文设计一个基于单片机的简易电子琴。我们对于电子琴如何实现其功能,如音色选择、声音强弱控制、节拍器、自动放音功能等等也很好奇。电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分
2、。本文的主要内容是用AT89S51单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器。本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定的实用和参考价值。在电子行业高速发展的今天,单片机已经广泛的应用到了各个行业之中,其中也就包括了我所设计的娱乐项目,随意的弹奏音乐并且伴着灯光的闪烁,这就是我所以利用89C51单片机所设计的声光电子琴,声光电子琴的设计理念完全是利用89c51单片机的功能的研究和理解以及延伸拓展。以下我会详细介绍电路的设计和程序的编制过程。 关键词:89c5
3、1单片机 电路 程序 目 录目 录II第一章 绪论- 1 -1.1 课题背景- 1 -1.2 设计依据- 1 -第二章 系统方案设计及主控芯片介绍- 2 -2.1 系统基本设计思路- 2 -2.2 单元电路方案论证- 2 -2.2.1 控制器模块- 2 -2.2.2 发声模块- 2 -2.2.3 编程软件模块- 3 -2.2.4 最终方案- 3 -2.3 AT89C51单片机- 4 -第三章 硬件电路设计- 5 -3.1 最小系统设计- 5 -3.2 时钟电路- 5 -3.3 复位电路- 6 -3.4 按键控制模块- 6 -3.5 播放模块- 7 -第四章 程序流程- 7 -4.1 程序流程图
4、- 7 -4.2 重点程序分析- 8 -4.2.1 音阶程序- 8 -结 论- 8 -附录 1 主要源程序- 9 -附录 2 原理图- 16 -附录 3 PCB板图- 17 -附录 4 实物图- 18 -第一章 绪论1.1 课题背景单片机因其体积小,功能强,价格低廉而得到广泛应用,同时随着我国经济的飞速发展,单片机在越来越多的领域得到了广泛的应用,现在国内的单片机多用于电话,玩具和LCD等产品,预计在未来,利用单片机发明的产品会越来越多,作为一名应用电子的应届毕业生来说,理解和掌握单片机的工作原理和使用技巧是必备的技能,基于这种考虑,我这次毕业设计的题目为简易电子琴。我所设计的该产品时根据自身
5、的兴趣和爱好所设计的,通过对传统电子琴的认识和了解,知道了传统的电子琴是利用单片机的汇编语言的编程来实现的,而且功能单一,只能弹奏而不能随意的播放音乐,我所设计的产品是基于对89c51单片机的深入理解对传统电子琴的小小的改革和创新,并且以简单的C语言程序替代了复杂的汇编语言程序,声和光是新电子琴的主题,我相信在声光电子琴的不断革新达到人们所需娱乐设备的标准的时候,电子琴会被投入到批量生产之中。单片微型计算机室大规模集成电路技术发展的产物,属于第四代电子计算机它具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点。他的应用必定导致传统的控制技术从根本上发生变革。因此,单片机的开发应用已
6、成为高科技和工程领域的一项重大课题。1.2 设计依据电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用AT89S52单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘扬声器等模块组成核心主控制模块,在主控模块上设有8个按键,和一个复位按键。 主要对使用单片机设计简易电子琴进行了分析,并介绍了基于单片机电子琴硬件的组成。利用单片机产生不同频率来获得我们要求的音阶,最终可随意弹奏要表达的音符。并且分别从原理图,主要芯片,个模块原理及
7、各莫奎的程序的调试来详细阐述。 一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,构成我们想演奏的那首曲目。当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样的方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系编写正确就可以达到我们想要的曲目。第二章 系统方案设计及主控芯片介绍2.1 系统基本设计思路此设计是在LED小灯上显示灯光的变换,扬声器播放弹奏的曲子。电路包括:键盘、单片机及LED显示电路,声音电路。2.1.1 各部分说明(1)键盘用于弹奏音乐,八个按键8种音符。(2)单片机通过输出各种电脉冲信号驱
8、动控制各部分正常工作。(3)单片机发送的信号分别经过LED显示电路通过译码最终在LED小灯和声音电路通过扬声器显示出来。2.1.1系统工作过程单片机要产生音频脉冲,主要处理过程是在CPU中完成的,CPU会随时对音符输入信号进行读取数据的操作。在读取了相应的寄存器的值后,CPU将读取的值进行处理,再通过I/O口把音乐通过扬声器播放出来。2.2 单元电路方案论证根据设计要求,本系统主要由控制器模块、显示模块和输入模块构成。为较好的实现各模块的功能,我们分别设计了以下几种方案并分别进行了论证。2.2.1 控制器模块方案1:采用凌阳系列单片机为系统的控制器凌阳系列单片机可以实现各种复杂的逻辑功能,模块
9、大,密度高,它将所有器件集成在一块芯片上,减少了体积,提高了稳定性。凌阳系列单片机提高了系统的处理速度,适合作为大规模实时系统的控制核心。方案2:采用51系列作为系统控制器单片机算术运算功能强,软件编程灵活、自由度大,可用软件编程实现各种算法和逻辑控制。由于其功耗低、体积较小、技术成熟和成本低等优点,在各个领域应用广泛。而且抗干扰性能好。因51单片机价格比凌阳系列低得多,且本设计不需要很高的处理速度,从经济和方便使用角度考虑,本设计选择了方案2。2.2.2 发声模块发声模块是本设计的最主要的部分。基本方案:发生电路是这次设计电路中最重要的组成部分,他承载着把单片机所产生的声音信号放大并输出的重
10、要作用,而我的设计中的发声电路主要是由两个CS9013组成。CS9013是一种小功率的放大管,属于型号三极管,而对三极管引脚的判断有以下方法。1.判断三极管的基极。对于型号的三极管,用黑表笔接某一个电极,红表笔分别接另外两个电极,若测量电阻值两个都小,调换表笔后被测电阻值都较大,则可判断第一次测量中黑表笔所接的是基极;如果测量值一大一小,相差很大,则第一次测量中黑表笔接的不是基极,应该更换其他电极重测。2.测量三极管发射极e和集电极c。三极管基极确定后,通过交换表笔,两次测量e,c极间的电阻,如果两次测量结果不相等,其中测得电阻值较小的一次为红表笔的是e极黑表笔接的是c极。对于型号的三极管,方
11、法与的相似,只是红黑表笔的作用相反,在测量e,c极间电阻时要注意,由于三极管的V(BR)CEO很小,很容易将发射结击穿。当我们三极管的管脚判断结束以后,我们就可以用两个三极管构成一个达林顿结构。首先当单片机1.0口输出一个高电平,由两个三极管构成的达林顿成能导通,导通后又能对电流又一定的放大作用,这样传到扬声器时信号能让我们听的更清楚。2.2.3 编程软件模块方案1:采用汇编语言编程汇编语言指令是用一些具有相应含义的助忆符来表达的,所以,它要比机器语言容易掌握和运用,但另一方面,它要直接使用CPU的资源,相对高级程序设计语言来说,它又显得难掌握。方案2:采用语言编程C语言与其他高级语言相比,具
12、有运算符的丰富性、语法表述的灵活性、对软硬件操作的兼容性、输入输出方式的新颖性等主要特征.深入分析研究这些特征,可以加深对C语言的认识;正确应用这些特征,可以灵活高效地解决各种实际问题.因为我在大学期间对汇编语言没有深入的了解,而且在编程时一直用C语言,所以我选择了方案2。2.2.4 最终方案经过反复论证,最终确定了如下方案:(1)采用STC89C51单片机作为主控制器。(2)采用达林顿效应使音乐信号放大(3)采用语言编程2.3 AT89C51单片机AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写
13、1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS -51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。 AT89S51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个 全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。 AT89S5
14、1引脚图 此外,AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断 系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三 种封装形式,以适应不同产品的需求。主要功能特性: 兼容MCS-51指令系统 4k可反复擦写(1000次)ISP Flash ROM 32个双向I/O口 4.5-5.5V工作电压 2个16位可编程定时/计数器 时钟频率0-33MHz 全双工UART串行中断口线 128x8bit内部RAM 2个外部中断源
15、低功耗空闲和省电模式 中断唤醒省电模式 3级加密位 看门狗(WDT)电路 软件设置空闲和省电功能 灵活的ISP字节和分页编程 双数据寄存器指针STC89C51是一种带8K字节可编程可檫除只读存储器的低电压、高性能COMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。单片机引脚图如图所示图1 STC89C51单片机引脚图第三章 硬件电路设计3.1 最小系统设计最小系统包括单片机及其所需的必要的电源、时钟、复位等部件,能使单片机始终处于正常的运行状态。电源、时钟等电路是使单片机能运行的必备条件,可以将最小系统作为应用
16、系统的核心部分,通过对其进行存储器扩展、A/D扩展等,使单片机完成较复杂的功能。3.2 时钟电路STC89C51内部有一个用于构成振荡器的高增益反相放大器,引脚RXD和TXD分别是此放大器的输入端和输出端。时钟可以由内部方式产生或外部方式产生。内部时钟在此不做详细介绍。外部方式的时钟电路如图3所示,RXD接地,TXD接外部振荡器。对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率在12MHz左右的方波信号。图2 89c51内部时钟电路3.3 复位电路当在89C51单片机的RST引脚引入高电平并保持2个机器周期时,单片机内部就执行复位操作(若该引脚持续保持高电平,单片机就处于循环复位状态
17、)。复位电路通常采用上电自动复位和按钮复位两种方式。最简单的上电自动复位电路中上电自动复位是通过外部复位电路的电容充放电来实现的。只要Vcc的上升时间不超过1ms,就可以实现自动上电复位。除了上电复位外,有时还需要按键手动复位。本设计就是用的按键手动复位。按键手动复位有电平方式和脉冲方式两种。其中电平复位是通过RST(9)端与电源Vcc接通而实现的。按键手动复位电路见图4。时钟频率用11.0592MHZ时C取10uF,R取10k。图3 89C51 复位电路3.4 按键控制模块电子琴设有11个按键,其中8个作为音符输入。8个按键分别代表8个音符,包括中音段的全部音符,通过软硬件设计。另外3个分别
18、是控制复位、流水灯的转换、自动播放音乐。如下图:3.5 播放模块 播放模块是由2个三极管构成,三级管将信号放大,然后传输到喇叭,喇叭它几乎不存在噪声,音响效果较好。下图是该模块电路: 第四章 程序流程4.1 程序流程图该设计方案是通过按键随意按下所要表达的音符,作为电平送给主体电路,中央处理器通过识别,解码输出音符,在扬声器中发出有效的声音。通过这样可以不断的弹奏我们想要的音符或者是音调,电路由复位电路,指示灯电路,和功能按键电路组成,通过功能键可以选择播放音乐或者弹奏音节,硬件主要有下面几个部分组成。键盘输入AT89S51单片机音频放大喇叭发出声音功 能 选 择(弹奏/播放)4.2 重点程序
19、分析4.2.1 音阶程序uchar code yinfu=0xfb,0xe9, /Do 0xfc,0x5c, /Re 0xfc,0xc1, /Mi 0xfc,0xef, /Fa 0xfd,0x45, /So 0xfd,0x92, /La 0xfd,0xd0, /Si 0xfd,0xee, /Do# 0x00,0x00, /间隔4.2.2 结 论通过对自己在大学里所学的知识的回顾,完成了本设计。它使我运用已有的专业基础知识,对其进行设计,分析和解决一个理论问题或实际问题,把知识转化为能力的实际训练。培养了我运用所学知识解决实际问题的能力。将以调试好的程序烧进AT89S51芯片,再放到电路板中,按
20、下按键就可以发出相应的音。本次试验通过制作电子琴,将几个模块换呢好的融合起来,对使用单片机设计简易电子琴进行了分析,并接受了基于单片机电子期硬件组成。利用单片机产生不同频率来获得我们要求的音阶,最终可随意弹奏想要表达的音乐。说明一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,于是我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可,然后我们利用功放电路来将音乐声音放大,同时同股沟显示模块来确知自己所弹的音符。 通过这次实训设计,我感觉收获了很多:通过这次的单片
21、机实训,我加深了对单片机系列知识及其系统的认识。这个设计题目并不怎么新颖,但从中体现到了个系统开发设计的过程,足以让我们受益匪浅。 在这次的实训中,让我更进一步的提高了动手能力,也重新复习了一次单片机的程序编程能力,在这期间,让我更加深刻了体会到了汇编程序的思路,加强了对编程能力的理解和对相应资料的查阅。附录 1 主要源程序sfr P4=0xe8;/定义P4组I0口#include#define uint unsigned int#define uchar unsigned charsbit speaker=P14;/喇叭接30脚sbit key1=P10;/流水灯按键(暂时)sbit key
22、2=P11;/播放音乐按键(暂定)uchar a,b,num1,s1num,n1,n2;char num;/定义num为可以负数uchar code yinfu=0xfb,0xe9, /Do 0xfc,0x5c, /Re 0xfc,0xc1, /Mi 0xfc,0xef, /Fa 0xfd,0x45, /So 0xfd,0x92, /La 0xfd,0xd0, /Si 0xfd,0xee, /Do# 0x00,0x00, /间隔;uchar code shengri_tone= 1,0,1,2,1,4,3,0, /生日快乐音调 1,0,1,2,1,5,4,0, 1,0,1,8,6,4,3,2,
23、0, 7,0,7,6,4,5,4,0 /0代表不发声,即停顿;数字即为音调; uchar code shengri_beat= 24,1,24,48,48,48,72,5,/节拍 24,1,24,48,48,48,72,5, 24,1,24,48,48,48,48,72,5, 24,1,24,48,48,48,72,5 /节拍,即tone表各音调的延时;uchar code ledtable=0x7f,0xbf,0xdf,0xef, /取反0xf7,0xfb,0xfd,0xfe;/P0组口的发光二极管代码(焊接过程可能会相反,具体更改)uchar code ledtable2=0x7f,0xb
24、f,0xdf,0xef, /取反0xf7,0xfb,0xfd,0xfe;/P2组口发光二极管代码,相反!void check_key();/改为P3组为按键void keyscan();void turn();/顺时针流动void back();void qianhou();void dangshuang();void delay(uint z);/延时函数声明void delay1(void);/声明第二个延时函数void play1(void);/播放生日快乐void main()s1num=0;/流水灯种类标志key1=1;key2=1;TMOD=0x01;TH0=a;TL0=b;ET0
25、=1;/打开定时器,但是未允许中断TR0=1;while(1)check_key();keyscan();void time0() interrupt 1TH0=a;TL0=b;speaker=speaker;void check_key()P3=0xff;/先赋给P2组口高电平switch(P3)/按下一个键相应4个灯亮case 0xfe:P0=0xee;P2=0x77;a=0xfb;b=0xe9;EA=1;break;/P0,P2组为发光二极管组case 0xfd:P0=0xdd;P2=0xbb;a=0xfc;b=0x5c;EA=1;break;/注意:EA不能改为TR0case 0xfb
26、:P0=0xbb;P2=0xdd;a=0xfc;b=0xc1;EA=1;break;case 0xf7:P0=0x77;P2=0xee;a=0xfc;b=0xef;EA=1;break;case 0xef:P0=0xee;P2=0x77;a=0xfd;b=0x45;EA=1;break;case 0xdf:P0=0xdd;P2=0xbb;a=0xfd;b=0x92;EA=1;break;case 0xbf:P0=0xbb;P2=0xdd;a=0xfd;b=0xd0;EA=1;break;case 0x7f:P0=0x77;P2=0xee;a=0xfd;b=0xee;EA=1;break;default:EA=0;speak
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 防疫团队先进事迹(7篇)
- 《供配电技术》6.7 教案
- 实习总结范文汇编(32篇)
- 资产年终总结报告三篇
- 金工钳工实习报告10篇
- 店食品安全管理制度(31篇)
- 期限劳动合同
- 2022年新生军训个人小结800字(6篇)
- 2024年粮油加工机械项目投资申请报告代可行性研究报告
- 技师 大型零件的划线教案模板
- DB15-T 3652-2024 沙化土地综合治理技术规程
- 2024至2030年全球与中国仓储机器人市场现状及未来发展趋势
- 商业银行贵金属业务消费者权益保护实施办法
- 2024年秋新人教版七年级上册数学教学课件 4.1 整式 第1课时 单项式
- 2023-2024学年北京市西城区育才学校七年级(上)期中数学试卷【含解析】
- 北师大版三年级数学上册原创天天练
- 苏教版(2024新版)一年级上册科学全册教案教学设计
- 九年级化学上册 第1单元 走进化学世界教案 (新版)新人教版
- 2024年全国数据应用大赛“数字安全赛”备赛试题库(含答案)
- DB11T 2250-2024重点用能单位能耗在线监测系统接入技术规范
- 上市公司并购重组对股价的影响分析开题报告(修改)
评论
0/150
提交评论