基于51单片机控制系统的软件延时程序的分析

  • 格式:pdf
  • 大小:165.52 KB
  • 文档页数:3

2 汇 编 语 言 软 件 延 时 程序 设计
汇 编语 言 编写 的延 时程 序 常用 的方 法 是 多 次 重 复 使 用
空操 作 指 令 N0 P或 者 使 用 循 环 结 构 及 嵌 套 实 现 , 延 时 程
序 常 以 子 程序 的形 式 出 现 。 延 时 子程 序 的运 行 时 间 与指 令
2 0 1 3年 第 2期 ( 总第 7 0期 )
桂 林航 天工 业 学院 学报 J O U R N A L O F G U I L I N U N I V E R S I T Y O F A E R O S P A C E T E C H N O L O G Y 信 息 与 电 子 工 程
数器 , 但每次延时都使用定时器/ 计 数 器 也是 不 现 实 的 , 利 用 软 件 延 时 程 序 来 完 成 一 些 需 要 延 时 是 必 须 的 。文
中对 常 用 的汇 编 和 C 5 1软 件 延 时 程 序 的 设 计 方 法 进 行 了 归 纳 总 结 , 其 中经 典 的 设 计 方 法 可 以 广 泛 应 用 于 5 1
1 软 件 延 时程 序 的基 本 原 理
延 时 程 序 就 是 利 用 程 序 执 行 的指 令 或 语 句 时需 要 占用 C P延 时 时 间
的长 短 主 要 与 两 个 因素 有 关 , 一 是 单 片 机 所 用 的 晶振 , 二 是
的执行时间 、 循环次数及 5 1 单 片 机 的 晶振 频 率 有 关 。 比如 5 1单 片 机 的 晶 振 频 率 为 1 2 MHz , 则 一 个 机 器 周 期 T 的 时 间就是 1 s , 设 延 时 程 序 的所 有 指 令 所 占 的 机 器 周 期 数 为 N, 那 么 延 时 程 序 的 运 行 时 间 为 NT 即 N t L s 。表 1为 软 件
延时程序常用的指令及执行时间[ 1 ] 。
表 1 常 用 的 汇 编 指 令及 执 行 时 间 指 令
ACALL a d d r l 1
LCALL a d dr l 6
执行 的 机器 周 期 数


延 时 程 序 执 行 的指 令 或 语 句 所 占的 机 器 周 期 数 ; 单 片 机 所 用 的 晶振 一 经 确 定 之 后 , 延 时 时 间 就 由延 时 程 序 的 所 有 指 令的机器周期确定 了。 在单片机控制系统 中, 有 些 延 时 精 确 到 ms级 已 足 够 ,

作 者简介 : 李精华 , 男, 湖 南 永 州 人 。教 授 。研 究 方 向 : E DA设 计 。
1 2 3
2 0 1 3年 第 2期 桂 林航 天工 业学 院学报 ( 总第 7 O期) J O U R N A L O F G U I L I N U N I V E R S I T Y O F A E R O S P A C E T E C H N O L O G Y
但 也 有 一 些 地 方 需 要 精 确 到 s级 。编 写 延 时 程 序 时 往 往
M 0V Rn, #d a t a
N 0 P


C I J NZ Rn, r e l
RET


先 写 出一 个 粗 略 的框 架 , 然 后 计 算 程 序 的延 时 时 间 , 不 满 足 要 求 时再 修 改 循 环 次 数 , 经 过 多次 修 改 , 直 到 满 足要 求 , “ 凑” 出一 个 较 为精 确 的 延 时 程 序 , 这 种 随 机 设 计 方 式 每 设
基于 5 1单 片机 控制 系统 的 软 件延 时程 序 的 分析
李精 华
\ 2 景德镇学院
曹君
桂林 5 4 1 0 0 4 ;、
3 3 3 0 0 0 ,
/ 1 桂 林 航 天 工 业 学 院 自动 化 系, 广西
机 械 电子 工 程 系, 江 西 景 德 镇
摘 要
在5 1 单 片机控 制系统中 , 对延时时 间的准确性具有很 高的要求 , 虽然 5 1 单 片机提供 了精度较高 的定 时器/ 计
单 片机 的控 制 系统 之 中 。
关键 词
5 1 单 片机 ; 延 时程序 ; 汇编指令 ; C 5 1
中图分 类号 : T P 3 1 5
文 献标 志码 : A
文章 编号 : 2 0 9 5 — 4 8 5 9 ( 2 0 1 3 ) 0 2 — 0 1 2 3 — 0 3
在 5 1单 片 机 控 制 系 统 中 , 使 用延 时的场合较 多 , 特 别 计 一 个 延 时程 序 都 要 反 复测 试 多 次 。但 延 时 程 序 的编 写 还 是 在 某 些 控 制 过 程 中要 求延 时 时 间 准 确 且 误 差 小 。实 现 延 是 具 有 规 律 的 。下 面 分 别 就 汇 编 语 言 和 C语 言 编 写 延 时 时方法有硬件延 时、 用 5 1单 片 机 的定 时 器 / 计 数 器 实 现 延 程 序 的规 律 进 行 归 纳总 结 。 时 和 由程 序 语 句 或 指 令 构 成 的延 时 程 序 实 现 延 时 。使 用 硬 件 延 时准 确 , 但 电路 复 杂 , 改 延 时 时 间 需要 更 改 硬 件 参 数 甚 至需要更 改电路 , 使用起 来不 方便 ; 5 1 单 片 机 虽 然 有 定 时 器/ 计数器 , 但数量有 限 ; 所 以 使 用 延 时 程 序 实 现 各 种 延 时 是 非 常必 要 的 , 但 对 延 时 程 序 的 运 行 时 间 的 分 析 就 显 得 尤 为重 要 。 由 于 5 1单 片 机 常 用 汇 编 语 言 和 C 5 1语 言 编 程 , 因此 , 对 应 的延 时 程 序 也 可 以用 这 两 种语 言 编 程 , 下 面将 就 5 1单 片 机 通 用 延 时 程 序 的 设 计 方 法 及 其 延 时 时 间 长 度 的 精确计算方法进行分析 。