ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:906.44KB ,
资源ID:3220155      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3220155.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单片机实现电子琴课程设计.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

单片机实现电子琴课程设计.docx

1、单片机实现电子琴课程设计第1章 引言当今社会,随着人们物质生活的不断提高,电子产品能够已经走进了家家户户,无论是生活或学习,还是娱乐消遣几乎样样离不开电子产品。单片机由于其微小的体积和极低的成本,广泛应用于家用电器,工业控制等领域中。单片微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。电子琴是高科技在音乐领域的一个代表,它是古典文化与现代文明的一个浓缩体。它不但可以帮助我们的音乐教师进行传统音乐文化的教育教学工作,而且由于它又具备现代与音乐,特别是电子音乐,电脑音乐的基本结构,特征,因而是我们的教师在进行现代音乐、电子

2、音乐、电脑音乐的教学时,更直接、更简便。电子琴是现代电子科技与与音乐结合的产物,是一种新型的键盘乐器。他在现代音乐扮演者重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经融入现代人们的生活中,成为不可替代的一部分。本文的主要内容是以单片机为核心控制元件,设计一个电子琴。以单片机为主控核心,与8255、键盘、扬声器等模块组成核心主控制模块。利用定时器发出不同频率的脉冲,经喇叭放大电路放大滤波后,发出不同的音调。每按键一次发出五十个脉冲,发完后继续检查有无键按下。 第2章 芯片引脚介绍 2.1 8031引脚介绍8051单片机的引脚及相关功能; 40个引脚按引脚功能大致可分为4个种类:

3、电源、时钟、控制和I/O引脚。 电源: VCC - 芯片电源,接+5V; VSS - 接地端; 时钟:XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。 控制线:控制线共有4根, ALE/PROG地址锁存允许/片内EPROM编程脉冲 ALE功能:用来锁存P0口送出的低8位地址 PROG功能:片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。 PSEN:外ROM读选通信号。 RST/VPD:复位/备用电源。 RST(Reset)功能:复位信号输入端。 VPD功能:在Vcc掉电情况下,接备用电源。 EA/Vpp:内外ROM选择/片内EPROM编程电源。 EA功能:内外RO

4、M选择端。 Vpp功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。 I/O线 80C51共有4个8位并行I/O端口:P0、P1、P2、P3口,共32个引脚。 P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线) 5. P3口第二功能 P30 RXD 串行输入口 ,P31 TXD 串行输出口 P32 INT0 外部中断0(低电平有效) P33 INT1 外部中断1(低电平有效) P34 T0 定时计数器0 ,P35 T1 定时计数器1 P36 WR 外部数据存储器写选通(低电平有效) P37 RD 外部数据存储器读选通(低电平有效) 2.2 8255引脚介绍

5、RESET:复位输入线,当该输入端处于高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。 CS:芯片选择信号线,当这个输入引脚为低电平时,即/CS=0时,表示芯片被选中,允许8255与CPU进行通讯;/CS=1时,8255无法与CPU做数据传输. RD:读信号线,当这个输入引脚为低电平时,即/RD=0且/CS=0时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。 WR:写入信号,当这个输入引脚为低电平时,即/WR=0且/CS=0时,允许CPU将数据或控制字写入8255。 D0D7:三态双向数据总线,8255与CPU数据传送

6、的通道,当CPU 执行输入输出指令时,通过它实现8位数据的读/写操作,控制字和状态信息也通过数据总线传送。 PA0PA7:端口A输入输出线,一个8位的数据输出锁存器/缓冲器, 一个8位的数据输入锁存器。 PB0PB7:端口B输入输出线,一个8位的I/O锁存器, 一个8位的输入输出缓冲器。 PC0PC7:端口C输入输出线,一个8位的数据输出锁存器/缓冲器, 一个8位的数据输入缓冲器。端口C可以通过工作方式设定而分成2个4位的端口, 每个4位的端口包含一个4位的锁存器,分别与端口A和端口B配合使用,可作为控制信号输出或状态信号输入端口。 A1,A0:地址选择线,用来选择8255的PA口,PB口,P

7、C口和控制寄存器. 当A1=0,A0=0时,PA口被选择; 当A1=0,A0=1时,PB口被选择; 当A1=1,A0=0时,PC口被选择; 当A1=1.A0=1时,控制寄存器被选择.第3章 电子琴实验1、实验要求利用实验仪上提供的键盘,是数字键1、2、3、4、5、6、7作为电子琴键,按下即发出相应的音调。用8255的PA.0口发出音频脉冲,驱动喇叭。二、实验目的1、了解计算机发声原理。2、进一步熟悉定时器编程方法。3.、进一步熟悉键盘扫描电路工作原理及编程方法三、实验电路及连接键盘草图如下: 喇叭发声原理如下图:PA0输出脉冲驱动喇叭:连线:连线连接孔1连接孔218255-CSCS02KEY/

8、LED-CSCS13PA0喇叭脉冲输入四、实验说明1、利用定时器,可以发出不同频率的脉冲,不同频率的脉冲经喇叭驱动电路放大滤波后,就会发出不同的音调。2、定时器按设置定时的参数产生中断,这一次中断发出脉冲低电平,下一次反转发出脉冲高电平。由于定时参数不同,就发出了不同频率的脉冲。本实验中按键一次,会发50个脉冲。发完后继续检测键盘,如果键还按下,继续发音。各音阶标称频率值:音阶1234567频率(Hz)440.00493.88554.37587.33659.26739.99830.61五、实验框图 主程序框图 定时中断程序框图第四章 实验程序mode equ 082hPORTA equ 080

9、00hCTL equ 08003hOUTBIT equ 09002hIN equ 09001hPulse equ 55hPulseCNT equ 50hToneHigh equ 51hToneLow equ 52hTone equ 53hKeyBuf equ 54hSpeaker equ PORTA ljmp Start org 000bhTimer0Int: push PSW clr TR0 mov TH0, ToneHigh mov TL0, ToneLow setb TR0 mov a, Pulse mov dptr, #Speaker movx dptr,a inc Pulse dec

10、 PulseCNT pop PSW retiToneTable: dw 64578, 64686, 64778, 64821, 64898, 64968, 65029TestKey: mov dptr, #OUTBIT mov a, #0 movx dptr, a mov dptr, #IN movx a, dptr cpl a anl a, #0fh retKeyTable: db 16h, 15h, 14h, 0ffh db 13h, 12h, 11h, 10h db 0dh, 0ch, 0bh, 0ah db 0eh, 03h, 06h, 09h db 0fh, 02h, 05h, 08

11、h db 00h, 01h, 04h, 07hGetKey: mov dptr, #OUTBIT mov P2, dph mov r0, #Low(IN) mov r1, #00100000b mov r2, #6KLoop: mov a, r1 cpl a movx dptr, a cpl a rr a mov r1, a movx a, r0 cpl a anl a, #0fh jnz Goon1 djnz r2, KLoop mov r2, #0ffh sjmp ExitGoon1: mov r1, a mov a, r2 dec a rl a rl a mov r2, a ; r2 =

12、 (r2-1)*4 mov a, r1 mov r1, #4LoopC: rrc a jc Exit inc r2 djnz r1, LoopCExit: mov dptr, #OUTBIT clr a movx dptr, a mov a, r2 mov dptr, #KeyTable movc a, a+dptr retStart: mov sp, #70h mov a, #mode mov dptr,#CTL movx dptr,a mov TMOD, #01 ; Timer mov IE, #82h ; EA=1, IT0 = 1 mov Tone,#0MLoop: call Test

13、Key jz MLoop call GetKey mov b, a jz MLoop ; = 0, 7 dec b mov a, b rl a ; a = a*2 mov b, a mov dptr, #ToneTable movc a, a+dptr mov ToneHigh, a mov TH0, a mov a, b inc a movc a, a+dptr mov ToneLow, a mov TL0, a setb TR0 mov PulseCNT, #100Wait: mov a,PulseCNT jnz Wait clr TR0 ljmp MLoop end第5章 原理电路图 总

14、电路图: 单片机外部电路:数据存储器扩展:程序存储器与数据存储器基本相似第六章 修改程序将七个键发其中音调改为十五个键发十五个音调。延长发音时间,即将没按键一次发五十个脉冲改为没按键一次发一百个脉冲。(修改部分为大号加粗字体)修改后程序如下:mode equ 082h PORTA equ 08000h CTL equ 08003hOUTBIT equ 09002hIN equ 09001hPulse equ 55h PulseCNT equ 50hToneHigh equ 51hToneLow equ 52hTone equ 53h KeyBuf equ 54hSpeaker equ PORTA ljmp Start org 000bhTimer0Int: push PSW clr TR0 mov TH0, ToneHigh mov TL0, ToneLow s

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1