8255并行接口应用.docx
《8255并行接口应用.docx》由会员分享,可在线阅读,更多相关《8255并行接口应用.docx(21页珍藏版)》请在冰点文库上搜索。
8255并行接口应用
课程设计说明书NO.1
8255并行接口应用
1.课程设计的目的
为了巩固《微型计算机技术》课程学到的相关知识,通过对本课程所学知识的综合运用,使学生融会贯通课程中所学的理论知识,加深对计算机系统各个部分的工作原理及相互联系的认识,加深对接口的理解,清晰地建立计算机系统的概念,培养学生进行微机应用系统硬件和软件开发的实践工作能力。
2.设计方案论证
2.1芯片简介
Intel8255是微机系统的中通用的可变成并行接口(ProgrammablePeripheralInterface)芯片,其中具有3个8位的并行I/O端口(PA、PB、PC)、3种工作方式,可以通过程序设计输入输出结构和工作方式。
2.1.18255内部结构
8255的内部由3个相互独立的数据结构端口—A端口、B—端口、C—端口及A组控制器、B组控制器组成,如图1所示。
并行接口芯片具有的功能:
(1)具有两个以上的输入/输出数据端口(锁存/缓冲);
(2)每个数据端口有与CPU用应答方式交换信息所必须的控制和状态信息;也有与外设交换信息所必需的控制和状态信息;
(3)通常每个数据端口还具有能用中断方式与CPU交换信息所必须的电路;
(4)具有进行片选和读写控制的电路;
(5)可编程(由程序来选择数据端口,数据传送方向,交换信息的方式等)。
2.1.1.1三个独立的数据口
8255A的3个数据口分别是A端口、B端口、C端口,它们彼此独立,都是8位的数据口,用来完成和外设之间的信息交换。
3个口在使用上有所不同。
(1)A端口
A端口对应一个8位的数据输入锁存器和一个8位的数据输出锁存器和缓冲器。
因
沈阳大学
课程设计说明书NO.2
此,A端口适合用在双向的数据传输场合,不管是输入还是输出,都可以锁存。
(2)B端口和C端口
这两个口分别是由一个8位的数据输入缓冲器和一个8位的数据输出锁存器和缓冲器组成。
因此用B端口和C端口传送数据做输出端口时,数据信息可以实现锁存;用作出入端口时,则不能对数据实现锁存,这一点在使用中要注意。
在实际应用中,A端口和B端口通常作为独立的输入口和输出口,而C口常用来配合A端口和B端口的工作使用。
C端口分成两个4位的端口,这两个4位端口分别作为A端口和B端口的控制信号和输入状态信号使用。
图18255内部结构
沈阳大学
课程设计说明书NO.3
2.1.1.2A组控制电路和B组控制电路
控制电路分成A组控制和B组控制两组,A组控制电路控制A端口和C端口的高4位(PC4-PC7)。
B组控制电路控制B端口和C端口的低4位(PC0-PC3)。
这两组控制电路的作用:
由它们内部的控制寄存器接收CPU输出的方式控制字,还接收来自读/写控制逻辑电路的读/写命令,根据控制命令决定A组和B组的工作方式和读/写操作。
2.1.1.3读写控制逻辑电路
这部分电路是用来完成对8255A内部3个数据口的译码工作,由CPU的地址总线A0、A1和8255A的片选信号/CS和读信号/RD,写信号/WR组合后产生控制命令,并将产生的控制命令传送给A组和B组的控制电路,从而完成对数据信息的传输控制。
2.1.1.4数据总线缓冲器
这是一个双向的、三态的8位数据总线缓冲器,是8255A和系统总线的相连的通道,用来传送输入/输出、CPU发出的控制字以及外设的状态信息。
总之,8255A与CPU之间的所有信息传输都要经过数据总线缓冲器。
2.1.2引脚功能
8255A采用DIP40的封装结构,引脚如图2所示,除第26脚+5V电源引脚和第7脚是地线引脚外,其他引脚分为两组。
图28255引脚图
沈阳大学
课程设计说明书NO.4
2.1.2.1与CPU相连的引脚
RESET:
芯片的复位信号,高电平时有效。
复位后把8255A内部的所有寄存器都清0,并将三个数据口自动设置为输入口。
:
片选信号,低电平时有效,通常要求此引脚连接在地址总线(或地址总线译码电路)上。
当=0时,芯片被选中,CPU与8255A可以进行信息交换。
:
读信号,低电平有效,与CPU的引脚相连接。
当=0,允许从8255A的三个端口中读取数据或读取外设的状态信息。
:
写信号,低电平有效,与CPU的引脚相连接。
当=0,允许CPU向8255A的三个端口写入数据或者是写入控制字。
A1、A0:
端口译码信号,由CPU地址总线或译码电路产生。
用来选择8255A内部的三个数据端口和一个控制端口的地址。
当A1A0=00时,选中A端口。
当A1A0=01时,选中B端口。
当A1A0=10时,选中C端口。
当A1A0=11时,选中控制端口。
其中对控制口只能进行写操作。
D7~D0:
双向三态8位数据线,与系统的数据总线相连接。
A1、A0与读、写信号组合对个端口所执行的操作如表1所示。
表1各端口执行的操作
A1
A0
操作
数据传送方式
0
0
1
0
0
读端口A
端口A数据→数据总线
0
0
1
0
1
读端口B
端口B数据→数据总线
0
0
1
1
0
读端口C
端口C数据→数据总线
0
1
0
0
0
写端口A
数据总线数据→端口A
0
1
0
0
1
写端口B
数据总线数据→端口B
0
1
0
1
0
写端口C
数据总线数据→端口C
0
1
0
1
1
写控制口
数据总线数据→控制口
沈阳大学
课程设计说明书NO.5
2.1.2.2和外设端相连的引脚
PA7-PA0:
A端口的I/O引脚,共8条,传输方向及功能有工作方式决定;
PB7-PB0:
B端口的I/O引脚,共8条,传输方向及功能有工作方式决定;
PC7-PC0:
C端口的I/O引脚,共8条,传输方向及功能有工作方式决定,用来连接外设或者作为控制信号。
2.1.38255A的控制字
2.1.3.1方式选择控制字(A10A=11)
方式选择控制字用来决定8255A的3个数据端口各自的工作方式,格式如表2所示。
表28255A方式控制字
1
D6
D5
D4
D3
D2
D1
D0
特
征
位
A组方式
00=方式0
01=方式1
1X=方式2
A出口
0=输出
1=输入
C口高4位
0=输出
1=输入
B组方式
0=方式0
1=方式1
B口
0=输出
1=输入
C口低4位
0=输出
1=输入
2.1.3.2端口C置1/置0控制字(A1A0=11)
端口C常用作控制或应答信号,通过对8255A的控制口写入按位置位/复位控制字,可使C口的任何一个引脚的输出单独置1或置0。
格式如表3所示。
表3C口按位置位/复位控制字格式
0
D6
D5
D4
D3
D2
D1
D0
特征位
不用
位选择
000=C口0位—111=C口7位
0=复位
1=置位
沈阳大学
课程设计说明书NO.6
2.1.4工作方式
8255A有3种工作方式,用户可以通过编程来设置。
方式0简单输入/输出——查询方式:
A,B,C三个端口均可。
方式1选通输入/输出——中断方式:
A,B两个端口均可。
方式2双向输入/输出——中断方式:
只有A端口才有。
工作方式的选择课通过向控制端口写入控制字来实现。
2.1.4.1方式0——基本的输入/输出方式
适用于不需要应答的信号的简单I/O场合。
其基本的功能可概括如下:
(1)可具有两个8位端口(A、B)和两个4位端口(C口的上半部分和下半部分)。
(2)任何一个端口都可以设定为输入或输出,各端口的输、输出可构成16种组合。
(3)数据输出时可以锁存,输入时不锁存。
方式0的输入、输出时序图分别如图3,图4所示。
图3方式0的输入时序图
图4方式0的输出时序图
沈阳大学
课程设计说明书NO.7
2.1.4.2方式1——选通输入/输出方式
输入或输出都通过应答信号实现,这是端口A和端口B用作数据口,端口C的部分引脚用作握手信号线与中断请求线。
数据口的输入、输出数据都能锁存。
方式1选通输入下对应的控制信号如图5所示。
图5方式1选通输入下对应的控制信号
各应答信号的意义:
-数据选通输入信号,低电平有效,由外设输入。
IBF-输入缓冲期满信号,高电平有效,由8255输出的状态信号,表示输入锁存器已满,向外设指明不能在送入信号。
INTE-中断允许信号,是控制8255能否向CPU发中断请求信号,他没有外部引脚。
INTR-中断请求信号,高电平有效。
是8255A向CPU发出的请求中断信号,要求CPU服务。
方式1选通输出下A、B对应的控制信号如图6所示。
图6选通输出下A、B对应的控制信号
沈阳大学
课程设计说明书NO.8
各应答信号的意义:
-输出缓冲期满信号,输出,低电平有效。
表示CPU已输出数据到指定端口。
-外设的回答信号,低电平有效,由外设送给8255A。
表示CPU送到指定端口的数据已被外设接受。
INTR-中断请求信号,高电平有效。
INTE-中断请求信号,高电平有效。
当该信号为“1”时,允许中断。
8255A方式1输入、输出的时序图分别如图7,图8所示。
图78255A方式1输入时序图
图88255A方式1输出的时序图
沈阳大学
课程设计说明书NO.9
2.1.4.3方式2——双向传输方式
只适用于A端口,一个8位的双向端口(A端口)和一个5位的控制端口(C端口),A端口的输入和输出都可以被锁存,这是PA7-PA0作为双向的数据总线,PC3-PC7用作A端口的联络控制信号。
PC2-PC0可用作B端口的应答信号或做I/O线。
其主要功能课概括如下:
(1)有一个8位双向数据输入/输出端口A和一个5位控制信号端口C。
(2)输入、输出均可锁存。
(3)5位控制信号端口C作为8位双向数据输入/输出端口A的控制/状态信号。
(4)工作方式2只适用于A口。
2.2LED发光二极管简介
2.2.1LED发光二极管的特点
它是半导体二极管的一种,可以把电能转化成光能;常简写为LED。
发光二极管与普通二极管一样是由一个PN结组成,也具有单向导电性。
当给发光二极管加上正向电压后,从P区注入到N区的空穴和由N区注入到P区的电子,在PN结附近数微米内分别与N区的电子和P区的空穴复合,产生自发辐射的荧光。
不同的半导体材料中电子和空穴所处的能量状态不同。
当电子和空穴复合时释放出的能量多少不同,释放出的能量越多,则发出的光的波长越短。
常用的是发红光、绿光或黄光的二极管。
电压:
LED使用低压电源,供电电压在6-24V之间,根据产品不同而异,所以它是一个比使用高压电源更安全的电源,特别适用于公共场所。
效能:
消耗能量较同光效的白炽灯减少80%适用性:
体积很小,每个单元LED小片是3-5mm的正方形,所以可以制备成各种形状的器件,并且适合于易变的环境。
稳定性:
10万小时,光衰为初始的50%。
响应时间:
其白炽灯的响应时间为毫秒级,LED灯的响应时间为纳秒级。
对环境污染:
无有害金属汞。
颜色:
发光二极管方便地通过化学修饰方法,调整材料的能带结构和禁带宽度,实现红黄绿蓝橙多色发光。
红光管工作电压较小,颜色不同的红、橙、黄、绿、蓝的发光二极管的工作电压依
沈阳大学
课程设计说明书NO.10
次升高。
价格:
LED的价格现在越来越平民化,因LED省电的特性,也许不久的将来,人们都会的把白炽灯换成LED灯。
现在,我国部分城市公路、学校、厂区等场所已换装万LED路灯、节能灯等。
2.2.2LED的显示结构
它的基本结构是一块电致发光的半导体材料,置于一个有引线的架子上,然后四周用环氧树脂密封,起到保护内部芯线的作用,所以LED的抗震性能好。
发光二极管的核心部分是由P型半导体和N型半导体组成的晶片,在P型半导体和N型半导体之间有一个过渡层,称为PN结。
在某些半导体材料的PN结中,注入的少数载流子与多数载流子复合时会把多余的能量以光的形式释放出来,从而把电能直接转换为光能。
PN结加反向电压,少数载流子难以注入,故不发光。
这种利用注入式电致发光原理制作的二极管叫发光二极管,通称LED。
当它处于正向工作状态时(即两端加上正向电压),电流从LED阳极流向阴极时,半导体晶体就发出从紫外到红外不同颜色的光线,光的强弱与电流有关。
共阳极和共阴极LED的显示结构如图9所示。
图9共阳极和共阴极LED显示器结构
沈阳大学
课程设计说明书NO.11
2.2.3LED灯的工作原理
其发光原理跟激光的产生相似。
一个原子中的电子有很多能级,当电子从高能级向低能级跳变时,电子的能量就减少了,而减少的能量则转变成光子发射出去。
大量的这些光子就是激光了。
LED原理类似。
不过不同的是,LED并不是通过原子内部的电子跃变来发光的,而是通过将电压加在LED的PN结两端,使PN结本身形成一个能级(实际上,是一系列的能级),然后电子在这个能级上跃变并产生光子来发光的。
工作原理方案1,方案2分别如如图10,图11所示。
图10LED显示器与同相驱动前接口
图11LED显示器与反向驱动器接口
沈阳大学
课程设计说明书NO.12
3.设计的过程与分析
3.1设计目的与要求
(1)、8255A的PB4-PB7连L1-L4(黄灯)
(2)、PC0-PC7连L5-L12。
(3)、L5-L8为红灯,L9-L12为绿灯。
(4)、CS与218-21F相连。
交通灯亮灭规律:
设一十字路口,1、3为南北,2、4为东西。
初始红灯全亮,再1、3路口绿灯亮,2、4路口红灯亮,延迟一段时间后,1、3路口绿灯熄灭,而黄灯开始闪烁若干次,之后1、3路口红灯亮,同时2、4路口绿灯亮,延迟一段时间后2、4绿灯灭,黄灯闪烁若干次,再切换到1、3路口方向,之后重复以上过程。
提示:
三个端口均工作于方式0,处于输出状态。
A端口地址218H;B端口地址219H;C端口地址21AH;控制口地址21BH。
3.2程序流程图
程序图如图12所示
图12程序流程图
沈阳大学
课程设计说明书NO.13
3.3程序清单
开关控制指示灯显示
MY8255_AEQU0A860H;8255A口地址
MY8255_BEQU0A861H;8255B口地址
MY8255_CEQU0A862H;8255C口地址
MY8255_MODEEQU0A863H;8255控制口地址
CODESEGMENT
ASSUMECS:
CODE
START:
MOVDX,MY8255_MODE
MOVAL,82H
OUTDX,AL;将控制字21BH写入8255控制口,A口方式0输出,B口方式0输入,C口未用到。
A1:
MOVDX,MY8255_B
INAL,DX;读8255B口内容
MOVDX,MY8255_A
OUTDX,AL;将前面读到的B口内容送到A口,即A口内容=B口内容
CALLBREAK;调用子程序BREAK
JMPA1 ;跳转到A1
BREAKPROCNEAR;BREAK子程序
MOVAH,1
INT16H
JZRETURN;读按键字符,ZF=1,则返回;ZF=0,则AL=字符
MOVAX,4C00H
INT21H ;返回DOS
RETURN:
RET
BREAKENDP
CODEENDS
ENDSTART
流水灯显示
MY8255_AEQU0b860H;8255A口地址
MY8255_BEQU0b861H;8255B口地址
MY8255_CEQU0b862H;8255C口地址
MY8255_MODEEQU0b863H;8255控制口地址
沈阳大学
课程设计说明书NO.14
DATASEGMENT
LADB?
;留出1个字节
LBDB?
;留出1个字节
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX
MOVDX,MY8255_MODE
MOVAL,80H
OUTDX,AL;控制字21BH送入8255控制口,A口、B口都是方式0输出,
C口未用到。
MOVDX,MY8255_A
MOVAL,7FH
OUTDX,AL;将218H送入A口
MOVLA,AL;将218H送入LA存储单元
MOVDX,MY8255_B
MOVAL,0FEH
OUTDX,AL;将219H送入B口
MOVLB,AL;将219H送入LB存储单元
CALLDALLY
A1:
MOVAL,LA
RORAL,1;LA内容循环右移1次
MOVLA,AL
MOVDX,MY8255_A
OUTDX,AL;将循环右移后的LA内容送A口,其目的是让A口连接的LED灯依次向右循环点亮
MOVAL,LB
ROLAL,1;LB内容循环左移1次
MOVLB,AL
MOVDX,MY8255_B
OUTDX,AL;将循环左移后的LB内容送B口,其目的是让B口连接的LED灯依次向左循环点亮
CALLDALLY;延时,让一个LED灯发光稳定之后再点亮另一个
CALLBREAK;调用BREAK子程序,看是否有键按下
JMPA1;跳转到A1
DALLY:
MOVCX,3FFH;延时子程序
D1:
MOVAX,0FFFFH
沈阳大学
课程设计说明书NO.15
D2:
DECAX
JNZD2
LOOPD1
RET
BREAKPROCNEAR;是否有键按下
MOVAH,06H
MOVDL,0FFH
INT21H
JERETURN;若无,则转RETURN
MOVAX,4C00H
INT21H;返回DOS
RETURN:
RET
BREAKENDP
CODEENDS
ENDSTART
4.设计体会
这次的微型计算机的课程设计完成了,这其中有成功的喜悦,也不乏有为取得那份成功而付出的汗水与艰辛,正所谓有失必有得。
为了这个课设付出了很多,由于之前的相关课程学习有所欠缺,很多知识都不是很熟悉,所以完成这次的课程设计有一定的困难,不过现在看来,课程设计的完成对我来说有不小的收获,一切当初看来没有任何头绪,困难重重的问题通过查阅资料,请教同学都能顺利的解决。
这使我更能认识到遇到困难坎坷是,只有坚持,想一切办法去解决才能够保持向前。
同时,在这次做课设的过程中我意识到化程序图是很有必要的,因为通过程序方框图,在做设计的过程中我们每一步要做什么,每一步要完成什么任务都有一个很清楚的思路。
我感觉这是这次做课程设计中最大的收获,我会将理论与实际相结合,来提高自己的实际动手能力和独立思考能力,积极地将这种体会与经验应用到以后的生活学习和工作中。
5.参考文献
[1]范立南.微型计算机原理及应用[M].沈阳:
东北大学出版社,2001.11:
28-67
[2]戴梅萼.微型计算机技术及应用[M].北京:
清华大学出版社,2000.1:
25-97
[3]齐志儒.汇编语言程序设计[M].沈阳:
东北大学出版社,1995.12:
45-60
[4]朱金钧.微型计算机原理及应用技术[M].西安:
机械工业出版社,2005.5:
36-77
[5]杨立.微型计算机原理与接口技术[M].北京£º科学出版社,2008.8£º230—254
沈阳大学
参考文献要列出3篇以上,格式如下:
[1]谢宋和,甘勇.微机原理与接口技术[M].北京:
北京大学出版社,1999.5:
23-25
[1]单片机模糊控制系统设计与应用实例[M].北京:
电子工业出版社,1999.5:
20-25
(参考书或专著格式为:
著者.书名[M].版本(第1版不注).出版地:
出版者,出版年月:
引文所在页码)
[2]潘新民,王燕芳.微型计算机控制技术[M],第2版.北京:
电子工业出版社,2003.4:
305-350
(1本书只能作为1篇参考文献,不能将1本书列为多个参考文献)
[3]范立南,谢子殿.单片机原理及应用教程[M].北京:
北京大学出版社,2006.1:
123-130
[4]NewmanWM,SbroullRF.PrinciplesofInteractiveComputerGraphics[M].NewYork:
McGrawHill,1979.10:
10-25
(参考期刊杂志格式为:
作者.论文题目[J].期刊名,出版年,卷号(期号):
页码)(期刊名前不写出版地)
[6]MastriAR.Neuropathyofdiabeticneurogenicbladder[J].AnnInternMed,1980,92
(2):
316-318
[7]范立南,韩晓微,王忠石等.基于多结构元的噪声污染灰度图像边缘检测研究[J].武汉大学学报(工学版),2003,49(3):
45-49
[8]index.asp
(一般情况下不要用网址作为参考文献,如果用,最多1个)
注:
[M]表示参考的是书籍;[J]表示参考的是学术期刊的论文;如果参考会议论文集中的论文用[C]。
要求:
全部打印在A4纸(二本),各级标题四号宋体加粗,正文文字小四号宋体,程序五号timesnewroman,字数3000字以上,15页以上。
严禁抄袭,如有雷同者,均按不及格论处
图及表格要有图注(在图的下方,居中,黑体5号字)及表注(在表的上方,居中,黑体5号字)
注:
本页不用打印