图9.19 8255 C口按位置位/复位控制字格式 表9.2 8255 C口按位置位/复位控制字
C口位 | 置位控制字 | 复位控制字 |
二进制 | 十六进制 | 二进制 | 十六进制 |
刘子蔚PC0 | 00000001B | 01H | 00000000B | 00H |
PC1 | 00000011B | 03H | 00000010B | 02H |
PC2 | 00000101B | 唐山pm2.505H | 00000100B | 04H |
PC3 | 血清铁蛋白00000111B | 07H | 00000110B | 06H |
PC4 | 00001001B | 09H | 00001000B | 08H |
PC5 | 00001011B | 0BH | 尝试教学法00001010B | 0AH |
PC6 | 00001101B | 0DH | 00001100B | 0CH |
PC7 | 00001111B | 0FH | 00001110B | 0EH |
| | | | |
例9.2试确定图9.5所示频率计电路中8255的控制字,并完成8255的初始化编程和频率计工作编程。(设8255的四个端口地址分别为三辊轧管机80H、81H、82H和83H)。 解: (1) 由图9.5(a)的硬件连接图可知,8255工作于方式0,A口输出,B口输入,C口高4位中的PC7和低4位中的PC0都是输出,因此其工作方式控制字为10000010(即82H)。此外,为保证频率计的正常工作,还要用到几个C口按位置位、复位的控制字,即:
PC0的置位控制字: 0XXX0001 (即01H)
PC0的复位控制字: 0XXX0000 (即00H)
PC7的置位控制字: 0XXX1111 (即0FH)
PC7的复位控制字: 0XXX1110 (即0EH)
(2) 根据图9.5(b)所示的流程图,可写出8255初始化和频率计工作的程序段如下:
MOD EQU 82H;方式控制字
PORTA EQU 80H;A口地址
PORTB EQU 81H;B口地址
CNTRL EQU 83H;控制口地址
START: MOV AL,MODE
OUT CNTRL,AL ;设置方式控制字
LOOP: MOV AL,01H
OUT CNTRL,AL ;PC0置位,计数器复位
DEC AL
OUT CNRL,AL ;PC0复位,为计数做准备
MOV AL,OFH
OUT CNTRL,AL ;catptPC7置位,开始输入脉冲计数
CALL DELAY ;延时1秒
DEC AL
OUT CNTRL,AL ;PC7复位,停止输入脉冲计数
IN AL,PORTB ;输入计数值
OUT PORTA,AL ;输出显示
JMP LOOP ;循环测量