基于51单片机简易电子琴的设计毕业设计 下载本文

基于51单片机简易电子琴的设计 中国信息大学设计(论文)说明书 第 13 页 共 39 页

mov numtim,#01h

mov r6,#2h

djnz r6, YYstart0

jmp main tim0:push acc push psw mov tl1,20h mov th1,21h cpl p1.0 YYstart0:mov 40h,#00h

next: mov a,40h mov dptr,#table movc a,@a+dptr ;声音频

mov r2,a jz end0 anl a,#0fh mov r5,a mov a,r2 swap a anl a,#0fh jnz sing clr tr1 jmp d1 sing: dec a mov 22h,a rl a

mov dptr,#table1 movc a,@a+dptr mov th1,a mov 21h,a mov a,22h rl a inc a

movc a,@a+dptr mov tl1,a mov 20h,a setb tr1 d1:lcall delay inc 40h jmp next end0:clr tr1

率输出口P1.0

pop psw pop acc reti

delay: mov r7,#02h d2: mov r4,#180 d3: mov r3,#248 djnz r3,$ djnz r4,d3 djnz r7,d2 djnz r5,delay

ret

table1: dw 64260,64400,64524,64580 dw 64684,64777,64820,64898 dw 64968,65030,65058,65110 dw 65157,65178,65217 table:db 82h,01h,81h,94h,84h db 0b4h,0a4h,04h db 82h,01h,81h,94h,84h db 0c4h,0b4h,04h

db 82h,01h,81h,0f4h,0d4h db 0b4h,0a4h,94h

db 0e2h,01h,0e1h,0d4h,0b4h

13

基于51单片机简易电子琴的设计 中国信息大学设计(论文)说明书 第 14 页 共 39 页

db 0c4h,0b4h,04h db 00 LYBF1:

MOV 30H,@R0 MOV 31H,@R1 INC R0 INC R1 CLR P0.0 SETB TR0 LCALL DELAY1 CLR TR0

;调试用

LJMP LYBF1 RET

DELAY1:

MOV R4,#25

LOOP1:

END MOV R5,#248 DJNZ R5,$ DJNZ R4,LOOP1 RET

附录二

作品实物图

14

中国信息大学设计(论文)说明书 第 15 页 共 39 页

电子琴主要电路原理图

15

中国信息大学设计(论文)说明书 第 16 页 共 39 页

LM386音频放大电路

电子琴的设计

1 课题背景

单片微型计算机室大规模集成电路技术发展的产物,属于第四代电子计算机它具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点。他的应用必定导致传统的控制技术从根本上发生变革。因此,单片机的开发应用已成为高科技和工程领域的一项重大课题。

电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用AT89S52单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘扬声器等模块组成核心主控制模块,在主控模块上设有8个按键,和一个复位按键。

主要对使用单片机设计简易电子琴进行了分析,并介绍了基于单片机电子琴硬件的组成。利用单片机产生不同频率来获得我们要求的音阶,最终可随意弹奏要表达的音符。并且分别从原理图,主要芯片,个模块原理及各莫奎的程序的调试来详细阐述。 一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,构成我们想演奏的那首曲目。当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样的方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系编写正确就可以达到我们想要的曲目。

2 任务要求与总体设计方案

2.1 设计任务与要求

利用所给键盘的1,2,3,4,5,6,7,8八个键,能够发出7个不同的音调,而且有一个按键可以自动播放歌曲,要求按键按下时发声,松开延时一小段时间,中间再按别的键则发另外一音调的声音,当系统扫描到键盘按下,则快速检测出是哪一个按键被按下,然后单片机的定时器启动,发出一定频率的脉冲,该频率的脉冲经喇叭驱动电路放大滤波后,就会发出相应的音调。如果在前一个按下的键发声的同时有另一个按键被

16