单片机控制的矩阵键盘

上传人:wt****50 文档编号:33142187 上传时间:2018-02-14 格式:DOC 页数:30 大小:173.50KB
返回 下载 相关 举报
单片机控制的矩阵键盘_第1页
第1页 / 共30页
单片机控制的矩阵键盘_第2页
第2页 / 共30页
单片机控制的矩阵键盘_第3页
第3页 / 共30页
单片机控制的矩阵键盘_第4页
第4页 / 共30页
单片机控制的矩阵键盘_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《单片机控制的矩阵键盘》由会员分享,可在线阅读,更多相关《单片机控制的矩阵键盘(30页珍藏版)》请在金锄头文库上搜索。

1、距阵键盘矩 阵 键 盘 是 单 片 机 编 程 中 所 使 用 的 键 盘 .1.矩 阵 式 键 盘 的 结 构 与 工 作 原 理在 键 盘 中 按 键 数 量 较 多 时 , 为 了 减 少 I/O 口 的 占 用 , 通 常 将 按 键 排 列 成 矩 阵 形 式 ,如 图 1 所 示 。 在 矩 阵 式 键 盘 中 , 每 条 水 平 线 和 垂 直 线 在 交 叉 处 不 直 接 连 通 , 而 是 通 过一 个 按 键 加 以 连 接 。 这 样 , 一 个 端 口 ( 如 P1 口 ) 就 可 以 构 成 4*4=16 个 按 键 , 比 之直 接 将 端 口 线 用 于 键 盘

2、 多 出 了 一 倍 , 而 且 线 数 越 多 , 区 别 越 明 显 , 比 如 再 多 加 一 条 线 就可 以 构 成 20 键 的 键 盘 , 而 直 接 用 端 口 线 则 只 能 多 出 一 键 ( 9 键 ) 。 由 此 可 见 , 在 需要 的 键 数 比 较 多 时 , 采 用 矩 阵 法 来 做 键 盘 是 合 理 的 。矩 阵 式 结 构 的 键 盘 显 然 比 直 接 法 要 复 杂 一 些 , 识 别 也 要 复 杂 一 些 , 上 图 中 , 列 线 通过 电 阻 接 正 电 源 , 并 将 行 线 所 接 的 单 片 机 的 I/O 口 作 为 输 出 端 ,

3、而 列 线 所 接 的 I/O 口则 作 为 输 入 。 这 样 , 当 按 键 没 有 按 下 时 , 所 有 的 输 出 端 都 是 高 电 平 , 代 表 无 键 按 下 。 行线 输 出 是 低 电 平 , 一 旦 有 键 按 下 , 则 输 入 线 就 会 被 拉 低 , 这 样 , 通 过 读 入 输 入 线 的 状 态就 可 得 知 是 否 有 键 按 下 了 。 具 体 的 识 别 及 编 程 方 法 如 下 所 述 。2、 矩 阵 式 键 盘 的 按 键 识 别 方 法确 定 矩 阵 式 键 盘 上 何 键 被 按 下 介 绍 一 种 “行 扫 描 法 ”。行 扫 描 法 行

4、 扫 描 法 又 称 为 逐 行 ( 或 列 ) 扫 描 查 询 法 , 是 一 种 最 常 用 的 按 键 识 别 方法 , 如 上 图 所 示 键 盘 , 介 绍 过 程 如 下 。1、 判 断 键 盘 中 有 无 键 按 下 将 全 部 行 线 Y0-Y3 置 低 电 平 , 然 后 检 测 列 线 的 状 态 。只 要 有 一 列 的 电 平 为 低 , 则 表 示 键 盘 中 有 键 被 按 下 , 而 且 闭 合 的 键 位 于 低 电 平 线 与4 根 行 线 相 交 叉 的 4 个 按 键 之 中 。 若 所 有 列 线 均 为 高 电 平 , 则 键 盘 中 无 键 按 下

5、。2、 判 断 闭 合 键 所 在 的 位 置 在 确 认 有 键 按 下 后 , 即 可 进 入 确 定 具 体 闭 合 键 的 过 程 。其 方 法 是 : 依 次 将 行 线 置 为 低 电 平 , 即 在 置 某 根 行 线 为 低 电 平 时 , 其 它 线 为 高 电 平 。 在确 定 某 根 行 线 位 置 为 低 电 平 后 , 再 逐 行 检 测 各 列 线 的 电 平 状 态 。 若 某 列 为 低 , 则 该 列 线与 置 为 低 电 平 的 行 线 交 叉 处 的 按 键 就 是 闭 合 的 按 键 。下 面 给 出 一 个 具 体 的 例 子 :图 仍 如 上 所 示

6、 。 8031 单 片 机 的 P1 口 用 作 键 盘 I/O 口 , 键 盘 的 列 线 接 到 P1 口 的低 4 位 , 键 盘 的 行 线 接 到 P1 口 的 高 4 位 。 列 线 P1.0-P1.3 分 别 接 有 4 个 上 拉 电 阻 到正 电 源 +5V, 并 把 列 线 P1.0-P1.3 设 置 为 输 入 线 , 行 线 P1.4-P.17 设 置 为 输 出 线 。 4根 行 线 和 4 根 列 线 形 成 16 个 相 交 点 。1、 检 测 当 前 是 否 有 键 被 按 下 。 检 测 的 方 法 是 P1.4-P1.7 输 出 全 “0”, 读 取 P1.

7、0-P1.3 的 状 态 , 若 P1.0-P1.3 为 全 “1”, 则 无 键 闭 合 , 否 则 有 键 闭 合 。2、 去 除 键 抖 动 。 当 检 测 到 有 键 按 下 后 , 延 时 一 段 时 间 再 做 下 一 步 的 检 测 判 断 。3、 若 有 键 被 按 下 , 应 识 别 出 是 哪 一 个 键 闭 合 。 方 法 是 对 键 盘 的 行 线 进 行 扫 描 。P1.4-P1.7 按 下 述 4 种 组 合 依 次 输 出 :P1.7 1 1 1 0P1.6 1 1 0 1P1.5 1 0 1 1P1.4 0 1 1 1在 每 组 行 输 出 时 读 取 P1.0

8、-P1.3, 若 全 为 “1”, 则 表 示 为 “0”这 一 行 没 有 键 闭 合 ,否 则 有 键 闭 合 。 由 此 得 到 闭 合 键 的 行 值 和 列 值 , 然 后 可 采 用 计 算 法 或 查 表 法 将 闭 合 键 的行 值 和 列 值 转 换 成 所 定 义 的 键 值4、 为 了 保 证 键 每 闭 合 一 次 CPU 仅 作 一 次 处 理 , 必 须 却 除 键 释 放 时 的 抖 动 。键 盘 扫 描 程 序 :从 以 上 分 析 得 到 键 盘 扫 描 程 序 的 流 程 图 如 图 2 所 示 。 程 序 如 下SCAN: MOV P1,#0FHMOV A

9、,P1ANL A,#0FHCJNE A,#0FH,NEXT1SJMP NEXT3NEXT1: ACALL D20MSMOV A,#0EFHNEXT2: MOV R1,AMOV P1,AMOV A,P1ANL A,#0FHCJNE A,#0FH,KCODE;MOV A,R1SETB CRLC AJC NEXT2NEXT3: MOV R0,#00HRETKCODE: MOV B,#0FBHNEXT4: RRC AINC B JC NEXT4MOV A,R1SWAP ANEXT5: RRC AINC BINC BINC BINC BJC NEXT5NEXT6: MOV A,P1ANL A,#0FHC

10、JNE A,#0FH,NEXT6MOV R0,#0FFHRET键 盘 处 理 程 序 就 作 这 么 一 个 简 单 的 介 绍 , 实 际 上 , 键 盘 、 显 示 处 理 是 很 复 杂 的 , 它往 往 占 到 一 个 应 用 程 序 的 大 部 份 代 码 , 可 见 其 重 要 性 , 但 说 到 , 这 种 复 杂 并 不 来 自 于 单片 机 的 本 身 , 而 是 来 自 于 操 作 者 的 习 惯 等 等 问 题 , 因 此 , 在 编 写 键 盘 处 理 程 序 之 前 , 最好 先 把 它 从 逻 辑 上 理 清 , 然 后 用 适 当 的 算 法 表 示 出 来 ,

11、最 后 再 去 写 代 码 , 这 样 , 才 能 快速 有 效 地 写 好 代 码 。键 盘 是 由 一 组 规 则 排 列 的 按 键 组 成 , 一 个 按 键 实 际 上 是 一 个 开 关 元 件 , 也 就 是 说 键盘 是 一 组 规 则 排 列 的 开 关 。键 盘 工 作 原 理1 按 键 的 分 类按 键 按 照 结 构 原 理 可 分 为 两 类 , 一 类 是 触 点 式 开 关 按 键 , 如 机 械 式 开 关 、 导 电 橡 胶式 开 关 等 ; 另 一 类 是 无 触 点 开 关 按 键 , 如 电 气 式 按 键 , 磁 感 应 按 键 等 。 前 者 造 价

12、 低 , 后者 寿 命 长 。 目 前 , 微 机 系 统 中 最 常 见 的 是 触 点 式 开 关 按 键 。按 键 按 照 接 口 原 理 可 分 为 编 码 键 盘 与 非 编 码 键 盘 两 类 , 这 两 类 键 盘 的 主 要 区 别 是 识别 键 符 及 给 出 相 应 键 码 的 方 法 。 编 码 键 盘 主 要 是 用 硬 件 来 实 现 对 键 的 识 别 , 非 编 码 键 盘主 要 是 由 软 件 来 实 现 键 盘 的 定 义 与 识 别 。全 编 码 键 盘 能 够 由 硬 件 逻 辑 自 动 提 供 与 键 对 应 的 编 码 , 此 外 , 一 般 还 具

13、有 去 抖 动 和多 键 、 窜 键 保 护 电 路 , 这 种 键 盘 使 用 方 便 , 但 需 要 较 多 的 硬 件 , 价 格 较 贵 , 一 般 的 单 片机 应 用 系 统 较 少 采 用 。 非 编 码 键 盘 只 简 单 地 提 供 行 和 列 的 矩 阵 , 其 它 工 作 均 由 软 件 完 成 。由 于 其 经 济 实 用 , 较 多 地 应 用 于 单 片 机 系 统 中 。 下 面 将 重 点 介 绍 非 编 码 键 盘 接 口 。2 键 输 入 原 理在 单 片 机 应 用 系 统 中 , 除 了 复 位 按 键 有 专 门 的 复 位 电 路 及 专 一 的 复

14、 位 功 能 外 , 其 它按 键 都 是 以 开 关 状 态 来 设 置 控 制 功 能 或 输 入 数 据 。 当 所 设 置 的 功 能 键 或 数 字 键 按 下 时 ,计 算 机 应 用 系 统 应 完 成 该 按 键 所 设 定 的 功 能 , 键 信 息 输 入 是 与 软 件 结 构 密 切 相 关 的 过 程 。 对 于 一 组 键 或 一 个 键 盘 , 总 有 一 个 接 口 电 路 与 CPU 相 连 。 CPU 可 以 采 用 查 询 或中 断 方 式 了 解 有 无 将 键 输 入 并 检 查 是 哪 一 个 键 按 下 , 将 该 键 号 送 入 累 加 器 AC

15、C, 然后 通 过 跳 转 指 令 转 入 执 行 该 键 的 功 能 程 序 , 执 行 完 后 再 返 回 主 程 序 。3 按 键 结 构 与 特 点微 机 键 盘 通 常 使 用 机 械 触 点 式 按 键 开 关 , 其 主 要 功 能 是 把 机 械 上 的 通 断 转 换 成 为 电气 上 的 逻 辑 关 系 。 也 就 是 说 , 它 能 提 供 标 准 的 TTL 逻 辑 电 平 , 以 便 与 通 用 数 字 系 统 的逻 辑 电 平 相 容 。机 械 式 按 键 再 按 下 或 释 放 时 , 由 于 机 械 弹 性 作 用 的 影 响 , 通 常 伴 随 有 一 定 时

16、 间 的 触点 机 械 抖 动 , 然 后 其 触 点 才 稳 定 下 来 。 其 抖 动 过 程 如 图 7.2 所 示 , 抖 动 时 间 的 长 短 与开 关 的 机 械 特 性 有 关 , 一 般 为 510ms。左 图 按 键 触 点 的 机 械 抖 动在 触 点 抖 动 期 间 检 测 按 键 的 通 与 断 状 态 , 可 能 导 致 判 断 出 错 。 即 按 键 一 次 按 下 或 释放 被 错 误 地 认 为 是 多 次 操 作 , 这 种 情 况 是 不 允 许 出 现 的 。 为 了 克 服 按 键 触 点 机 械 抖 动 所致 的 检 测 误 判 , 必 须 采 取 去 抖 动 措 施 , 可 从 硬 件 、 软 件 两 方 面 予 以 考 虑 。 在 键 数 较 少 时 ,可 采 用 硬 件 去 抖 , 而 当 键 数 较 多 时 , 采 用 软 件 去 抖 。在 硬 件 上 可 采 用 在 键 输 出 端 加 R-S 触 发 器 (双 稳 态 触 发 器 )或 单 稳 态 触 发 器 构 成 去抖

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 建筑资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号