1、 一、一、 设计内容设计内容 编写一实现电子琴的程序,并实现若干扩展功能。 功能: 1在程序中可预设多首曲目,按不同的敏感键可播放不同的曲目 2弹奏:用户每按一个键盘琴键就弹奏相应的音符; 3. 当弹奏不同音阶时,双色点阵 LED 显示器显示不同的图案 二二、元件与仪器、元件与仪器 1计时器 8253 2并行控制器 8255A 3实验台 TDN-MD 三、三、设计原理、思路及流程图设计原理、思路及流程图 1 1. .电子琴的电子琴的设计原理及思路设计原理及思路 1.用试验箱上的晶振输出一个高频的信号,接入8253,用软件给8253和敏感键区进行初始 化,敏感键控制不同的频率,并送此分频数给82
2、53,从8253输出相应的音频后,接一个 非门,再接入硬件扬声器,扬声器接受到不同频率的波后发出不同的声音。 2.用敏感键触发中断服务子程序来判断是给出了哪一个频率。 3.用 ESC 按键来控制是自动演奏曲目 1 并亮红灯, 其他7个键分别控制da,ri,mi,fa,sa,la,si并亮绿灯。 4.其中用一个延时程序,使得发一个音有一定的延时时间。 5.有个停止程序,使得晶振不能使得扬声器发声。 对于一个特定的/转换接口电路,CPU 执行一条输出指令将数据送入/, 即可 在其输出端得到一定的电压输出。给/转换器输入按正弦规律变化的数据, 在其 输出端即可产生正弦波。对于音乐,每个音阶都有确定的
3、频率。 各音阶标称频率值和 8253 的计数初值: 音阶 低音 5 低音 6 低音 7 中音 1 中音 2 中音 3 中音 4 中音 5 中音 6 中音 7 高音 1 频率 (HZ ) 452 535 607 647 722 817 847 977 1107 1245 1311 计数 初值 61H 52H 48H 43H 3CH 35H 33H 2CH 27H 23H 21H 不同频率的区别,可通过调节向转换器输出数据的时间间隔,例如:发“频率为 647HZ,周期为1/647=1.55ms,由于实验箱中的晶振可产生一个为1.8432MHZ的频率。 1.625MHZ/647HZ=2511,即分频
4、数。转化为十六进制的数为:9CFH,再经过频率处理,除以 25H得到8253的计数初值:43H。其他的初值的计算同理。 2.2.电子琴的硬件框图电子琴的硬件框图和硬件连接图和硬件连接图 图 1 硬件框图 图 2 电路连接图 3.3.电子琴的流程图设计电子琴的流程图设计 四、源程序四、源程序 1.主程序主程序: A 2000 MOV AL,86H OUT 63H,AL MOV AX,3000 MOV 00A8,AX MOV AX,0000 MOV00AA,AX /表示 ESC 键的中断向量地址,自动播放音乐 MOV AX,3100 MOV 00AC,AX MOV AX,0000 MOV 00AE
5、,AX /表示键的中断向量地址,发音 1 MOV AX,3200 MOV 00B0,AX MOV AX,0000 MOV 00B2,AX /表示-键的中断向量地址,发音 2 MOV AX,3300 MOV 00B4,AX MOV AX,0000 MOV 00B6,AX /表示键的中断向量地址,发音 3 MOV AX,3400 MOV 00B8,AX MOV AX,0000 MOV 00BA,AX /表示;键的中断向量地址,发音 4 MOV AX,3500 MOV 00BC,AX MOV AX,0000 MOV 00BE,AX /表示,键的中断向量地址,发音 5 MOV AX,3600 MOV
6、00C0,AX MOV AX,0000 MOV 00C2,AX /表示。键的中断向量地址,发音 6 MOV AX,3700 MOV 00C4,AX MOV AX,0000 MOV 00C6,AX /表示/键的中断向量地址,发音 7 2.自动播放曲子自动播放曲子 1 程序程序: A3000 MOV AL0F OUT 60,AL MOV BX,5000 /曲子的地址 MOV AL,BX MOV AH,00 CALL 4000 A3100 MOV AL,F0 OUT 60,AL MOV BX,5100 MOV AL,BX MOV AH,00 CALL 4000 A3200 MOV AL,F0 OUT 60,AL MOV BX,5200 MOV AL,BX MOV AH,00 CALL 4000 A3300 MOV AL,F0 OUT 60,AL MOV BX,5300 MOV AL,BX MOV AH,00 CALL 4000 A3400 MOV