一种新的单片机“ 看门狗” 电路软件设计方法

上传人:kms****20 文档编号:46610173 上传时间:2018-06-27 格式:PDF 页数:4 大小:97.95KB
返回 下载 相关 举报
一种新的单片机“ 看门狗” 电路软件设计方法_第1页
第1页 / 共4页
一种新的单片机“ 看门狗” 电路软件设计方法_第2页
第2页 / 共4页
一种新的单片机“ 看门狗” 电路软件设计方法_第3页
第3页 / 共4页
一种新的单片机“ 看门狗” 电路软件设计方法_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《一种新的单片机“ 看门狗” 电路软件设计方法》由会员分享,可在线阅读,更多相关《一种新的单片机“ 看门狗” 电路软件设计方法(4页珍藏版)》请在金锄头文库上搜索。

1、一 一 种 种 新 的新 的 单 单 片 机片 机 “ “ 看 看 门 门 狗 狗 ” ” 电 电 路 路 软 软 件 件 设 计设 计 方 法方 法 摘 要 :摘 要 : 单 片 机 控 制 系 统 “ 看 门 狗 ” 电 路 的 有 效 性 , 除 硬 件 电 路 的 可 靠 性 以 外 , 主 要 取 决 于 如 何 正 确 给 “ 看 门 狗 ” 电 路 进 行 复 位 ( 即 “ 喂 狗 ” ) , 文 章 在 介 绍 了 一 种 采 用 MAX706和 89C52 构 成 的 硬 件 电 路 的 基 础 上 , 给 出 了 一 种 新 颖 可 靠 的 “ 看 门 狗 ” 电 路 软

2、 件 设 计 方 法 。 关 键 词 :关 键 词 : 抗 干 扰 单 片 机 看 门 狗 MAX706 89C52 随 着 MCS-51系 列 单 片 机 的 发 展 , 其 芯 片 价 格 在 不 断 下 降 , 但 同 时 也 带 来 了 单 片 机 芯 片 的 抗 干 扰 问 题 , 该 问 题 可 能 导 致 一 些 智 能 型 仪 器 仪 表 单 片 机 工 业 控 制 系 统 发 生 “ 死 机 ” 。 笔 者 通 过 近 几 年 的 设 计 实 践 及 不 断 试 验 , 总 结 了 一 套 可 靠 的 “ 看 门 狗 ” 硬 件 电 路 及 软 件 设 计 方 法 。 由 于

3、 一 些 专 业 期 刊 曾 经 刊 登 过 许 多 关 于 “ 看 门 狗 ” 硬 件 电 路 构 成 的 文 章 , 同 时 也 详 细 的 关 于 “ 看 门 狗 ” 电 路 非 正 常 失 效 故 障 原 因 的 分 析 及 针 对 性 软 件 设 计 技 巧 1, 本 文 给 出 了 一 个 采 用 MAX706 和 89C52构 成 的 “ 看 门 狗 ” 硬 件 电 路 , 并 且 从 新 的 角 度 说 明 了 如 何 确 保 “ 看 门 狗 ” 电 路 的 正 常 工 作 , 同 时 给 出 了 它 的 软 件 设 计 方 法 。 1 “ 看 门 狗 ” 硬 件 电 路 简

4、述“ 看 门 狗 ” 硬 件 电 路 简 述 现 以 MAX706监 控 电 路 为 例 ( 见 图 1) 来 说 明 “ 看 门 狗 ” 硬 件 电 路 的 工 作 过 程 , 我 们 知 道 , MAX706是 一 种 性 能 优 良 的 低 功 耗 CMOS监 控 电 路 芯 片 , 其 内 部 电 路 由 上 电 复 位 、 可 重 触 发 “ 看 门 狗 ” 定 时 器 及 电 压 比 较 器 等 组 成 2。 MAX706只 要 在 1.6秒 时 间 内 检 测 到 WCI引 脚 有 高 低 电 平 跳 变 信 号 , 则 “ 看 门 狗 ” 定 时 器 清 零 并 重 新 开 始

5、 计 时 ; 若 超 出 1.6秒 后 , WCI引 脚 仍 无 高 低 电 平 跳 变 信 号 , 则 “ 看 门 狗 ” 定 时 器 溢 出 , WDO引 脚 输 出 低 电 平 , 进 而 触 发 MR手 动 复 位 引 脚 , 使 MAC706复 位 , 从 而 使 “ 看 门 狗 ” 定 时 器 清 零 并 重 新 开 始 计 时 , WDO引 脚 输 出 高 电 平 , MAX706的 RST复 位 输 出 引 脚 输 出 大 约 200毫 秒 宽 度 的 低 电 平 脉 冲 , 使 单 片 机 控 制 系 统 可 靠 复 位 , 重 新 投 入 正 常 运 行 。 2 “ 看 门

6、 狗 ” 电 路 软 件 设 计 方 法“ 看 门 狗 ” 电 路 软 件 设 计 方 法 以 往 的 “ 看 门 狗 ” 电 路 复 位 指 令 ( 即 “ 喂 狗 ” ) 一 般 总 是 插 入 在 主 程 序 中 , 而 且 “ 喂 狗 ” 指 令 一 般 是 脉 冲 式 , 可 以 连 续 用 两 条 取 反 指 令 ( 如 CPL P1.0) 。 这 是 因 为 一 般 情 况 下 , 程 序 跑 飞 或 者 陷 入 “ 死 循 环 ” 时 , 中 断 功 能 可 能 不 受 影 响 , CPU仍 能 象 正 常 运 行 时 一 样 响 应 和 执 行 中 断 子 程 序 。 这 时

7、 如 果 中 断 子 程 序 中 插 有 “ 喂 狗 ” 指 令 , 则 “ 看 门 狗 ” 定 时 器 始 终 处 于 正 常 无 溢 出 状 态 , 无 法 对 已 经 混 乱 的 微 机 系 统 重 新 启 动 以 投 入 正 常 运 转 状 态 。 在 主 程 序 中 适 当 插 入 “ 喂 狗 ” 指 令 , 大 多 数 场 合 的 单 片 机 系 统 都 能 够 比 较 可 靠 地 工 作 。 但 是 有 一 种 特 殊 情 况 , 即 中 断 响 应 功 能 已 经 失 效 , 而 主 程 序 仍 然 能 够 正 常 运 行 , 这 时 “ 看 门 狗 ” 电 路 对 恢 复 单

8、 片 机 系 统 正 常 工 作 时 无 能 为 力 的 。 例 如 : 当 程 序 正 在 执 行 中 断 子 程 序 时 , 系 统 突 然 受 到 强 烈 干 扰 , 程 序 跑 飞 , 而 且 PC指 针 刚 好 落 在 主 程 序 的 指 令 字 节 上 , 堆 栈 也 不 溢 出 , 使 主 程 序 能 够 继 续 正 常 运 行 。 这 时 “ 看 门 狗 ” 的 “ 喂 狗 ” 动 作 正 常 , 而 中 断 再 也 不 法 响 应 了 。 这 时 因 为 在 MCS-51的 中 断 系 统 中 有 两 个 不 可 寻 址 的 优 先 级 状 态 触 发 器 , 分 别 指 标

9、 两 级 中 断 响 应 状 态 。 当 CPU响 应 中 断 时 , 首 先 置 位 相 应 的 优 先 级 状 态 触 发 器 ( 该 触 发 器 能 指 出 CPU正 在 处 理 的 中 断 优 先 级 别 ) , 这 时 会 屏 蔽 掉 同 级 别 的 所 有 中 断 申 请 , 直 到 执 行 RETI指 令 时 , 才 由 CPU硬 件 清 零 该 优 先 级 状 态 触 发 器 , 从 而 使 以 后 的 中 断 请 求 能 被 正 常 地 响 应 3。 如 果 响 应 中 断 后 而 不 执 行 RETI指 令 , 那 么 同 级 别 中 断 申 请 就 不 会 被 响 应 了

10、 。 当 然 , 象 上 述 这 种 情 况 是 比 较 少 见 的 。 大 多 数 情 况 下 , 程 序 跑 飞 后 都 会 使 PC指 针 越 出 有 效 程 序 区 , 造 成 “ 死 机 ” 。 这 时 “ 看 门 狗 ” 就 起 作 用 了 。 在 大 多 数 系 统 中 , 中 断 子 程 序 执 行 的 时 间 占 总 运 行 时 间 的 百 分 比 都 非 常 小 , 而 在 执 行 中 断 程 序 时 , PC指 针 跑 飞 越 过 RETI指 令 , 而 主 程 序 又 能 正 常 运 行 的 机 会 就 更 少 。 但 是 如 果 中 断 子 程 序 处 理 数 据 比

11、 较 复 杂 或 带 有 一 些 函 数 运 算 的 功 能 时 , 则 出 现 这 种 系 统 失 常 的 情 况 就 有 可 能 发 生 了 。 以 前 , 在 笔 者 设 计 的 智 能 流 量 计 中 就 曾 经 出 现 过 这 种 现 象 : 键 盘 显 示 操 作 都 正 常 , 看 起 来 不 象 “ 死 机 ” , 但 是 在 设 定 参 数 时 , 数 据 位 该 内 烁 的 不 闪 烁 , 总 流 量 不 会 累 计 上 去 , 显 然 是 T0定 时 中 断 系 统 失 效 , 而 主 程 序 仍 然 在 运 行 , 因 为 “ 喂 狗 ” 指 令 插 在 主 程 序 中

12、 。 那 么 , 针 对 这 种 情 形 , 有 没 有 彻 底 解 决 的 方 法 呢 ? “ 喂 狗 ”页 码 , 1/4技 术 与 应 用 文 章 - 为 全 体 电 子 工 程 师 全 力 奉 献 !2004-7-11mhtml:file:/D:LJW应 用 文 章 一 种 新 的 单 片 机 “ 看 门 狗 ” 电 路 软 件 设 计 方 .PDF created with FinePrint pdfFactory trial version http:/指 令 直 接 插 在 中 断 子 程 序 中 是 不 合 适 的 , 而 单 独 插 在 主 程 序 中 又 显 然 是 不 够

13、 的 。 笔 者 通 过 仔 细 推 敲 后 , 将 “ 喂 狗 ” 指 令 分 解 开 来 , 取 反 指 令 变 成 置 位 和 清 零 两 种 指 令 ( 即 SETB P1.0和 CLR P1.0) , 将 置 位 指 令 插 在 主 程 序 中 , 而 将 清 零 指 令 插 在 T0中 断 子 程 序 中 , 这 样 将 两 者 联 系 起 来 , 缺 一 不 可 , 无 论 主 程 序 运 行 失 效 , 还 是 T0中 断 请 求 失 效 , 都 不 能 完 成 完 整 的 “ 喂 狗 ” 指 令 , 造 成 “ 看 门 狗 ” 动 作 , 从 而 确 保 了 系 统 安 全

14、可 靠 地 工 作 。 具 体 做 法 如 下 : ORG 0000H LJMP START ORG 000BH LJMP INTT0 ORG 0030H START: MOV SP, #30H MAIN: NOP NOP SETB P1.0 NOP NOP SETB EA NOP SETB ET0 LJMP MAIN INTT0: NOP NOP CLR P1.0 NOP NOP 页 码 , 2/4技 术 与 应 用 文 章 - 为 全 体 电 子 工 程 师 全 力 奉 献 !2004-7-11mhtml:file:/D:LJW应 用 文 章 一 种 新 的 单 片 机 “ 看 门 狗 ”

15、 电 路 软 件 设 计 方 .PDF created with FinePrint pdfFactory trial version http:/ RETI 这 样 , 在 整 个 用 户 程 序 中 只 唯 一 的 一 对 指 令 ( SETB P1.0及 CLR P1.0) 能 使 “ 看 门 狗 ” 定 时 器 复 位 。 也 就 是 说 不 会 有 任 何 “ 非 法 ” 的 指 令 能 使 “ 看 门 狗 ” 定 时 器 误 复 位 , 致 使 系 统 已 经 “ 死 机 ” 而 “ 看 门 狗 ” 失 效 。 当 然 , 对 对 没 有 中 断 的 用 户 系 统 , 只 需 将

16、 清 零 指 令 ( CLR P1.0) 也 插 在 主 程 序 中 就 可 以 了 ; 对 于 有 多 种 中 断 的 用 户 系 统 , 如 果 没 有 中 断 嵌 套 , 则 清 零 指 令 ( CLR P1.0) 可 以 插 在 任 一 个 中 断 子 程 序 中 , 而 在 主 程 序 中 适 当 加 入 一 些 有 关 中 断 的 冗 余 指 令 ( 如 SETB ET0等 ) , 以 免 因 有 关 中 断 的 特 殊 功 能 寄 存 器 数 据 受 到 干 扰 时 导 致 中 断 功 能 失 效 ; 对 于 有 二 级 中 断 嵌 套 的 用 户 系 统 , 清 零 指 令 ( CLR P1.0) 可 以 插 在 中 断 种 数 比 较 多 的 那 一 级 中 的 任 一 个 中 断 子 程 序 中 , 插 有 “ 喂 狗 ” 指 令 的

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 科普知识

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