智能数字控制系统 第7页
信息以及/CE、IO//M的状态都锁存到8155内部寄存器。因此,单片机P0口输出的低8位地址信号不须外接锁存器。
IO//M为RAM/IO口选择线。当IO//M=0时,单片机选择8155的RAM读/写。AD0-AD7上地址为8155中RAM单元地址;当IO//=1时,单片机选择8155的I/O口,AD0-AD7上地址为I/O口地址。/CE为片选售号,/RD、/WR为读、写控制输入线。
2、 8155的RAM和I/O口地址编码
8155在单片机应用系统中是按外部数据存储器统一编址的,为16位地址数据,其高8位由片选线/CE提供,而低8位地址为片内地址。当IO//M=0时,单片机对8155RAM读/写,RAM低8位编址为00H-FF;当IO//M=1,单片机对8155中的I/O口进行读/写时,8155内部I/O口及定时器的低8位编址如下:
A * * * * * 0 0 0 命令/状态口 * * * * * 0 0 1 PA口 * * * * * 0 1 0 PB口 * * * * * 0 1 1 PC口 * * * * * 1 0 0 定时器低8位 * * * * * 1 0 1 定时器高8位 |
3、 8155的工作方式与基本操作
8155可作为I/O口,片外256字节数据存储器及定时器使用,在各种类型使用下的基本操作如下。
(1) 作片外256字节数据存储器
种工作状态使用时将8155的IO//M,这时8155只能作片外数据存储RAM使用,其地址高8位由片选线决定,低8位为00H-FFH。与应用系统中其他数据存储器统一编址。使用片外数据存储器相同的读/写操作指令MOVX。
(2) 作扩展I/O口使用
8155作扩展口使用时,IO//M引脚必须设置高电平,这时PA、PB、PC口的口地址的低8位分别为01H、02H、03H(设地址无关位为0时)。
8155的I/O口工作方式选择是通过对8155内部命令寄存器(命令口)设定命令控制字来实现的。命令寄存器的低8位地址为00H。
● I/O口的工作方式选择。8155的A口、B口、可工作于基本I/O方式,选通方式,C口可作为输入输出口线,也可以作为A口、B口选通方式工作时的状态控制信号线。
● I/O口工作方式选择完全依靠对8155命令寄存器(命令口)设定命令控制字的方式实现。命令寄存器只能写入不能读出。其格式如下页图所示。
命令寄存器的D0-D5位为I/O工作方式选择位。
基本I/O工作方式:当8155编程为ALT1、AEL2时,A、B、C口均为基本输入输出方式,而用D0、D1位选定A、B口为输出还是输入工作方式选通I/O工作方式;当8155被编程为ALT3时,A口定义为选I/O,B口定义基本I/O;编程为ALT4时,A、B口定义为选通I/O工作方式。
TM1 |
TM2 |
IEB |
IEA |
PC2 |
PC1 |
PB |
PA |
|
0:B口定义为输入方式,1:B口定义为输出方式
● I/O的状态查询。8155有一个状态寄存器,锁存I/O口和定时器的当前状态,供单片机查询用,状态存储器和命令寄存器共一个地址,只能读出不能写入。因此,或以认为8155的00H口是命令/状态寄存器,对其定入时作为命令寄存器,写入的是命令:而对其读出时,作为状态寄存器,读出的是当前I/O口和定时器的状态。
4、 8155工作状态
74LS138是8155芯片的译码器,在地址线A15至A8为1,A7=1的条件下,译码器才能工作。
(1) 8155内部RAM
8155芯片内部有256字节的RAM,其中00H~FFH地址共224个单元作为8031外部数据存储器,它们可以低8位寻址(高8位为1)。选中8155RAM区条件为:/CE=0,IO//M=0。只需译码器74LS138的Y7端输出高电平,即地址线A5、A4、A3任意一条为0,选中8155内部RAM。
(2) 8155输入输出口
8155作为输入输出口时,其条件为:/CE=0,IO//M=1。此时译码器74LS138的Y7端输出低电平,即地址线A5、A4、A3为111,选中8155输入输出口。
8155受8031控制,8155芯片A口接显示器的各段。B口作为输入口,接键盘的每一列。C口作为输入输出口,接键盘的每一行,并且分别接显示器的选通端,控制所有数码管的位选。
四、系统键盘输入、显示器输出原理
1、 显示器工作原理
显示器是MCS-51实用系统中最常用的输出设备。
本设计系统采用了6只8段共阴极数码管作为显示器。它可以显示16进制数、小数点和另外一些由程序规定的字符。
每一个数码管由8个发光二极管构成。发光二极管和普通二极管类似,也具单向导电性能,只是当管子有电流流过时就发光。图a是一只8段共阴极数码管,简称LED显示器。图b是一种LED显示电路。8155的PA口分别接在a到g和DP的8个发光二极管阳极上。由于采用了共阴极接法,只有在PA口输出为“
a,b,c,d,e,f,g,DP 8端至少有一个为“
(a) (b)
2、 字形代码
如果要使上图(b)的显示器显示“3”字形,那么只有使a、b、c、d、g 5个发光二极管发光才能实现。因此,阳级电平关系如下:
a b c d e f g dp
1 1 1 1 0 0 1 0
其中,“
这样,就存在着字形(“
3、 系统显示电路
此系统共有6只数码管。数码管的8个阳极分别与
要使某一只管子显示一个特定的字形,就要在
数码管 |
LED1 |
LED2 |
LED3 |
LED4 |
LED5 |
LED6 |
字位码 |
F7H |
EFH |
DFH |
FBH |
FDH |
FEH |
表3-2 字位码表
总之,要使某数码管显示特定内容,必须满足3个条件:
(1) 字形代码送
(2) 字位代码送
(3) 延时1ms以上。
其中,“延时”是由于计算机工作速度太快,把字形码、字位码送到
显示器仅需要几微秒时间,这样短的时间显示器不可能正常发光,人眼看不到。“延时”是使字形码、字位码保持作用在数码管中一段时间,使其正常发光,以便使人的眼睛能稳定看到。
4、 系统键盘输入原理
键盘是系统输入数据与程序的输入设备。键盘不仅能使8031能识别有无键按下而且还能识别是哪个键按下。
键盘主要有全编码键盘和非编码键盘两种。
全编码键盘每按下一个键,其键盘电路能自动提供被压键代码,并能产生一个选通脉冲通知CPU,此外还具有去抖动、防窜键等功能。这种键盘的优点是易于使用,但需要较多的硬件,价格也比较高。
非编码键盘在硬件上很简单,仅提供键盘行与列矩阵,其它工作都是由软件完成,也就是说用程序解决键识别,关生相应代码,防窜键,去抖动等问题。
本设计采用非编码键盘,以下介绍非编码键盘原理及其接口。
本系统设计键盘共有23个键,其中16个为数字键,12个为命令键。为
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... 下一页 >>