1、模拟电子琴设计仿真摘 要电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经融入现代人们的生活中,成为不可替代的一部分。本次设计的主要内容是用AT89S51单片机为核心控制元件,利用定时器,发出不同频率的脉冲,不同频率的脉冲经喇叭驱动电路放大滤波后,就会发出不同的音调,利用不同的频率的组合,可构成我们想要的音乐,从而设计成一个与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器的简易电子琴 。本系统运行稳定,硬件电路简单,软件功能完善,控制系统可靠,所开发的程序通过调试运行、仿真验证
2、,实现了设计目标,具有一定的实用和参考价值。关键词:单片机、按键、扬声器、音阶目 录1 课题描述 12问题分析和任务定义 23硬件电路设计 34 程序设计 44.1 程序流程图 44.2 程序代码 55电路仿真与分析 105.1 仿真软件 105.2仿真过程 106调试、测试与结果分析 116.1调试与测试 116.2结果分析 117总结 12参考文献 131 课题描述一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,构成我们所想要的音乐了,对于单片机,可以利用定时器,发出不同频率的脉冲,不同频率的脉冲经喇叭驱动电路放大滤波后,就会发出不同的音调,
3、利用不同的频率的组合,从而设计成一个与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器的简易电子琴 。本次设计主要应用AT89C51单片机为核心控制元件,与键盘、扬声器等模块组成核心主控制模块,通过软硬件设计,模式转换按键触发外部中断,中断使程序跳转,实现模式转换,启动电子琴,通过查询电子琴所按下的按键,读取电子琴输入状态,跳转到对应的程序人口,实现用户自编歌曲。开发环境:微机WINdows XP系统VisuAL BaSIc 6.0环境2问题分析和任务定义本次设计主要通过对AT89C51的基本认识,利用定时器,发出不同频率的脉冲,不同频率的脉冲经喇叭驱动电路放大滤波后,
4、就会发出不同的音调,利用不同的频率的组合,从而设计成一个与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器的简易电子琴。在操作过程中应满足以下要求:(1)电子琴设有16个按键,通过软硬件设计,模式转换按键触发外部中断,中断使程序跳转,实现模式转换,启动电子琴;(2)利用定时器,可以发出不同频率的脉冲,不同频率的脉冲经喇叭驱动电路放大滤波后,可以发出不同的音调;(3)使数字键1、2、3、4、5、6、7作为电子琴键,按下数字键发出相应的音调,PB0作为定时器门控信号,OUT1发出音频信号,驱动喇叭。(4)通过查询电子琴所按下的按键,读取电子琴输入状态,跳转到对应的程序人口,
5、实现用户自编歌曲;该系统在使用过程中,应该实现以下基本功能:(1)按要求连接电路图,当按下数字键1、2、3、4、5、6、7时可以发出相应的音调; (2)通过不同的数字键组合,可以自编曲目; (3)利用protues仿真软件,装载程序,实现对电子琴的仿真。3硬件电路设计 电子琴设计硬件电路图,如图3.1所示:图3.1 电子琴设计硬件电路图 4 程序设计4.1 程序流程图(1)主程序流程图本次课程设计实现了一个以AT89C51单片机为核心控制元件,与键盘、扬声器等模块组成核心主控制模块,通过按键,实现用户自编曲目的简易电子琴。主程序流程图如图4.1所示:图4.1 电子琴设计主程序流程图(2)音频脉
6、冲产生程序流程图要产生音频脉冲,只要算出某一音频半周期的时间然后利用T0定时器计时半周期时间,每当计时终止后就将P1.0反相,然后重复计时再反相,就可在P1.0引脚上得到此频率的脉冲。音频脉冲产生程序流程图如图4.2所示:图4.2 音频脉冲产生程序流程图4.2 程序代码CODE SEGMENT ;DZQ.ASM ASSUME CS:CODE,DS:CODECONTROL EQU 43hCOUNT0 EQU 40hCOUNT1 EQU 41hCOUNT2 EQU 42hIOCONPT EQU 0FF2BHIOBPT EQU 0FF29HIOAPT EQU 0FF28HPA EQU 0FF21H
7、;字位口PBEQU 0FF22H ;字形口PC EQU 0FF23H ;键入口ORG 18F0HSTART: JMP START0BUF DB ?,?,?,?,?,?KZ DB ?LTIMEDB?LKEY DB ?ZP DW ?DATA1:DB 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h,0a1h DB 86h,8eh,0FFH,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh,8FH,0F1HDATA3:DW 2273, 2024, 1805, 1704 DW 1517, 1353, 1205, 1136S
8、TART0: MOV AX,CSMOV DS,AXCALL BUF1 MOV AL,88H MOV DX,IOCONPT OUT DX,AL MOV DX,IOBPT MOV AL,00 OUT DX,AL MOV ZP,OFFSET BUFREDIKEY:CALL DISPKEY CMP KZ,09h JNC REDIKEY CMP KZ,01h JC REDIKEY MOV BX,ZP MOV AL,KZ MOV BX,AL CMP BX,OFFSET BUF+5 JZ ZP1 INC BX MOV ZP,BX JMP OUTTONEZP1: MOV ZP,OFFSET BUFOUTTON
9、E:MOV DX,IOBPT MOV AL,0FFH OUT DX,AL MOV AL,KZ MOV AH,00h DEC AX SHL AX,1 MOV BX,OFFSET DATA3 ADD BX,AX MOV AX,BX CALL T8253 MOV CX,20hCON1:PUSH CX CALL DISP POP CX LOOP CON1 MOV DX,IOBPT MOV AL,00 OUT DX,AL JMP REDIKEY T8253:PUSH AX MOV AL, 76h ; 计数器1, 16位二进制,方式3。 MOV DX, CONTROL OUT DX, AL POP AX
10、MOV DX, COUNT1 OUT DX, AL MOV AL, AH OUT DX, AL RET;-DISPKEY:CALL DISP CALL KEY MOV AH,AL ;NEWKEY MOV BL,LTIME ;LTIME MOV BH,lKEY ;lKEY MOV AL,01h MOV DX,0FF21H OUT DX,AL CMP AH,BH MOV BH,AH ;BH=NEWKEY MOV AH,BL ;AL=TIME JZ DISK4 MOV BL,88h MOV AH,88hDISK4: DEC AH CMP AH,82h JZ DISK6 CMP AH,0eh JZ DISK6 CMP AH,00h JZ DISK4
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1