单片机课程设计报告基于AT89S52的简易电子琴

上传人:公**** 文档编号:447343138 上传时间:2023-04-14 格式:DOC 页数:19 大小:509.50KB
返回 下载 相关 举报
单片机课程设计报告基于AT89S52的简易电子琴_第1页
第1页 / 共19页
单片机课程设计报告基于AT89S52的简易电子琴_第2页
第2页 / 共19页
单片机课程设计报告基于AT89S52的简易电子琴_第3页
第3页 / 共19页
单片机课程设计报告基于AT89S52的简易电子琴_第4页
第4页 / 共19页
单片机课程设计报告基于AT89S52的简易电子琴_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《单片机课程设计报告基于AT89S52的简易电子琴》由会员分享,可在线阅读,更多相关《单片机课程设计报告基于AT89S52的简易电子琴(19页珍藏版)》请在金锄头文库上搜索。

1、武夷学院单片机原理与应用课程设计报告基于AT89S52的简易电子琴院 系 :机电工程学院专业(班级):xx电子信息工程(x)姓 名:xxx学 号:xxxxxxxxxxx指导教师:xxxx职 称:讲师完成日期: 2013 年 12月 20 日目 录1 设计任务- 1 -2 系统设计方案- 1 -2.1 设计目的- 1 -2. 2设计要求- 1 -3 系统硬件设计- 1 -3.1 基本原理- 1 -3.2 芯片及原理图介绍- 3 -3.2.1 AT89C52简介- 3 -3.2.2 电子琴设计的原理图- 3 -3.3 各个模块介绍- 3 -3.3.1 系统硬件设计- 4 -3.3.2 子系统模块一

2、- 4 -3.3.3 子系统模块二- 5 -3.3.4 子系统模块三- 5 -3.3.5 AT89C52晶振模块- 6 -4 系统软件设计- 6 -4. 1 软件设计总流程图流程- 7 -4. 2 软件程序- 8 -5 系统的硬件调试及软件调试- 8 -5.1 软件调试- 8 -5、2 硬件调试- 9 -6 课程设计心得体会- 10 -参 考 文 献- 11 -附录1 源程序- 12 -附录2 仪器清单- 16 -附录3 系统原理图- 17 - / 文档可自由编辑打印简易电子琴1 设计任务实现电子琴发声控制系统;要求电路实现如下功能:利用蜂鸣器作为发声部件,两个数码管作为显示部件,设置16个按

3、键,实现高音、中音、低音的1、2、3、4、5、6、7的发音。用PROTEUS实现的电子琴仿真设计。说明:单片机的工作时钟频率为11.0592MHz。2 系统设计方案2.1 设计目的本次设计提出了用AT89C52单片机为核心控制元件,设计一个简易的电子琴. 本方案以AT89C52单片机作为主控核心,与键盘、蜂鸣器等模块组成核心主控制模块在主控模块上设有4*4个按键和蜂鸣器。根据使用者的操作随意弹奏想要表达的音乐。一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定

4、时/计数器T0来产生这样方波频率信号。2. 2设计要求1、4*4键盘组成16个按钮,可以随意弹奏想要表达的音乐。2、通过数码管显示按的是哪个键,发出哪个音高。3 系统硬件设计 3.1 基本原理 要产生音频脉冲,只要算出某一音频的周期(1/频率),再将此周期除以2,即为半周期的时间。利用定时器计时半周期时间,每当计时终止后就将P3.3反相,然后重复计时再反相。就可在P3.3引脚上得到此频率的脉冲。利用AT89C52的内部定时器使其工作计数器模式(MODE1)下,改变计数值TH0及TL0以产生不同频率的方法产生不同音阶,例如,频率为523Hz,其周期T1/5231912s,因此只要令计数器计时95

5、6s/1s956,每计数956次时将I/O反相,就可得到中音DO(523Hz)。计数脉冲值与频率的关系式是:Nfi2fr,式中,N是计数值;fi是机器频率(晶体振荡器为12MHz时,其频率为1MHz);fr是想要产生的频率。其计数初值T的求法如下:T65536N65536fi2fr例如:设K65536,fi1MHz,求中音DO(261Hz)。T65536N65536fi2fr6553610000002fr65536500000/fr,中音DO的T65536500000/52364580。 单片机12MHZ晶振,中音符与计数T0相关的计数值如表所示:音符频率(HZ)简谱码(T值) 音符频率(HZ

6、)简谱码(T值)低1DO26263628# 4 FA#74064860#1DO#27763731中 5 SO78464898低2RE29463835# 5 SO#83164934#2 RE#31163928中 6 LA88064968低 3 M33064021# 693264994低 4 FA34964103中 7 SI98865030# 4 FA#37064185高 1 DO104665058低 5 SO39264260# 1 DO#110965085# 5 SO#41564331高 2 RE117565110低 6 LA44064400 # 2 RE#124565134# 64666446

7、3高 3 M131865157低 7 SI49464524高 4 FA139765178中 1 DO52364580# 4 FA#148065198# 1 DO#55464633高 5 SO156865217中 2 RE58764684# 5 SO#166165235# 2 RE#62264732高 6 LA176065252中 3 M65964777# 6186565268中 4 FA69864820高 7 SI196765283用单片机播放音乐,或者弹奏电子琴,实际上是按照特定的频率,输出一连串的方波。为了输出合适的方波,首先应该知道音符与频率的关系。3.2 芯片及原理图介绍3.2.1 A

8、T89C52简介 AT89C52(图1-1)为8位低功耗单片机,采用工业标准的C51内核,在内部功能及管脚排布上与通用的8xc52 相同,其主要用于会聚调整时的功能控制。功能包括对会聚主IC 内部寄存器、数据RAM及外部接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号IR的接收解码及与主板CPU通信等。主要管脚有:XTAL1(19 脚)和XTAL2(18 脚)为振荡器输入输出端口,外接12MHz 晶振。RST(9 脚)为复位输入端口,外接电阻电容组成的复位电路。VCC(40 脚)和GND(20 脚)为供电端口,分别接+5V电源的正负端。P0P3 为可编程通用I/O 脚,其功能

9、用途由软件定义,在本设计中,P0 端口(3239 脚)定义为双向8位三态I/O接口,它既可以作为通用I/O接口,又可作为外部扩展时的数据总线及低8位地址总线的分时复用口;P1端口(18脚)定义为准双向I/O接口,内部具有上拉电阻;P2端口(2128脚)定义为8位准双向I/O接口,内部具有上拉电阻,可直接连接外部I/O设备,同时与地址高8位复用;P3端口(1017)定义为8位准双向I/O接口,内部具有上拉电阻,它是双功能复用口,每个引脚可驱动4个TTL负载。 图1-1 AT89C52 3.2.2 电子琴设计的原理图(见附录) 3.3 各个模块介绍本系统采用单片机AT89C52为电子琴的控制核心,

10、系统主要包括按键弹奏模块,数码管显示模块。下面对各模块的设计逐一进行论证比较。3.3.1 系统硬件设计 按键控制模块 键盘弹奏按键发声 蜂鸣器中心控制模块 AT89C52停止键 开始键 播放键 音乐播放 蜂鸣器图2-1 总体硬件组成框图实验中每按下一个琴键,单片机能够检测到键盘的按键,并根据按键的位置,通过程序来控制,使喇叭发出不同频率(音调)的声音,声音延迟一段时间,等到按键放开之后,声音停止。然后再继续扫描,看是否有键按下。如此循环,即可实现基本的琴键功能。3.3.2 子系统模块一琴键模块如图2-2所示,利用AT89C52单片机的P1端口及P2端口与键盘(图2-2 a)、数码管(图2-2

11、b)的连接。 图2-2(a) 单片机与键盘的连接 图2-2 (b)单片机与数码管的连接3.3.3 子系统模块二播放模块是蜂鸣器构成。蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。蜂鸣器在电路中用字母“H”或“HA”(旧标准用“FM”、“LB”、“JD”等)表示。而且由于所需驱动功率较小,且价格低廉,所以,被广泛应用。 图2-3 发声模块电路图 3.3.4 子系统模块三电子琴设有16个按键,分别代表16个音符,包括中音段的全部音符。通过

12、软硬件设计,按键触发外部中断,中断使程序跳转,实现模式转换,启动电子琴。然后通过查询电子琴所按下的按键,读取电子琴输入状态,跳转到对应的程序人口,实现各种琴键的声音。矩阵键盘模块图如下: 图2-4 矩阵键盘模块3.3.5 AT89C52晶振模块 XTAL1脚为片内振荡电路的输入端,XTAL2脚为片内振荡电路的输入端。8952的时钟有两种方式:一种是片内时钟振荡方式,但需在18和19脚外接石英晶体(频率为1.212MHZ)和振荡电容,振荡电容值一般取1030pf,典型值为30pf;另一种是外部时钟方式,即将XTAL1接地,外部时钟信号从XTAL2脚输入。下面为方式一电路图。 图2-6 晶振模块4

13、 系统软件设计软件是该电子琴控制系统的重要组成部分,将系统的各部分功能编写成子模块的形式,这样增强了系统软件的可读性和可移植性。KEIL C51 Vision2集成开发环境是KEIL Software,Inc/KEIL electronik GmbH开发的基于80C51内核的微处理器软件开发平台,内嵌多种符合当前工业标准的开发工具,可以完成从工程建立到管理、编译、链接、目标代码的生成、软件仿真、硬件仿真等完整的开发流程尤其是C编译工具在产生代码的准确性和效率方面达到了较高的水平,而且可以附加灵活的控制选项,在开发大型项目时非常理想。4. 1 软件设计总流程图流程4. 2 软件程序本系统的上位机软件主要是编辑电子琴播放状态的内容,在设计中采用C语言编写了电子琴控制系统控制和播放内容的程序。见附录一。5 系统的硬件调试及软件调试5.1 软件调试。利用protuse与keil联调,对电路原理图进行仿真。当按下K0按键的时候,数码管显示如下,同时,蜂鸣器发出音乐的(音高)。 当按下K6按键的时候,数码管显示如下,同时,蜂鸣器发出音乐(音高。)5、2 硬件调试。将焊接好的硬件接到电源上

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号