基于STC89C52智能定时器设计毕业论文_第1页
基于STC89C52智能定时器设计毕业论文_第2页
基于STC89C52智能定时器设计毕业论文_第3页
基于STC89C52智能定时器设计毕业论文_第4页
基于STC89C52智能定时器设计毕业论文_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

I智 能 定 时 器 设 计摘 要 : 定 时 器 的 数 字 化 给 人 们 生 产 生 活 带 来 了 极 大 的 方 便 , 同 时 定 时 器 的 集 成 化 受 广大 消 费 的 喜 爱 , 因 此 得 到 了 广 泛 的 使 用 。定 时 器 是 采 用 数 字 电 路 实 现 对 “ 时 ” 、 “ 分 ” 、 “ 秒 ” 数 字 显 示 的 计 时 装 置 。 定时 器 的 精 度 、 稳 定 度 远 远 超 过 老 式 定 时 器 。 在 这 次 设 计 中 , 我 们 采 用 LED 数 码 管 显 示时 、 分 、 秒 , 以 24 小 时 计 时 方 式 , 根 据 数 码 管 动 态 显 示 原 理 来 进 行 显 示 , 用 12MHz的 晶 振 产 生 振 荡 脉 冲 , 定 时 器 计 数 。 在 此 次 设 计 中 , 电 路 具 有 显 示 时 间 的 其 本 功 能 ,还 可 以 实 现 对 时 间 的 调 整 。本 次 设 计 定 时 器 主 要 通 过 单 片 机 系 统 将 传 输 的 数 据 显 示 在 数 码 显 示 管 和 LED灯 上 ,从 而 实 现 的 闹 钟 、 整 点 报 时 、 时 间 显 示 、 校 对 时 间 等 一 系 列 的 的 操 作 。关 键 词 : 定 时 器 ; 单 片 机 ; STC89C52目 录摘 要 .11 引 言 .11.定 时 器 的 背 景 .11.2定 时 器 的 意 义 .11.3定 时 器 的 应 用 .21.4主 要 设 计 任 务 .22 整 体 设 计 方 案 .32.1 定 时 器 的 功 能 及 设 计 要 求 .32.2 定 时 器 的 实 现 形 式 .32.3 实 现 定 时 器 计 时 的 基 本 方 法 .43 定 时 器 硬 件 系 统 的 设 计 .63.1 定 时 器 主 控 电 路 CPU的 选 择 .63.2 定 时 器 主 控 电 路 最 小 应 用 系 统 .103.3 键 盘 及 其 接 口 .113.3.1按 键 的 去 抖 处 理 .113.3.2定 时 器 按 键 电 路 .123.4 蜂 鸣 器 电 路 .123.5 数 码 管 显 示 电 路 .134 定 时 器 软 件 系 统 的 设 计 .164.1 主 程 序 流 程 图 .164.2 中 断 流 程 图 .174.3 定 时 程 序 设 计 .195 定 时 器 的 系 统 调 试 仿 真 与 测 试 .205.1 调 试 .205.2 仿 真 .215.3 测 试 .236 总 结 .25致 谢 .26参 考 文 献 .27附 件 一 : 定 时 器 电 路 图 .28附 件 二 : 元 器 件 清 单 .28附 件 三 : 源 程 序 .301第 1 章 引 言1.1 数 字 定 时 器 的 背 景20世 纪 末 , 电 子 技 术 获 得 了 飞 速 的 发 展 , 在 其 推 动 下 , 现 代 电 子 产 品 几 乎 渗 透 了社 会 的 各 个 领 域 , 有 力 地 推 动 了 社 会 生 产 力 的 发 展 和 社 会 信 息 化 程 度 的 提 高 , 同 时 也使 现 代 电 子 产 品 性 能 进 一 步 提 高 , 产 品 更 新 换 代 的 节 奏 也 越 来 越 快 。 时 间 对 人 们 来 说总 是 那 么 宝 贵 , 工 作 的 忙 碌 性 和 繁 杂 性 容 易 使 人 忘 记 当 前 的 时 间 。 忘 记 了 要 做 的 事 情 ,当 事 情 不 是 很 重 要 的 时 候 , 这 种 遗 忘 无 伤 大 雅 。 但 是 , 一 旦 重 要 事 情 , 一 时 的 耽 误 可能 酿 成 大 祸 。目 前 , 单 片 机 正 朝 着 高 性 能 和 多 品 种 方 向 发 展 趋 势 将 是 进 一 步 向 着 CMOS化 、 低 功耗 、 小 体 积 、 大 容 量 、 高 性 能 、 低 价 格 和 外 围 电 路 内 装 化 等 几 个 方 面 发 展 。 单 片 机 应用 的 重 要 意 义 还 在 于 , 它 从 根 本 上 改 变 了 传 统 的 控 制 系 统 设 计 思 想 和 设 计 方 法 。 从 前必 须 由 模 拟 电 路 或 数 字 电 路 实 现 的 大 部 分 功 能 , 现 在 已 能 用 单 片 机 通 过 软 件 方 法 来 实现 了 。 这 种 软 件 代 替 硬 件 的 控 制 技 术 也 称 为 微 控 制 技 术 , 是 传 统 控 制 技 术 的 一 次 革 命 。单 片 机 模 块 中 最 常 见 的 是 数 字 钟 , 数 字 钟 是 一 种 用 数 字 电 路 技 术 实 现 时 、 分 、 秒计 时 的 装 置 , 与 机 械 式 时 钟 相 比 具 有 更 高 的 准 确 性 和 直 观 性 , 且 无 机 械 装 置 , 具 有 更更 长 的 使 用 寿 命 , 因 此 得 到 了 广 泛 的 使 用 。1.2 数 字 定 时 器 的 意 义定 时 器 是 采 用 数 字 电 路 实 现 对 时 、 分 、 秒 。 数 字 显 示 的 计 时 装 置 ,广 泛 用 于 个 人 家庭 、 车 站 ,、 码 头 办 公 室 等 公 共 场 所 ,成 为 人 们 日 常 生 活 中 不 可 少 的 必 需 品 ,由 于 数 字 集成 电 路 的 发 展 和 石 英 晶 体 振 荡 器 的 广 泛 应 用 ,使 得 数 字 钟 的 精 度 ,远 远 超 过 老 式 定 时 器 ,定 时 器 的 数 字 化 给 人 们 生 产 生 活 带 来 了 极 大 的 方 便 , 而 且 大 大 地 扩 展 了 定 时 器 原 先 的报 时 功 能 。 诸 如 定 时 自 动 报 警 、 按 时 自 动 打 铃 、 时 间 程 序 自 动 控 制 、 定 时 广 播 、 自 动起 闭 路 灯 、 定 时 开 关 烘 箱 、 通 断 动 力 设 备 、 甚 至 各 种 定 时 电 气 的 自 动 启 用 等 , 所 有 这些 , 都 是 以 定 时 器 数 字 化 为 基 础 的 。 因 此 , 研 究 定 时 器 及 扩 大 其 应 用 , 有 着 非 常 现 实的 意 义 。 出 售 10元 2000个 财 富 值 , 足 够 大 学 4年 的 使 用 。 +威 信 ( mk6689866) 。 感 谢 您 对 我 们 的 信 任 .已 帮 助 多 名 毕 业 生 完 成 毕 业 设 计 , 顺 利 通 过 毕 业 .在 本 工 作 室 定 做 , 请 认 真 阅 读 以 下 注 意 事 项 :1.承 接 毕 业 设 计 /论 文 类 型 专 科 /本 科 /工 硕 1.1 PLC毕 业 设 计 ,单 片 机 毕 业 设 计21.2.电 子 |通 信 |电 力 |电 气 |机 电 |自 动 化 类1.3.图 像 处 理 类 /地 理 信 息 GIS类2.认 真 如 实 填 写 论 文 定 做 报 表 。 因 为 我 们 是 根 据 你 的 定 做 需 求 收 费 , 并 按 此 需 求 ,作 为 毕 业 设 计 制 作 完 成 时 验 收 的 依 据 .3.填 写 完 成 后 。 或 发 邮 箱请 发 至 邮 箱 : 我 们 将 在 一 日 之 内 回 复 你 ,并 与 你 联 系 .1.3 数 字 定 时 器 的 应 用数 字 定 时 器 已 成 为 人 们 日 常 生 活 中 的 必 需 品 , 广 泛 用 于 个 人 家 庭 以 及 车 站 、 码 头 、剧 场 、 办 公 室 等 公 共 场 所 , 给 人 们 的 生 活 、 学 习 、 工 作 、 娱 乐 带 来 极 大 的 方 便 。 由 于数 字 集 成 电 路 技 术 的 发 展 和 采 用 了 先 进 的 石 英 技 术 , 使 定 时 器 具 有 走 时 准 确 、 性 能 稳定 、 携 带 方 便 等 优 点 , 它 还 用 于 计 时 、 自 动 报 时 及 自 动 控 制 等 各 个 领 域 。1.4 主 要 设 计 任 务本 次 设 计 需 要 完 成 的 设 计 不 仅 仅 是 完 成 毕 业 设 计 而 已 , 更 主 要 的 是 通 过 本 次 本 次的 设 计 更 好 的 来 回 顾 三 年 所 学 的 知 识 , 老 师 们 的 辛 勤 奉 献 自 己 究 竟 学 到 了 什 么 , 同 时也 是 自 己 对 自 己 即 将 结 束 的 大 学 生 活 画 个 句 号 , 为 即 将 来 到 的 工 作 作 出 了 是 实 际 性 的准 备 , 不 仅 仅 是 以 往 那 种 只 学 习 书 面 知 识 而 已 , 更 多 的 是 锻 炼 自 己 实 际 操 作 的 能 力 ,也 算 是 在 进 入 工 作 前 给 自 己 的 一 个 启 发 。 然 而 就 本 次 设 计 的 定 时 器 而 言 要 完 成 的 任 务有 :( 1) 完 成 硬 件 电 路 的 设 计 , 包 括 数 字 钟 最 小 系 统 设 计 、 按 键 电 路 、 电 源 电 路 、蜂 鸣 器 电 路 、 二 极 管 指 示 灯 和 LED数 码 管 显 示 电 路 。( 2) 完 成 软 件 程 序 的 编 写 和 编 译 , 使 系 统 具 备 如 下 功 能 : 时 间 显 示 、 校 对时 间 、 闹 铃 、 报 时 等 功 能 。( 3) 完 成 电 路 的 模 拟 仿 真 。( 4) 完 成 实 物 的 焊 接 及 测 试 。3第 2章 整 体 设 计 方 案2.1 定 时 器 的 功 能 及 设 计 要 求( 1) 通 过 单 片 机 内 定 时 器 控 制 走 时 , 准 确 持 续 走 时 , 调 时 不 影 响 走 时 。( 2) 在 六 个 数 码 管 上 显 示 时 、 分 、 秒 及 两 个 小 数 点 。( 3) 含 有 闹 钟 功 能 , 可 以 选 择 闹 钟 开 关 , 可 以 设 定 闹 铃 时 间 。( 4) 到 达 闹 钟 时 刻 蜂 鸣 器 警 报 , 可 以 关 掉 警 报 。( 5) 当 时 间 到 整 点 时 , 蜂 鸣 器 会 短 响 一 声 , 可 以 关 掉 报 时 。2.2 定 时 器 的 实 现 形 式利 用 单 片 机 的 智 能 性 , 可 方 便 的 实 现 具 有 智 能 定 时 器 的 设 计 。 而 且 , 微 处 理 系 统具 有 时 钟 振 荡 系 统 , 利 用 系 统 时 钟 并 借 助 微 处 理 器 的 定 时 /计 数 器 功 能 可 以 实 现 数 字 定时 器 的 功 能 。 定 时 器 电 路 主 要 由 单 片 机 ( STC89C52) 主 控 电 路 、 电 源 电 路 、 按 键 控 制电 路 、 数 码 管 显 示 电 路 、 蜂 鸣 器 电 路 、 以 及 二 极 管 指 示 灯 等 几 个 部 分 组 成 , 它 主 要 实现 时 钟 的 显 示 , 以 及 对 时 、 分 、 秒 进 行 调 整 , 即 实 现 调 时 的 功 能 , 其 数 字 定 时 器 系 统整 体 结 构 如 图 2-1所 示 。图 2-1 数 字 定 时 器 的 系 统 框 架4( 1) 显 示 方 案方 案 一 : 静 态 显 示 就 是 CPU 将 要 显 示 的 字 或 字 段 码 送 到 输 出 口 , 显 示 器 就 可 以 显示 出 所 要 显 示 的 字 符 , 如 果 CPU 不 去 改 写 它 , 它 将 一 直 保 持 下 去 ; 静 态 显 示 硬 件 开 销大 , 电 路 复 杂 , 信 息 刷 新 速 度 慢 。方 案 二 : 动 态 显 示 则 是 一 位 一 位 的 轮 流 点 亮 显 示 器 的 各 个 位 ( 扫 描 ) 。 对 于 显 示 器的 每 一 位 而 言 , 每 隔 一 段 时 间 点 亮 一 次 ; 动 态 显 示 耗 能 较 小 , 但 编 写 程 序 较 复 杂 。 动态 显 示 硬 件 连 接 简 单 , 信 息 刷 新 速 度 快 。由 于 本 次 设 计 是 对 时 间 进 行 显 示 , 所 以 在 此 选 择 的 是 方 案 二 , 采 用 动 态 显 示 。( 2) 键 盘 方 案方 案 一 : 独 立 式 键 盘 。 独 立 式 键 盘 的 各 个 按 键 相 互 独 立 , 每 个 按 键 独 立 的 与 一 根数 据 输 入 线 ( 单 片 机 并 行 接 口 或 其 他 芯 片 的 并 行 接 口 ) 连 接 。 独 立 式 键 盘 配 置 灵 活 ,软 件 结 构 简 单 。 但 每 个 按 键 必 须 占 用 一 根 接 口 线 , 在 按 键 数 量 不 多 时 , 接 口 占 用 多 。所 以 , 独 立 式 按 键 常 用 于 按 键 数 量 不 多 的 场 合 。方 案 二 : 矩 阵 式 键 盘 。 矩 阵 式 键 盘 采 用 的 是 行 列 式 结 构 , 按 键 设 置 在 行 列 的 交 点上 。 ( 当 数 量 接 口 为 8时 , 可 以 将 4根 接 口 定 义 为 行 线 , 另 4根 定 义 为 列 线 , 形 成 4*4键 盘 , 可 以 配 置 16个 按 键 。 )由 于 本 设 计 只 用 了 6 个 按 键 , 不 需 要 采 用 矩 阵 式 键 盘 , 所 以 选 择 第 一 种 方 案 , 采用 独 立 式 键 盘 。( 3) 计 时 方 案采 用 软 件 控 制 :利 用 单 片 机 内 部 的 定 时 /计 数 器 进 行 定 时 , 配 合 软 件 定 时 实 现 时 、 分 、 秒 的 计 时 ,该 方 案 能 够 使 设 计 者 在 设 计 过 程 中 容 易 实 现 , 且 节 省 硬 件 成 本 , 因 此 本 系 统 将 采 用 软件 方 法 实 现 计 时 。2.3 实 现 定 时 器 计 时 的 基 本 方 法用 STC89C52单 片 机 的 定 时 /计 数 器 T0产 生 一 秒 的 定 时 时 间 , 作 为 秒 计 数 时 间 , 当一 秒 产 生 时 , 秒 计 数 加 1。STC89C52单 片 机 的 内 部 16位 定 时 /计 数 器 是 一 个 可 编 程 定 时 /计 数 器 , 它 既 可 以 工作 在 13位 定 时 方 式 , 也 可 以 工 作 在 16位 定 时 方 式 和 8 位 定 时 方 式 。 只 要 通 过 设 置 特殊 功 能 寄 存 器 TMOD, 即 可 完 成 。 定 时 /计 数 器 何 时 工 作 也 是 通 过 TCON特 殊 功 能 寄 存 器来 设 置 的 。在 此 设 计 中 , 选 择 16位 定 时 工 作 方 式 。 对 于 T0来 说 , 系 统 时 钟 为 12MHz, 最 大 定5时 也 只 有 65536us, 即 65.536ms, 无 法 达 到 我 们 所 需 要 的 1 秒 的 定 时 , 因 此 , 必 须 通过 软 件 来 处 理 这 个 问 题 , 假 设 取 T0的 最 大 定 时 为 50ms, 即 要 定 时 1秒 需 要 经 过 20次的 50ms的 定 时 。 对 于 这 20次 计 数 , 就 可 以 采 用 软 件 的 方 法 来 统 计 了 。设 定 TMOD 00000001B, 即 TMOD 01H, 设 置 定 时 /计 数 器 0工 作 在 方 式 1。下 面 我 们 要 给 T0定 时 /计 数 器 的 TH0, TL0装 入 预 置 初 值 , 通 过 下 面 的 公 式 可 以 计算 出 :TH0 ( 216 50000) /256TL0 ( 216 50000) MOD取 摸 256这 样 , 当 定 时 /计 数 器 0 计 满 50ms 时 , 产 生 一 个 中 断 , 我 们 可 以 在 中 断 服 务 程 序中 , 对 中 断 次 数 加 以 统 计 , 以 实 现 数 字 钟 的 逻 辑 功 能 。6第 3 章 定 时 器 硬 件 系 统 的 设 计3.1 定 时 器 主 控 电 路 CPU 的 选 择主 控 电 路 CPU是 系 统 的 核 心 单 元 , 在 执 行 程 序 中 其 关 键 作 用 , 它 的 优 劣 直 接 关 系到 系 统 的 性 能 。 本 次 设 计 主 要 以 STC89C52单 片 机 为 研 究 核 心 , 分 析 其 内 部 结 构 , 硬 件资 源 分 配 等 , 下 面 是 对 STC89C52单 片 机 的 介 绍 :STC89C52RC单 片 机 是 新 一 代 高 速 、 低 功 耗 、 超 强 抗 干 扰 的 单 片 机 , 指 令 代 码 完 全兼 容 传 统 8051单 片 机 , 12时 钟 /机 器 周 期 和 6时 钟 /机 器 周 期 可 以 任 意 选 择 。主 要 特 性 如 下 :( 1) 增 强 型 8051单 片 机 , 6时 钟 /机 器 周 期 和 12时 钟 /机 器 周 期 可 以 任 意 选 择 ,指 令 代 码 完 全 兼 容 传 统 8051( 2) 工 作 电 压 : 5.5V 3.3V( 5V单 片 机 ) /3.8V 2.0V( 3V单 片 机 )( 3) 工 作 频 率 范 围 : 0 40MHz, 相 当 于 普 通 8051的 0 80MHz, 实 际 工 作 频 率 可达 48MHz( 4) 用 户 应 用 程 序 空 间 为 8K字 节( 5) 片 上 集 成 512字 节 RAM( 6) 通 用 I/O口 ( 32个 ) , 复 位 后 为 : P1/P2/P3/P4是 准 双 向 口 /弱 上 拉 , P0口 是漏 极 开 路 输 出 , 作 为 总 线 扩 展 用 时 , 不 用 加 上 拉 电 阻 , 作 为 I/O 口 用 时 , 需 加 上 拉 电阻 。 ( 7) ISP( 在 系 统 可 编 程 ) /IAP( 在 应 用 可 编 程 ) , 无 需 专 用 编 程 器 , 无 需 专 用 仿真 器 , 可 通 过 串 口 ( RxD/P3.0,TxD/P3.1) 直 接 下 载 用 户 程 序 , 数 秒 即 可 完 成 一 片( 8) 具 有 EEPROM功 能( 9) 具 有 看 门 狗 功 能( 10) 共 3个 16位 定 时 器 /计 数 器 。 即 定 时 器 T0、 T1、 T2( 11) 外 部 中 断 4路 , 下 降 沿 中 断 或 低 电 平 触 发 电 路 , Power Down模 式 可 由 外 部中 断 低 电 平 触 发 中 断 方 式 唤 醒( 12) 通 用 异 步 串 行 口 ( UART) , 还 可 用 定 时 器 软 件 实 现 多 个 UART( 13) 工 作 温 度 范 围 : -40 +85 ( 工 业 级 ) /0 75 ( 商 业 级 )( 14) PDIP封 装STC89C52RC单 片 机 的 工 作 模 式 :7 掉 电 模 式 : 典 型 功 耗 #defineuintunsignedint#defineucharunsignedchar/*定 义 数 码 管 */#define SMG_XS P0 /数 码 管 数 据 显 示#define SMG_KZ P2 /数 码 管 控 制 显 示#defineSpeak P3_7 /定 义 蜂 鸣 器 接 口#define LED1 P3_4 /定 义 LED1接 口 (走 时 提 示 指 示 灯 )#defineLED2 P3_5 /定 义 LED2接 口 (闹 钟 指 示 灯 亮 )#defineLED3 P3_6 /定 义 LED3接 口 (整 点 报 时 指 示 灯 )#defineKey1 P1_0 /时 间 调 整 允 许 按 键#defineKey2 P1_1 /时 、 分 加 按 键#defineKey3 P1_2 /时 、 分 减 按 键#defineKey4 P3_1 /闹 钟 时 间 调 整 允 许 按 键#defineKey5 P3_2 /开 /关 闹 钟 按 键#defineKey6 P3_3 /开 /关 整 点 报 时 按 键uchar code Data=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xBF;/没 有小 数 点/定 义 数 组 数 码 管 0 1 2 3 4 5 6 7 8 9 -uchar code Data1=0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10,0x3F;/带 小数 点/定 义 数 组 数 码 管 0 1 2 3 4 5 6 7 8 9 -ucharhour=12,min=0,sec=0; /系 统 上 电 默 认 时 间 是 12.00.00ucharhour1=6,min1=0,sec1=0; /系 统 上 电 默 认 闹 铃 是 06.00.00charnum=0; /时 间 基 数 numuintt=3; /数 码 管 动 态 扫 描 延 时 时 间 基 数 源 数 据 3ucharflag=0; /显 示 标 志 位 (0:走 时 正 常 1:调 整 时 钟 2:调 整 分 钟 )uinti=0;j=0; /循 环 变 量 i,jbitnao_z=0; /闹 钟 标 志 位 (0:关 闭 闹 钟 1:开 启 闹 钟 )ucharflag_nao_z=0; /闹 钟 显 示 模 式 (0:显 示 正 常 走 时 时 间 1:显 示 闹 钟 时间 2:调 整 闹 钟 时 钟 3:调 整 闹 钟 分 钟 )bitbao_shi=0; /整 点 报 时 标 志 位 (0:不 允 许 整 点 报 时 1:允 许 整 点 报 时 )31voiddelay(uinttime) /扫 描 延 时 函 数 uintx,y;for(x=time;x0;x-)for(y=110;y0;y-);voiddelay_fmq(uinttime) /延 时 函 数 (蜂 鸣 器 ) uintx,y;for(x=time;x0;x-)for(y=5;y0;y-);voidfmq() /蜂 鸣 器 函 数 (按 键 提 示 ) for(i=0;i100;i+) Speak=0;delay_fmq(10);Speak=1;voidTime0_init() /定 时 器 0初 始 化 函 数 TMOD=0x01; /定 时 器 0为 方 式 1TL0=(65536-50000)%256;TH0=(65536-50000)/256; /12M晶 振 定 时 时 间 50msET0=1; /开 定 时 器 0中 断EA=1; /开 总 中 断TR0=0; /先 不 启 动 定 时 器 0voidTime0()interrupt1 /定 时 器 0中 断 服 务 函 数 TH0=(65536-50000)/256; /重 新 载 装 初 值 ,设 置 50ms中 断 一 次TL0=(65536-50000)%256;num+; /时 间 基 数 加 1while(num=20) /1秒 时 间 到 num=0; /num清 0sec+; /秒 加 132if(flag_nao_z!=0) /闹 钟 显 示 模 式 不 等 于 0(不 显 示 正 常 走 时 时 间 ,即 显 示闹 钟 时 间 ) LED1=LED1; /指 示 灯 按 照 2Hz 频 率 闪 烁 (在 调 整 闹 钟 时 间 时 ,提示 正 在 走 时 )else /否 则 闹 钟 显 示 模 式 等 于 0(显 示 正 常 走 时 时 间 ) LED1=1; /在 正 常 走 时 的 时 候 ,指 示 灯 不 亮if(nao_z=1) /当 闹 钟 标 示 位 为 1:开 启 闹 钟LED2=0; /闹 钟 指 示 灯 亮if(hour=hour1 /闹 钟 指 示 灯 不 亮while(sec=60) /1分 时 间 到 sec=0; /秒 清 0min+; /分 加 1while(min=60) /1小 时 时 间 到 min=0; /分 清 0hour+; /时 加 1while(hour=24) /24小 时 到 hour=0; /时 清 033voiddisp(hour,min,sec) /数 码 管 正 常 显 示 模 式 SMG_XS=Datahour/10; /小 时 十 位SMG_KZ=0xdf; /控 制 第 1个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Data1hour%10; /小 时 个 位SMG_KZ=0xef; /控 制 第 2个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Datamin/10; /分 十 位SMG_KZ=0xf7; /控 制 第 3个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Data1min%10; /分 个 位SMG_KZ=0xfb; /控 制 第 4个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Datasec/10; /秒 十 位SMG_KZ=0xfd; /控 制 第 5个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Datasec%10; /秒 个 位SMG_KZ=0xfe; /控 制 第 6个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;voiddisp1(hour,min,sec) /数 码 管 模 式 1:调 小 时 模 式 (时 钟 在 数 码 管 上 闪 烁 ) j+; /j加 1while(j=40)j=0; /j为 40时 ,j清 0if(j20) /j小 于 20 时 ,分 ,秒 都 显 示 SMG_XS=Datahour/10;/小 时 十 位SMG_KZ=0xdf; /控 制 第 1个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Data1hour%10; /小 时 个 位34SMG_KZ=0xef; /控 制 第 2个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Datamin/10; /分 十 位SMG_KZ=0xf7; /控 制 第 3个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Data1min%10; /分 个 位SMG_KZ=0xfb; /控 制 第 4个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Datasec/10; /秒 十 位SMG_KZ=0xfd; /控 制 第 5个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Datasec%10;/秒 个 位SMG_KZ=0xfe; /控 制 第 6个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;else /否 则 20j40 时 不 显 示 ;分 ,秒 都 显 示 SMG_XS=Datahour/10;/小 时 十 位SMG_KZ=0xff; /控 制 第 1个 数 码 管 不 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Data1hour%10; /小 时 个 位SMG_KZ=0xff; /控 制 第 2个 数 码 管 不 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Datamin/10; /分 十 位SMG_KZ=0xf7; /控 制 第 3个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Data1min%10; /分 个 位SMG_KZ=0xfb; /控 制 第 4个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Datasec/10; /秒 十 位SMG_KZ=0xfd; /控 制 第 5个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;35SMG_XS=Datasec%10;/秒 个 位SMG_KZ=0xfe; /控 制 第 6个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;voiddisp2(hour,min,sec) /数 码 管 模 式 2:调 分 钟 模 式 (分 钟 在 数 码 管 上 闪 烁 ) j+; /j加 1while(j=40)j=0; /j为 40时 ,j清 0if(j20) /j小 于 20 时 ,分 ,秒 都 显 示SMG_XS=Datahour/10;/小 时 十 位SMG_KZ=0xdf; /控 制 第 1个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Data1hour%10; /小 时 个 位SMG_KZ=0xef; /控 制 第 2个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Datamin/10; /分 十 位SMG_KZ=0xf7; /控 制 第 3个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Data1min%10; /分 个 位SMG_KZ=0xfb; /控 制 第 4个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Datasec/10; /秒 十 位SMG_KZ=0xfd; /控 制 第 5个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Datasec%10;/秒 个 位SMG_KZ=0xfe; /控 制 第 6个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;else /否 则 20j40 时 显 示 ,分 不 显 示 ,秒 显 示 SMG_XS=Datahour/10;/小 时 十 位SMG_KZ=0xdf; /控 制 第 1个 数 码 管 亮36delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Data1hour%10; /小 时 个 位SMG_KZ=0xef; /控 制 第 2个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Datamin/10; /分 十 位SMG_KZ=0xff; /控 制 第 3个 数 码 管 不 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Data1min%10; /分 个 位SMG_KZ=0xff; /控 制 第 4个 数 码 管 不 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Datasec/10; /秒 十 位SMG_KZ=0xfd; /控 制 第 5个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Datasec%10;/秒 个 位SMG_KZ=0xfe; /控 制 第 6个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;voiddisp3(hour1,min1,sec1) /数 码 管 模 式 3(显 示 闹 钟 时 间 ) SMG_XS=Datahour1/10; /闹 钟 时 十 位SMG_KZ=0xdf; /控 制 第 1个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Data1hour1%10; /闹 钟 时 个 位SMG_KZ=0xef; /控 制 第 2个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Datamin1/10; /闹 钟 分 十 位SMG_KZ=0xf7; /控 制 第 3个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Data1min1%10; /闹 钟 分 个 位SMG_KZ=0xfb; /控 制 第 4个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )37SMG_KZ=0xff;SMG_XS=Datasec1/10; /闹 钟 秒 十 位SMG_KZ=0xfd; /控 制 第 5个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;SMG_XS=Datasec1%10; /闹 钟 秒 个 位SMG_KZ=0xfe; /控 制 第 6个 数 码 管 亮delay(t); /延 时 一 下 (消 隐 )SMG_KZ=0xff;voiddisp4(hour1,min1,sec1) /数 码 管 模 式 4: 调 整 闹 钟 时 钟 (闹 钟 时 钟 在 数 码 管 上 闪烁 ) j+; /j加 1while(j=40)j=0; /j为 40时 ,j清 0if(j20) /j小 于 20 闹 钟 时 ,分 ,秒 都 显 示 SMG_XS=Datahour1/10; /闹 钟 时 十 位SMG_KZ=0xdf; /控 制 第 1个 数 码 管 亮

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论