定时计数器与中断系统

上传人:san****019 文档编号:22602475 上传时间:2021-05-29 格式:PPT 页数:16 大小:262.50KB
返回 下载 相关 举报
定时计数器与中断系统_第1页
第1页 / 共16页
定时计数器与中断系统_第2页
第2页 / 共16页
定时计数器与中断系统_第3页
第3页 / 共16页
点击查看更多>>
资源描述
第 五 章 定 时 /计 数 器 与 中 断 系 统 5-1 定 时 /计 数 器 结 构 特 点 及 控 制 K1 K2 可 预 置 初 值 计 数 器 中 断请 求功 能选 择 启 动控 制内 部 时 钟 脉 冲( 定 时 )外 部 输 入 脉 冲( 计 数 ) 溢 出 信 号计 数 脉 冲 计 数 初 值5-1-1 定 时 /计 数 器 结 构 定 时 器 /计 数 器 简 称 定 时 器 , 8031单 片 机 有 2个 16位 的 定 时 器 /计 数器 : 定 时 器 0( T0) 和 定 时 器 1( T1) 。 作 定 时 器 时 , 对 8031片 内 振 荡 器 输 出 经 12分 频 后 的 脉 冲 计 数 , 即每 个 机 器 周 期 使 T0或 T1的 寄 存 器 自 动 加 1直 至 计 满 溢 出 。 定 时 的 分辨 率 是 时 钟 振 荡 频 率 的 1/12。 作 计 数 器 时 , 通 过 引 脚 T0( P3.4) 和 T1( P3.5) 对 外 部 脉 冲 信 号计 数 , 当 输 入 脉 冲 信 号 从 1到 0的 负 跳 变 时 , 计 数 器 就 自 动 加 1。 计数 的 最 高 频 率 一 般 为 振 荡 频 率 的 1/24。 工 作 过 程 如 下 : 5-1-2 定 时 器 /计 数 器 工 作 方 式定 时 器 /计 数 器 有 4种 工 作 方 式 , 由 方 式 选 择 位 M1、 M0设 定1.方 式 013位 定 时 /计 数 器 。 THx 8位 和 TLx低 5位 组 成 13位 加 1计 数 器t=( 213-T1初 值 ) 振 荡 周 期 12 计 数 外 部 脉 冲 个 数 : 1 8192(213)工 作 结 构 如 图 。 2.方 式 116位 定 时 /计 数 器 。 THx 8位 和 TLx低 8位 组 成 16位 加 1计 数 器t=( 216-T1初 值 ) 振 荡 周 期 12计 数 外 部 脉 冲 个 数 : 1 65536(216)工 作 结 构 如 图 。 3. 方 式 2自 动 恢 复 初 值 8位 定 时 /计 数 器 。 TLx为 8位 加 1计 数 器 ,THx为 8位 初 值 暂 存 器 。用 于 需 要 重 复 定 时 和 计 数 的 场 合 。最 大 计 数 值 : 256 (28)最 大 定 时 时 间 (T=1s): 256s工 作 结 构 如 图 。 4.方 式 3T0分 成 2个 8位 定 时 器 : TL0定 时 /计 数 器 和 TH0定 时 器TL0占 用 T0控 制 位 : C/T, TR0, GATE;TH0占 用 T1控 制 位 : TR1。T1不 能 使 用 方 式 3工 作 。工 作 结 构 如 图 。 1.TMOD定 时 器 工 作 方 式 寄 存 器 ( 89H)1) 功 能 选 择 位 C/T: =0, 定 时 功 能 , 计 数 内 部 机 器 周 期 脉 冲 ; =1, 计 数 功 能 , 计 数 引 脚 T0(T1)输 入 的 负 脉 冲 。2) 方 式 选 择 位 M1、 M0: 4种 工 作 方 式 : 13/16/8位确 定 定 时 器 工 作 方 式 指 令 : MOV TMOD, #方 式 字3) 门 控 方 式 选 择 位 GATE : =0, 非 门 控 方 式 (内 部 启 动 ): TRx=1, 启 动 定 时 器 工 作 ; TRx=0, 停 止 定 时 器 工 作 。 =1, 门 控 方 式 (外 部 启 动 ): TRx=1且 引 脚 INTx=1才 启 动 。 M1 M0 方 式 功 能 描 述0 0 0 13 位 0 1 1 16 位1 0 2 8 位 自 动 重 装 1 1 3 T0 为 两 个 8 位 5-1-3 定 时 器 控 制 寄 存 器 2个 控 制 寄 存 器 TMOD和 TCON与 定 时 器 有 关 , 分 别 设 置 各 个定 时 器 的 操 作 模 式 和 控 制 功 能 。T1 T0 GATE C/T M1 M0 GATE C/T M1 M02个 可 独 立 控 制 的16位 定 时 器 /计 数器 : T0、 T1 2.TCON定 时 器 控 制 寄 存 器 ( 88H) TCON 位 地 址 0DD 1D 2D 3D 4D 5D 6D 7 IT0IE0IT11IETR0TF0TR1TF1 88898A8B8C8D8E8F 见 下 一 节 00: 停 T 计 数01: 启 T 计 数00: 无 T 中 断 ( 硬 件 复 位 )1: 有 T 溢 出 中 断 00: 无 T 中 断 ( 硬 件 复 位 )10: 停 T 计 数1: 有 T 溢 出 中 断1: 启 T 计 数 111TF1, TR1用 于 定 时 器 T1; TF0, TR0用 于 定 时 器 T0。TFx: 定 时 器 Tx溢 出 标 志 , 当 定 时 器 Tx溢 出 时 由 硬 件 自 动 使 中 断触 发 器 TFx置 1, 并 向 CPU申 请 中 断 。 当 CPU响 应 进 入 中 断 服 务程 序 后 , TFx又 被 硬 件 自 动 清 零 。 TFx也 可 用 软 件 清 零 。TRx: 运 行 控 制 位 。 由 软 件 置 1或 清 零 来 启 动 或 关 闭 定 时 器 Tx。IE , IT1用 于 外 部 中 断 ; E , IT0用 于 外 部 中 断 。IT: 下 跳 沿 /低 电 平 引 起 外 部 中 断 请 求 的 选 择 位 。 IT=1, 由 下 跳 沿引 起 ; IT=0, 由 低 电 平 引 起 。IE: 外 部 中 断 的 中 断 申 请 标 志 。 IE=0, 无 外 部 中 断 申 请 ; IE=1,有 外 部 中 断 请 求 。 CPU响 应 中 断 后 , IE硬 件 清 零 。 5-1-4 计 算 时 间 常 数 X(计 算 初 值 )1. 计 数 器 初 值 的 计 算 : 计 数 器 模 式 下 必 须 给 计 数 器 设 置 计 数 器 初 值 , 这 个 计 数 器 初 值 是送 到 TH( TH0/TH1) 和 TL( TL0/TL1) 中 的 。 计 数 器 是 在 计 数 初 值 基 础 上 以 加 法 计 数 的 , 并 能 在 计 数 器 从 全“ 1” 变 为 全 “ 0” 时 自 动 产 生 定 时 溢 出 中 断 请 求 。 因 此 , 可 以 把 计数 器 计 满 为 零 所 需 要 的 计 数 值 设 定 为 C, 计 数 初 值 设 定 为 TC, 由 此便 可 得 到 如 下 的 计 算 公 式 : TC=M-C式 中 , M为 计 数 器 模 值 。 在 方 式 0时 M为 213; 在 方 式 1时 M为 216; 在方 式 2和 方 式 3时 M为 28。2. 定 时 器 初 值 的 计 算 : 在 定 时 器 模 式 下 , 计 数 器 由 单 片 机 主 脉 冲 经 12分 频 后 计 数 。 因 此, 定 时 器 定 时 时 间 T的 计 算 公 式 为 : T=( M-TC) T 计 数上 式 也 可 写 成 : TC=M-T/ T计 数 式 中 , M为 模 值 ; T计 数 是 单片 机 振 荡 周 期 TCLK的 12倍 ; TC为 定 时 器 的 定 时 初 值 。 若 设 TC=0,则 定 时 器 定 时 时 间 为 最 大 。 由 于 M的 值 和 定 时 器 工 作 方 式 有 关 , 因此 不 同 工 作 方 式 下 定 时 器 的 最 大 定 时 时 间 也 不 一 样 。 例 : 若 单 片 机 时 钟 频 率 为 12MHZ, 计 算 定 时 2ms所 需 的 定 时 器 初值 。解 : 由 于 定 时 器 工 作 在 方 式 2和 方 式 3下 时 的 最 大 定 时 时 间 只 有0.256ms, 因 此 要 想 获 得 2ms的 定 时 时 间 定 时 器 必 须 工 作 在 方 式 0或 方 式 1。 T计 数 =12/12=1s, 则 需 计 数 脉 冲 2000个 (7D0H)若 采 用 方 式 0, 则 定 时 器 的 初 值 为 : TC=213-2ms/1 =6192=1830H=1100 0001 10000B即 : TH0应 装 C1H; TL0应 装 10H( TL1只 用 低 5位 , 高 3位 填 0)若 采 用 方 式 1, 则 定 时 器 的 初 值 为 : TC=2 16-2ms/1s =63536=F830H即 : TH0应 装 F8H; TH0应 装 30H。 5-2-1 中 断 概 念中 断 系 统 是 计 算 机 的 重 要 指 标 之 一 。 当 CPU正 在 处 理 某 件 事 情时 , 外 部 发 生 了 某 一 事 件 ( 如 定 时 器 /计 数 器 溢 出 , 被 监 视 电 平 突变 等 ) 请 求 CPU迅 速 去 处 理 , 于 是 CPU暂 时 中 断 当 前 的 工 作 , 转去 处 理 所 发 生 的 事 件 ; 中 断 服 务 处 理 完 成 后 , 再 回 到 原 来 被 中 断的 地 方 , 继 续 原 来 的 工 作 。 这 一 过 程 称 为 中 断 。举 例 : 某 人 看 书 执 行 主 程 序 日 常 事 务 电 话 铃 响 中 断 信 号 INT=0 中 断 请 求 暂 停 看 书 暂 停 执 行 主 程 序 中 断 响 应 书 中 作 记 号 当 前 PC入 栈 保 护 断 点 电 话 谈 话 执 行 I/O程 序 中 断 服 务 继 续 看 书 返 回 主 程 序 中 断 返 回5-2 中 断 结 构 及 管 理中 断 的 执 行 过 程 如 图 所 示 。 相 关 概 念一 中 断 源 种 类1 可 屏 蔽 中 断可 程 控 “ 开 中 断 /关 中 断 ” 。 软 件 设 置允 许 /禁 止 CPU响 应 中 断 。2 非 屏 蔽 中 断不 可 程 控 “ 关 中 断 ” 。 有 中 断 请 求 信号 , CPU必 须 响 应 。二 中 断 优 先 权1.当 同 时 有 多 个 中 断 请 求 信 号 ,先 响 应 优 先 级 别 高 的 中 断 请 求 。2.高 优 先 级 中 断 请 求 信 号 可 中断 低 优 先 级 中 断 服 务 。三 中 断 源 能 发 出 中 断 请 求 信 号 的 各 种 事 件 。 如 I/O设 备 、 定 时 时 钟 、系 统 故 障 、 软 件 设 定 等 。 INTNMI微 型 机日 常 事 务程 序 中 断 服 务程 序 1 中 断 服 务程 序 2 中 断 处 理 过 程一 .中 断 响 应 条 件1 有 中 断 请 求 信 号2. 系 统 处 于 开 中 断 状 态二 中 断 响 应 过 程1 关 中 断 : 屏 蔽 其 它 中 断 请 求 信 号 。2 保 护 断 点 : 将 断 点 地 址 压 入 堆 栈 保 存 , 即 当 前 PC值 入 栈 。3 寻 找 中 断 源 : 中 断 服 务 程 序 入 口 PC, 转 入 中 断 服 务 。4 保 护 现 场 : 将 中 断 服 务 程 序 使 用 的 所 有 寄 存 器 内 容 入 栈 。5 中 断 处 理 : 执 行 中 断 源 所 要 求 的 程 序 段 。6 恢 复 现 场 : 恢 复 被 使 用 寄 存 器 的 原 有 内 容 。7 开 中 断 : 允 许 接 受 其 它 中 断 请 求 信 号 。 8 中 断 返 回 : 执 行 RETI指 令 , 栈 顶 内 容 PC, 程 序 跳 转 回 断 点 处 。 5-2-2 中 断 系 统 内 部 结 构一 中 断 源 信 号二 . 中 断 允 许 控 制 三 . 2级 中 断 优 先 级 控 制 优 先 级 选 择 开 关 : PS、 PT1、 PX1、 PT0、 PX0总 允 许 开 关 : EA源 允 许 开 关 : ES、 ET1、 EX1、 ET0、 EX02个 外 部 中 断 源 信 号 : INT0、 INT12个 定 时 器 T0、 T1溢 出 中 断 请 求 : TF0、 TF11个 串 行 口 数 据 发 送 、 接 收 结 束 中 断 请 求 : TI、 RI。_ _ 5-2-3 中 断 控 制一 .中 断 控 制 寄 存 器1.中 断 标 志 位 : TF1、 TF0、 IE1、 IE0、 RI 、 TI登 记 各 中 断 源 请 求 信 号 : =1, 有 中 断 请 求 ; = 0, 无 中 断 请 求 。CPU响 应 中 断 后 , 该 中 断 标 志 自 动 清 零 。 TI, RI标 志 必 须 软 件 清 零 。 寄 存 器 名 称 D7 D6 D5 D4 D3 D2 D1 D0TCON(88H) TF1 TF0 IE1 IT1 IE0 IT0定 时 器 控 制 寄 存 器 位 地 址 8FH 8EH 8DH 8CH 8BH 8AH 89H 88HSCON(98H) TI RI串 行 口 控 制 寄 存 器 位 地 址 9FH 9EH 9DH 9CH 9BH 9AH 99H 98HIE(A8H) EA ES ET1 EX1 ET0 EX0中 断 允 许 寄 存 器 位 地 址 AFH ACH ABH AAH A9H A8HIP(B8H) PS PT1 PX1 PT0 PX0中 断 优 先 级 寄 存 器 位 地 址 BCH BBH BAH B9H B8H2.外 部 中 断 触 发 方 式 选 择 位 : IT0、 IT1=1: 负 边 沿 触 发 中 断 请 求 ; = 0: 低 电 平 触 发 中 断 请 求 。3 中 断 允 许 控 制 位 : EA、 ES、 ET1、 EX1、 E 0、 EX0开 中 断 ; = 0关 中 断 。例 : 允 许 CPU响 应 INT0的 中 断 请 求SETB EX0 SETB EA4 中 断 优 先 级 控 制 位 : PS、 PT 、 PX1、 PT0、 PX02级 优 先 级 : =1为 高 优 先 级 , = 0为 低 优 先 级 。同 一 优 先 级 别 按 内 部 查 询 顺 序 排 列 优 先 级 :高 INT0、 T0、 INT1、 T1、 SIO 低 。 5-2-4 中 断 响 应 一 .中 断 响 应 周 期 时 序 每 个 机 器 周 期 采 样 中 断 标 志 位 , 若 有 中 断 请 求 , 将 在 下 一个 机 器 周 期 按 优 先 级 顺 序 进 行 中 断 查 询 。 中 断 源 中 断 入 口 地 址INT0 0003H T0 000BH INT1 0013H T1 001BH SIO 0023H 二 . 各 中 断 源 中 断 服 务 程 序 的 入 口 地 址 三 . 中 断 响 应 阻 断 1 . 当 CPU未 执 行 完 一 条 指 令 。2 当 有 同 级 或 高 级 中 断 服 务 。3 执 行 RETI指 令 或 访 问 IE、 IP的 指 令后 , 不 能 立 即 响 应 中 断 。 四 . 中 断 返 回中 断 返 回 指 令 : RETI= RET指 令 + 通 知 CPU中 断 服 务 已 结 束 。 5-3 定 时 /计 数 器 与 中 断 系 统 综 合 应 用例 : 设 MCS-51单 片 机 系 统 时 钟 频 率 CLK为 6MHZ,请 编 出 利 用 定 时 器 /计 数 器 T0在 P1.0引 脚 上产 生 周 期 为 2秒 , 占 空 比 为 50%的 方 波 信 号的 程 序 。 2ms( 1) 主 程 序 任 务 : a.T0工 作 方 式 的 设 定 : 选 择 方 式 1( 16位 方 式 ) ( 最 大 定 时 131ms)b.定 时 常 数 的 设 定 : TC=2 16-100ms/2s =15536=3CB0H 即 : TH0应 装 3CH; TH0应 装 B0H。c.中 断 管 理 : 允 许 T0中 断 , 开 放 总 中 断 即 : IE应 装 10000010Bd.启 动 定 时 器 T0 SETBTR0e.设 置 软 件 计 数 器 初 值 : ( 如 使 用 R7) 即 : R7应 装 0AHf.动 态 停 机 SJMP $ 主 程 序 如 下 :MAIN: MOV TMOD, #01H ; 设 定 T0为 方 式 1MOV TH0, #3CH ; 装 入 定 时 常 数 高 8位MOV TL0, #0B0H ; 装 入 定 时 常 数 低 8位MOV IE, #82H ; 开 放 T0中 断SETB TR0 ; 启 动 T0MOV R7, #0AH ; 设 置 软 件 计 数 器SJMP $( 2) 中 断 服 务 程 序任 务 : a. 恢 复 T0常 数 ; b. 软 件 计 数 器 减 1; c. 判 断 软 件 计 数 器 是 否 为 0。 为 0时 , 改 变 P1.0状 态 , 并 恢 复 软 件 计 数 器 初 值 ; 不 为 0时 中 断 返 回程 序 如 下 :TOINT: MOV TL0, #0B0H ; 恢 复 定 时 常 数 MOV TH0, #3CH ; DJNZ R7, NEXT CPL P1.0 MOV R7, #0AH NEXT: RETI完 整 程 序 如 下 : ORG 0000H AJMP MAIN ORG 000BH AJMP TOINT ORG 0030H MAIN: MOV TMOD, #01H MOV TH0, #3CH MOV TL0, #0B0H MOV IE, #82H SETB TR0 MOV R7, #0AH SJMP $TOINT: MOV TL0, #0B0H MOV TH0, #3CH DJNZ R7, NEXT CPL P1.0 MOV R7, #0AH NEXT: RETI END
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!