③ CPU在访问外部存储器时地址编码,CPU的P2口提供高8位地址,P0口经外部地址锁存器后提供低8位地址。 (2)地址译码方法 ① 线选法
利用单片机地址总线高位中的一根线作为选择某一片存储器芯片的片选信号。此法用于规模较小的系统。其优点是不需要地址译码器,可节省硬件,降低成本。缺点是可寻址的芯片数目受到很大的限制,且地址空间不连续,不能充分利用。
② 全地址译码法
对容量较大的系统,扩展的外围芯片较多,芯片所需的片选信号多于可利用的地址线时,就需要用这种全地址译码法。
常采用的译码器是74LS138。其引脚图如下:
其逻辑功能表如下: G1 G2A G2B 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 其 他 状 态
其地址译码表如下:
21
C B A 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 X X X Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
器 件 2764 6264 8155 RAM I/O 8255
片内地址单元(字节) 000X XXXX XXXX 8K XXXX 001X XXXX XXXX 8K XXXX 0101 1110 XXXX 256 XXXX 0101 1111 1111 6 1XXX 0111 1111 1111 4 11XX 地 址 选 择 线 地 址 编 码 0000H~1FFFH 2000H~3FFFH 5E00H~5EFFH 5FF8H~5FFFH 6FFCH~6FFFH 其全地址译码图如下:
22
3.2.8 I/O接口电路及辅助电路设计
常用外围接口芯片有:
8155:可编程的RAM/IO扩展接口电路(256个RAM、两个8位口、一个6位口、
一个14位的定时器/计数器)
8255:可编程的通用并行接口电路(3个8位口) 8279:可编程的键盘、显示接口电路 (1)8155通用可编程接口芯片
① 8155引脚及其功能
8155 的结引脚排列及构框图如下图:
23
8155 具有40条引脚,采用双列直插式风装,各引脚功能见下表: 引脚 AD0~AD7 PA0~PA7 PB0~PB7 PC0~PC5 TIMER IN
其命令寄存器格式及工作方式如下:
0:禁止A口中断; 1:允许A口中断 0:禁止B口中断 1:允许B口中断 数 11:置定时器方式后,开始计数 定义A口输入/输出方式 定义B口输入/输出方式 00:ALT1 01:ALT2 10:ALT3 11ALT4 00:空操作 01:停止定时器操作 10:定时器减为一时停止计含义 引脚 含义 地址、数据线 TIMER OUT 定时输出 A口 IO/M IO/RAM口选择 B口 ALE 地址锁存 C口 RD/WR 读写 定时输入 引脚 CE RESET VSS VCC 含义 片选 复位 地 电源
② 8155的工作方式设定
8155 命令寄存器格式及工作方式见下表: 引脚 D0-D7 PAO-PA7 PBO-PB7 PCO-PC7 A0 A1 RD WR CE 24
含义 数据线 A口 B口 C口 地址线 读 写 片选
RESET GND VCC
复位 地 电源 ③ 8155初始化程序格式
MOV DPTR , 控制口地址 MOV A , 命令字 MOVX @DPTR ,A
MOV DPTR , 计数初值入口地址 MOV A, 计数初值 MOVX @DPTR ,A INC DPTR
MOV A , 计数初值高位 MOVX @DPTR ,A
(2)8255通用可编程接口芯片 ① 8255 引脚及内部结构见下图:
25