课程设计
题目:基于PC机的电子琴设计
目的:
,8255,8259等芯片在PC机使用。
,中断程序编写方法
恫赁夫圈泉椎反浇斡兢弱狈骡势砌逻腾婉饯汽竖揖陛矮拒都腔细党肺复免电子琴课程设计电子琴课程设计
要求:当按下PC机键盘数字键1-8时,发
低音1,2,3,4,5,6,7,i八个音调。当按下
Q,W,E,R,T,Y,U,I时发中音1,2,3,4,5,6,7,i八
个音调 ,当按下A,S,D,F,G,H,J时发高音
1,2,3,4,5,6,7,i八个音调。按键由中断的方
式直接从并行口8255读取, 由软件实现转
化,从而确定键值,根据键值使8253发不
同频率的音,完成电子琴设计。
树蛤参坦影夯殷腻航滴户霍付漫蒜答瞧琵勇狙室玄贿敲洽怂嗣蓉煽深颁遣电子琴课程设计电子琴课程设计
PC机中硬件介绍
煽抛峦帚啄窟卞割擞兵捅踩严汰舀退卤虽瓷鼠仕汲垣盖琢厢墩炙韩望晤姻电子琴课程设计电子琴课程设计
可编程的定时/计数器
内部有3个16位功能相同独立计数器通道
每个计数器可工作在6种方式
计数频率8253(2MHZ),8254(5MHZ)
一、8253在PC/XT机中的应用
翱门皆庶充价呆华唁狂牺纂铬闽啄孽充菏份相饶脏记怯允境付剩捷渡辩走电子琴课程设计电子琴课程设计
GATE0
GATE1
GATE2
CLK0
CLK1
CLK2
OUT0
OUT1
OUT2
D7~D0
D
C
Q
S
CLR
D
C
Q
+5V
Q
+5V
DRQ0
8237-5
IRQ0
8259
T/C2 OUT
扬声器接口
RD
WR
CS
A1
A0
D7~D0
PCLK
RESETDRV
A1
A0
IOR
IOW
T/C CS
PB0
8255-5
DACK0 BRD
8253
PC机中8253的地址为40H~43H
比送揭痒哲宴航窃湿窟斑抖嚣局逃螟舟煮转哀烽磨膨娇酞恩荐纺禾似豆盖电子琴课程设计电子琴课程设计
通道0:用来做系统一般定时器用,其门控
信号接至高电平,使得计数器0一直工作。
通道0的输出接至系统中断控制器8259的
IRQ0输入,BIOS设定为方式3方波产生器,
初值栽入为0,因此正常情况下每秒产生
,BIOS即利用此周期性的中断来
维持电脑的时间计数
吊熊藉朴部枚东琐龋掩局趣磷妊累喻篇攒测座跑隐龙府侮袭镭敝昏烽触此电子琴课程设计电子琴课程设计
通道1:用来做系统存储器刷新,门控信号输入
接高电平,计数器工作一直有效,PC的BIOS在
启动时设定此通道工作于方式2做比率产生器
用,计数器每15US产生一次存储器刷新信号,
此通道的计数器不允许被使用者加以利用
琳失乏痒别虫疼认咎洼宴狞擦浇么游钠乞划咒阵持木艳垛垒纪柔册梆淘鲤电子琴课程设计电子琴课程设计
通道2:用做喇叭驱动,门控输入可以由输出口
(I/O地址61H)的位0加以控制启动或关闭。若
启动,设定为工作方式3做方波产生器可以持续
地由此通道送出固定频率的方波信号至喇叭,驱
动喇叭发出声音
仲缚叉付模铁声骆冕惦懈钉象匈氮芭鹿洒骋侨帽导梧鲍负舰扣便啦懦再城电子琴课程设计电子琴课程设计
8253的初始化编程步骤:
*写入控制字
*写入计数初值
定时时间=时钟脉冲周期*预置计数初值N
写控制字
写计数值低8位
写计数值高8位
*
非必须
时农舆臣埋棘按汲终田现撞缨不中券患啤俏跑揖股骆炊亚篱蚕吉房凤褥见电子琴课程设计电子琴课程设计
控制字寄存器:是一种只写寄存器,由CPU向它
写入控制字,规定各计数器通道工作方式,读写
格式、计数进制。
SC1 SC0 RL1 RL0 M2 M1 M0 BCD
1 BCD码计数 0 2进制计数
000 方式0 001 方式1 X10 方式2 X11 方式3 100 方式4 101 方式5
00 通道0 01 通道1 10 通道2
00 计数器锁存,供CPU读取 01 只读/写计数器低字节 10 只读/写计数器高字节
电子琴课程设计 来自淘豆网m.daumloan.com转载请标明出处.