可存储式电子琴的设计.doc
- 文档编号:147822
- 上传时间:2022-10-04
- 格式:DOC
- 页数:46
- 大小:1,017KB
可存储式电子琴的设计.doc
《可存储式电子琴的设计.doc》由会员分享,可在线阅读,更多相关《可存储式电子琴的设计.doc(46页珍藏版)》请在冰豆网上搜索。
中国矿业大学计算机学院信息安全10-4班硬件课程设计——电子琴
计算机科学与技术学院
硬件课程设计
个人报告
姓名:
王向阳张奥
学号:
班级:
信安10-4班
设计题目:
可存储式电子琴
指导教师:
王凯
二〇一二年十二月二十七日
课程设计指导教师评阅书
指导教师评语:
成绩:
指导教师签字:
年月日
摘要
在这次的硬件实验中,我们利用学习的微机原理与接口技术这门课程课上我们学到的一些计算机硬件工作的基本原理,汇编语言程序设计方法,微型计算机接口技术,建立微型计算机系统的整体概念,初步形成微机系统软硬件开发的能力。
为了能够学以致用,同时也为了更深入的了解熟悉可编程定时器8253和8279。
在汇编语言环境下,利用上述两种芯片,编程让8279通过识别键盘产生键值,8253识别发声从而实现计算机按照按键的不同而发出不同频率的声音。
可存储式电子琴可用于设计小型发声玩具,由于本电子琴设计简单,稍加修改便可用于其它地方,如报警防盗器部件,音乐门铃等,具有一定的商业价值。
本次硬件课程设计课程,是配合上学期《微型计算机原理与接口技术》的教学,也是要让我们能够更深入的认识接口芯片技术以及汇编编程,做到理论和实践相结合。
在课程中,我们选择的设计项目是“可存储式电子琴”:
一个简易的电子琴设备。
要求我们利用相关已经学过的和没有学过的芯片连接成一个电子电路,并且通过自己用汇编语言编程,控制设计的电子电路实现电子琴的一些功能,比如:
能够对于输入发出相应的单声;能够演奏一小段已经编好了的乐曲。
关键词:
可存储电子琴82798253门控信号程序代码
目录
1开发背景 3
2产品功能及涉及的芯片和硬件 3
2.1功能简介 3
2.2使用的主要芯片及元件 3
2.3各音阶频率值 3
2.4可编程计数器/定时器8253 4
2.4.18253内部结构和引脚 4
2.4.28253方式控制字格式 5
2.4.38253的工作方式3—方波发生器 5
2.4.4本设计中8253的功能 6
2.5可编程键盘—接口显示芯片8279 6
2.5.18253内部结构和引脚 7
2.5.28279的工作方式 8
2.5.38279的命令字及格式 10
2.5.4本设计中8279的功能 11
3实验中所遇到的问题 11
4实验程序 11
5实验感悟 15
6参考文献 17
1.开发背景
上学期刚刚结束《微型计算机原理与接口技术》课程,本学期为了进一步熟悉和掌握汇编语言,通过选择课题的方式让学生单独分析和实现课题,来加强学生的动手实践能力和独立思考的能力。
2.产品功能及涉及的芯片和硬件
2.1功能简介
按下键盘的A,B,C键实现对键盘高音,中音,低音的选择,按下1-7号键实现do-xi的发音,当按下D键时,可以通过A,B,C选择高音中音低音的预置音乐播放
2.2使用的主要芯片及元件
(1)各芯片及器件地址:
8279的控制端地址为:
20AH,数据端地址为:
208H。
8253的控制端地址为:
213H,数据端地址为:
210H。
I/O输出的地址为:
200H
(2)按键说明:
1——dou音2——ruai音3——mi音4——fa音5——sao音
6——la音7——xi音A——高音转换键
B——中音转换键C——低音转换键D——放音键
芯片:
一片8253(有详细介绍)
一片8279
IO芯片
元件:
蜂鸣器
2.3个音阶频率
使用8279芯片的键盘控制器,通过查看寄存器,读出分别按下不同的键时对应的寄存器值(这里只给出当按下1---7和A、B、C、D键的寄存器值,如图)。
按键
1
2
3
4
5
6
7
A
B
C
D
寄存器键值
02H
0AH
22H
01H
09H
21H
00H
07H
29H
28H
2BH
当某一时刻按下一个键的时,可以通过和各键的寄存器值比较来判断按下键。
又每个音阶都有一个确定的频率。
音阶
1
2
3
4
5
6
7
高音频率(HZ)
552
1812
587
1704
659
1517
700
1429
784
1276
880
1136
988
1012
中音频率(HZ)
262
294
330
349
392
440
494
低音频率(HZ)
131
7634
147
6803
165
6060
175
5714
196
5102
220
4545
247
4049
可以通过各音阶的对应频率值为8253赋初值,然后输出到音响设备,以产生相应音阶的发音。
在发音过程中,可分别为8253的GATE0端输入0和1来控制开始发音和停止发音。
本实验我们对于8253输入频率选择的是1MHz,故,由每个音阶的对应的频率可求出8253输入的计数值。
音阶
1
2
3
4
5
6
7
高音频率(HZ)
1812
1704
1517
1429
1276
1136
1012
中音频率(HZ)
3817
3401
3030
2865
2551
2273
2024
低音频率(HZ)
7634
6803
6060
5714
5102
4545
4049
3.总体设计
3.1电路原理图与说明
实物图:
IO输出
CS
CLK0
8253
GATE0
OUT0
CS
1MHz
1MHz
扬声器
200-207H208-20AH210-213H
8279芯片
5.2功能模块流程图
开始
8259初始化
8253初始化
置空寄存器
有键按下?
N
是A
转入高音区
Y
Y
转入中音区
是B
Y
是1
N
Y
是2
NY
是3
NY
是4
N
NY
是5
Y
是6
NY
是7
N
给8253赋对应初值
NY
音响发音
延时
预置音乐程序流程图:
8259初始化
开始
8253初始化
置空寄存器
有键按下?
N
是D?
N
Y
是C?
是B?
是A?
低音
中音
高音
给8253赋对应初值
音响发音
延时
2.4可编程计数器/定时器8253
2.4.18253内部结构和引脚
8253的内部结构
从上图可见,8253内部包含数据总线缓冲器、读/写控制逻辑、控制字寄存器和3个结构完全相同的计数器,这3个计数器分别称为计数器0、计数器1和计数器2。
8253的引脚
A1、A0:
地址输入线,用来址8253内部的4个端口,即3个计数器和1个控制字寄存器与CPU系统地址线相连。
CLK0-2:
时钟脉冲输入端,用于输入定时脉冲或计数脉冲信号。
CLK可以是系统的时钟脉冲,也可以由系统时钟分频或者其他脉冲源提供。
当用于定时时,这个脉冲必须是均匀的、连续的、周期精确的,而用于计数时,这个脉冲可以是不均匀的、断续的、周期不定的。
GATE0-3:
门控输入端,用于外部控制计数器的启动计数和停止计数的操作。
两个或两个以上计数器连用时,可用此信号同步,也可用于与外部某信号的同步。
OUT0-2:
计数输出,当计数器从初值开始完成计数操作进,OUT引脚输出相应的信号。
2.4.28253方式控制字格式
D7
BCD
SC1
SC0
RL1
RL0
M2
M1
M0
D6
D5
D4
D3
D2
D1
D0
00选择计数器0
01选择计数器1
10选择计数器2
11无效
00计数器锁存操作
01只读/写LSB
10只读/写MSB
11读/写LSB、MSB
0二进制数
1BCD
000模式0
001模式1
x10模式2
x11模式3
100模式4
101模式5
图2-38253的方式控制字
2.4.38253的工作方式3——方波发生器
方式3的波形如下图所示,它的特点是:
(1)输出为周期性的方波。
若计数值为N,则输出方波的周期是N个CLK脉冲的宽度。
(2)写入控制字后,输出将变为高电平,当写入计数初值后,就开始计数,输出仍为高电平;当计数到初值的一半时,输出变为低电平,直至计数到0,输出又变为高电平,重新开始计数。
(3)若计数值为偶数,则输出对称方波;如果计数值为奇数,则前(N+1)/2个CLK脉冲期间输出为高电平,后(N-1)/2个CLK脉冲期间输出为低电平。
(4)GATE信号能使计数过程重新开始,GATE=1允许计数,GATE=0禁止计数。
停止后OUT将立即变高电平,当GATE再次变高以后,计数器将自动装入计数初值,重新开始计数。
8253工作方式3波形
2.4.4本设计中8253的功能
8253的CLK0接1MHz时钟,GATE0接+5V,OUT0接蜂鸣器,编程使计算机的数字键0、1、2、3、4、5、6作为电子琴按键,按下即发出相应的音阶。
本次实验用到的是8253的方式3——方波发生器。
2.5可编程键盘——接口显示芯片8279
2.5.18253内部结构和引脚
8279引脚图
8279是可编程的键盘、显示接口芯片。
它既具有按键处理功能,又具有自动显示功能,在单片机系统中应用很广泛
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 存储 电子琴 设计