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

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

图5-3NPN9013功放电路

仿真虽然成功,但是在做完板子调试的时候性能及其不稳定,音响效果也很差,声音

大小无法调节,最后通过询问老师以及同学,最后采用了LM386芯片的音频放大电路,最终达到了实验所要的目的。

在作品板的调试过程中,本作品的复位电路的高电平和单片机没有接好,在一开始的调试中就遇到了难题,最终在检验板子和检测中找出问题,并以解决,最终达到了实验的目的。

总 结

将以调试好的程序烧进AT89S52芯片,再放到电路板中,按下按键就可以发出相应的音。本次试验通过制作电子琴,将几个模块换呢好的融合起来,对使用单片机设计简易电子琴进行了分析,并接受了基于单片机电子期硬件组成。利用单片机产生不同频率来获得我们要求的音阶,最终可随意弹奏想要表达的音乐。说明一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,于是我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可,然后我们利用功放电路来将音乐声音放大,同时同股沟显示模块来确知自己所弹的音符。 通过这次实训设计,我感觉收获了很多:通过这次的单片机实训,我加深了对单片机系列知识及其系统的认识。这个设计题目并不怎么新颖,但从中体现到了个系统开发设计的过程,足以让我们受益匪浅。

在这次的实训中,让我更进一步的提高了动手能力,也重新复习了一次单片机的程序编程能力,在这期间,让我更加深刻了体会到了汇编程序的思路,加强了对编程能力的理解和对相应资料的查阅。

谢 词

在这次实训过程中,能够得以顺利的完成,是所有曾经指导过我的老师,帮助过我的同学,成功是你们的帮助和鼓励成果。在这里我要对你们表示深深的谢意!

25

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

首先,我要特别感谢我的指导老师,李静老师,莫容老师,在实训过程中,提供了许多宝贵的建议,老师渊博的专业知识,严谨的治学态度,精益求精的工作作风,诲人不惓的高尚师德,朴实无华、平易近人的人格魅力对我影响深远。不仅使我树立了远大的学术目标、掌握了基本的研究方法,还使我明白了许多待人接物与为人处世的道理。

参考资料

[1]刘乐喜.微机计算机接口技术及应用[M].华中科技大学出版社.

[2]石东海.单片机数据通信技术从入门到精通.[M].西安电子科技大学出版社. [3]谢自美等.电子线路设计、实验、测试.[M].华中科技大学出版社

[4]长德,李华,李东,MC51/98系列单片机原理与应用。[M].机械工业出版社.

附录一

MOV P1,#0FFH

MOV TMOD,#01H SETB ET0 SETB EA CLR TR0

INC R1 LJMP SET_TIMER

;按键2

KEY2:

,P2.1

CJNE R3,#0FDH,KEY3

START: KEY1: 1 ,P2.0

CJNE R3,#0FEH,KEY2

;按键

MOV R3,P2

CJNE R3,#0FFH,KEY1 CLR TR0 SJMP START

MOV 30H,#0FCH MOV 31H,#5CH MOV @R0,#0FCH MOV @R1,#5CH INC R0 INC R1 LJMP SET_TIMER

;按键3

KEY3:

;将音阶

,P2.2

MOV 30H,#0FBH

MOV 31H,#0E9H MOV @R0,#0FBH

CJNE R3,#0FBH,KEY4

MOV 30H,#0FCH MOV 31H,#0C1H MOV @R0,#0FCH MOV @R1,#0C1H

26

存放到R0,R1对应的地址中

MOV @R1,#0E9H INC R0

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

INC R0 INC R1 LJMP SET_TIMER

;按键7

KEY7:

LJMP SET_TIMER

KEY4:

4 ,P2.3 CJNE R3,#0F7H,KEY5 MOV 30H,#0FCH MOV 31H,#0EFH MOV @R0,#0FCH MOV @R1,#0EFH INC R0 INC R1

LJMP SET_TIMER

KEY5:

5 ,P2.4 CJNE R3,#0EFH,KEY6

MOV 30H,#0FDH MOV 31H,#045H MOV @R0,#0FDH MOV @R1,#045H INC R0 INC R1

LJMP SET_TIMER

KEY6:

; ,P2.5

CJNE R3,#0DFH,KEY7

MOV 30H,#0FDH MOV 31H,#92H MOV @R0,#0FDH MOV @R1,#92H INC R0

INC R1

;按键

;按键

按键6

,P2.6

CJNE R3,#0BFH,KEY8

MOV 30H,#0FDH

MOV 31H,#0D6H MOV @R0,#0FDH MOV @R1,#0D6H INC R0 INC R1

LJMP SET_TIMER

KEY8:

8,P2.7,用来进入音乐自动播放 CJNE R3,#7FH,NOKEY

LCALL YYBF

音乐自动播放程序

LJMP SET_TIMER

SET_TIMER: SETB TR0

LJMP START

NOKEY: CLR TR0

LJMP START

INT_T0: MOV TH0,30H

MOV TL0,31H CPL P1.0 RETI

YYBF: CLR P1.1

numtim equ 20h

;按键

;调用

27

《生日快乐》

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

gewei equ 21h shiwei equ 22h scanled equ 23h org 1000h jmp YYstart org 001bh jmp tim0 org 1100h

YYstart: mov tmod,#00010000b setb ea setb et1 mov numtim,#01h

mov r6,#2h

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

djnz r6, YYstart0

jmp main tim0:push acc push psw mov tl1,20h mov th1,21h cpl p1.0 ;率输出口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:

声音频

28