单片机IO口结构及上拉电阻 MCS-51有4组8位I/O口:P0、P1、P2和 P3口,P1、P2和 P3为准双向口,P0口则为双向三态输入输出口,下面我们分别介绍这几个口线。 一、P0口和 P2口 图 1和图 2为 P0口和 P2口其中一位的电路图。由图可见,电路中包含一个数据输出锁存器(D触发器)和两个三态数据输入缓冲器,另外还有一个数据输出的驱动(T1和 T2)和控制电路。这两组口线用来作为 CPU与外部数据存储器、外部程序存储器和 I/O扩展口,而不能象 P1、P3直接用作输出口。它们一起可以作为外部地址总线,P0口身兼两职,既可作为地址总线,也可作为数据总线。 图1 单片机P0口内部一位结构图 图2 单片机P0口内部一位结构图 P2口作为外部数据存储器或程序存储器的地址总线的高8位输出口AB8-AB15,P0口由ALE选通作为地址总线的低8位输出口AB0-AB7。外部的程序存储器由PSEN信号选通,数据存储器则由WR和RD读写信号选通,因为2^16=64k,所以MCS-51最大可外接64kB的程序存储器和数据存储器。 二、P1口 图 3为P1口其中一位的电路图,P1口为8位准双向口,每一位均可单独定义为输入或输出口,当作为输入口时,1写入锁存器,Q(非)=0,T2截止,内上拉电阻将电位拉至"1",此时该口输出为1,当 0写入锁存器,Q(非)=1,T2导通,输出则为0。 图3 单片机P2口内部一位结构图 作为输入口时,锁存器置 1,Q(非)=0,T2截止,此时该位既可以把外部电路拉成低电平,也可由内部上拉电阻拉成高电平,正因为这个原因,所以P1口常称为准双向口。 需要说明的是,作为输入口使用时,有两种情况: 1.首 先 是 读 锁 存 器 的 内 容 , 进 行 处 理 后 再 写 到 锁 存 器 中 , 这 种 操 作 即 读 —修 改 — 写 操 作 , 象 JBC(逻 辑 判 断 )、 CPL(取 反 )、 INC(递 增 )、 DEC(递 减 )、 ANL(与逻 辑 )和 ORL(逻 辑 或 )指 令 均 属 于 这 类 操 作 。 2.读 P1 口 线 状 态 时 , 打 开 三 态 门 G2,将 外 部 状 态 读 入 CPU。 三 、 P3 口 P3口 的 电 路 如 图 4所 示 , P3 口 为 准 双 向 口 , 为 适 应 引 脚 的 第 二 功 能 的 需 要 ,增 加 了 第 二 功 能 控 制 逻 辑 , 在 真 正 的 应 用 电 路 中 , 第 二 功 能 显 得 更 为 重 要 。 由于 第 二 功 能 信 号 有 输 入...