电子琴实训报告范文.doc_第1页
电子琴实训报告范文.doc_第2页
电子琴实训报告范文.doc_第3页
电子琴实训报告范文.doc_第4页
电子琴实训报告范文.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

电子琴实训报告范文 项目描述 电子琴是现代科技与音乐结合的产物,是一种新型的键盘乐器。电子琴在现代音乐中扮演着重要的角色。单片机具有强大的控制功能和灵活的编程实现特性,它已经融入现代人们的生活中,成为不可替代的一部分。本项目中的主要内容是以AT89C51单片机为核心的控制元件,设计一个多音阶电子琴。它具有硬件电路简单,软件功能完善,控制系统可靠,性价比高等优点,具有一定的实用价值。 项目要求 基于AT89C51单片机的多音阶电子琴设计要求如下: (1)由4*4组成16个按键矩阵,设计成16个音节。 (2)可随意弹奏想要表达的音乐。 系统设计 3.1框图设计 基于AT89C51单片机的多音阶电子琴系统框图 硬件设计 4.1电路原理图 4.2元器件清单 序号元件名称规格数量用途 151单片机AT89C511控制核心 2晶振12M立式1晶振电路 3三极管90121音频放大电路 4按键16按键电路 5电解电容10uF/10V1复位电路 6瓷片电容30PF瓷片电容2晶振电路 7电阻10K1音频放大电路 电阻4.7K1 电阻100欧1 8喇叭8欧/0.5W1扬声器 9电源5V/0.5A1提供+5V 软件设计 5.1程序流程图 5.2电子琴程序: ORG0000H LJMPMAIN ORG000BH LJMPTIMER0 ORG0100H MAIN: DATABUFDATA30H MOVDPTR,#TAB MOVTMOD,#01H;设置定时器0和定时器1工作方式1下 SETBEA;开中断 SETBET0;开定时器0中断 START: MOVR7,#11110111B;R7暂存键扫描码,低4位作为键扫描输出 MOVR6,#00H;R6作为键值的暂存寄存器 MOVR5,#04H;R5作为行扫描的计数器 MOVP2,R7;扫描口送P2口 KEY_SCAN: MOVR4,#04H;R4作为列扫描的计数器 ORLP2,#0F0H;设置P2.4P2。7为读引脚模式 MOVA,P2;读P2口引脚的数据 MOVDATABUF,A;将读入的P2口数据存入DATABUF单元 SETBC;CY=1 LINE_DEC: RLCA;A中数据循环左移 JNCKEY_VAL;若CY=0,表明某列某键被按下,转去执行取键值程序 INCR6;若CY=1,某列无按键被按下,R6递增 DJNZR4,LINE_DEC;判断每行的第4列是否扫描完毕,没有则继续 MOVA,R7;每行的4列都扫描完,无按键下,去扫描码 RRA;右移A中的数据 MOVR7,A;扫描码存回R7 MOVP2,A;扫描码送P2口 DJNZR5,KEY_SCAN;判断4行是否扫描完毕 LJMPSTART;扫描完的话,跳回START KEY_VAL: LCALLDELAY20MS;延时20ms ORLP2,#0F0H;置P2口为读引脚 MOVA,P2;P2口数据送给A CJNEA,DATABUF,START;新读入的数据和上次读入的数据比较,若相同表明是某键被按下 MOV31H,R6;R6中存的是对应的键值送31H单元保存 LCALLTABLE;调用查表程序,给定时器0赋初值 SETBTR0;启动T0 LOOP: MOVP2,#0F0H MOVA,P2 CJNEA,#0F0H,LOOP;判断按键是否释放 CLRTR0;已释放按键,关闭T0 LJMPSTART ;*定时器0中断服务程序* TIMER0: PUSHACC PUSHPSW CLRTR0;关闭T0 MOVTH0,32H;TH0(),计数器初值高位赋值 MOVTL0,33H;(),计数器初值低位 SETBTR0;启动 CPLP1.0;.输入取反 POPPSW POPACC RETI DELAY20MS:;延时ms子程序 MOVR1,#20 LOOP2:MOVR0,#149 LOOP1:DJNZR0,LOOP1 DJNZR1,LOOP2 RET TABLE: MOVA,31H CLRC RLCA MOVR2,A MOVCA,A+DPTR MOV32H,A MOVTH0,A INCR2 MOVA,R2 MOVCA,A+DPTR MOV33H,A MOVTL0,A RET ;每个音符对应的计数初值表 TAB: DW64021,64103,64260,64400 DW64524,64580,64684,64777 DW64820,64898,64968,65030 DW65058,65110,65157,65178 END 5.3AT98C51引脚图 AT89S51单片机引脚介绍 牐燗T89S51有PDIP、PLCC、TQFP三种封装方式,其中最常见的就是采用40Pin封装的双列直接PDIP封装,芯片共有40个引脚,引脚的排列顺序为从靠芯片的缺口(见

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论