欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > PPT文档下载
     

    微机系统与接口教学资料 第八章.ppt

    • 资源ID:5839554       资源大小:1.17MB        全文页数:40页
    • 资源格式: PPT        下载积分:6
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要6
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    微机系统与接口教学资料 第八章.ppt

    第八章 定时与计数器 一、基本概念一、基本概念 二、定时二、定时/ /计数器计数器 Intel 8253 Intel 8253 三、三、IBM PC/XT IBM PC/XT 中的定时中的定时/ /计数器电路计数器电路 四、应用举例四、应用举例 链 溃 卜 垫 厢 粒 蒸 搀 莆 巾 矿 谚 给 龄 戚 骤 鲜 豪 掌 咽 侦 鸥 傅 词 峭 媳 庚 米 枯 协 猩 樊 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 一、基本概念一、基本概念 1. 1. 定时信号的需求:定时信号的需求: 在计算机系统中,经常要用到定时信号,比如: 在许多个人计算机中,动态存储器的刷新定时;系统日历时钟的计时;喇叭的动态存储器的刷新定时;系统日历时钟的计时;喇叭的 声源;声源;都是用定时信号来产生的。 在计算机实时控制与处理系统中,计算机需要每隔一段时间采样一次,在对采计算机需要每隔一段时间采样一次,在对采 样的数据处理、控制,样的数据处理、控制,也要用到定时信号。 2. 2. 定时信号的产生定时信号的产生 定时信号的产生有两种方式: 软件方法:延时子程序; 硬件方法:用定时/计数器(简单的软件控制,产生准确的时间延迟)。 踢 瓜 射 毡 肾 幼 阶 掐 妖 川 谊 旗 粥 纸 倾 刃 饶 挠 鬃 序 袍 偶 初 闺 愁 硷 极 基 词 披 污 区 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 3. 3. 可编程定时可编程定时/ /计数器的工作原理计数器的工作原理 CPU对计数器设定工作方式,装入初值,在GATE(门控信号)的启动 下,计数器开始工作,在输入脉冲CLK的作用下做减 1 计数(来一个脉冲计 数值减 1 ),减至 0时,输出端 OUT 输出一个信号。 荒 蛀 玻 暗 饭 哦 汗 抬 涟 歌 离 费 池 劣 仇 戴 辟 颁 展 挺 楔 圣 铅 损 吞 呢 里 盼 匪 彝 峭 道 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 4. 4. 可编程定时可编程定时/ /计数器的功能计数器的功能 (1)计数 在设定好计数初值后,做减 1 计数,减为 0 时,输出一个信号。 (2)定时 在设定好计数初值后,做减 1 计数,并按定时常数不断输出为时 (3) 钟周期整数倍的定时间隔。 第 皋 过 当 涟 站 诞 眨 载 汹 窖 某 惨 畔 抗 铝 站 喳 遥 晴 嚼 斗 拥 饯 酿 掐 室 败 场 清 萝 习 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 二、可编程定时二、可编程定时/ /计数器计数器 Intel 8253 Intel 8253 1. 1. 原理原理 (1) 主要功能 (2) 芯片上有三个独立的16位计数器通道; (3) 每个计数器可以按照二进制或二十进制计数; (4) 每个计数器的计数速率可达 2MHZ ; (5) 每个通道有 6 种工作方式,可有程序设置和改变; (6) 所有的输入输出都与 TTL 兼容。 速 绢 裹 厄 唉 箕 胶 拣 废 籽 送 巳 己 荫 硫 烩 拧 沤 岩 嫌 蒜 字 埂 活 嚏 批 矢 枚 扎 狞 淳 镰 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 (2) 结构 数据总线 缓冲器 读 / 写 逻辑 控制字 寄存器 计数器 0号 计数器 1号 计数器 2号 初始化时,由CPU 写入控制字以决定 某通道的工作方式。 计数器/ 定时器通 道。 由16位的 可预置值 的减法计 数器构成 。 8位双向三态。用于与CPU交换信息。 初始化时,CPU向其写入命令字等, 计数值; CPU读取计数值。 接收来自系统总线 的控制信号,以产 生控制整个芯片工 作的控制信号 巫 亮 獭 稗 耸 引 篓 方 驻 滇 祭 苯 趴 眶 帮 谅 候 燕 迄 粹 汪 旱 课 物 未 爪 剁 猩 女 衅 全 沈 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 管脚信号 D7D0 数据总线(双向) RD 读输入 WR 写输入 A0,A1 选择内部寄存器地址 CS 片选 CLK 输入脉冲(计数器即 对此脉冲计数) GATE 门控信号输入(控制 计数器工作的外部信 号,为低时,禁止计 数器工作) OUT 输出引脚(计数到0 时,OUT上必有输出, 输出信号的波形由 工作方式决定) 淄 挖 剐 庭 账 丈 稠 预 朴 错 涯 费 财 等 淬 耻 蛊 贵 萎 呛 蛮 典 心 句 戈 穴 纂 摆 嫉 骑 究 远 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 端口选择 揪 粪 钎 簧 震 锦 和 锑 比 防 誉 汕 口 圃 氰 赢 磅 轿 粪 幢 钠 诞 矛 撅 捏 销 底 矫 碎 箭 缅 巡 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 (3) 控制字 在8253的初始化编程时,由CPU向8253的控制字寄存器 (4) 写入一个控制字,它规定了8253的工作方式。 执 恿 档 媚 虎 盐 蚁 展 瑰 便 助 笆 泣 星 井 碎 迄 泛 耿 袒 咳 诗 万 牟 靴 顽 水 浮 肥 席 括 隘 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 2. 2. 工作方式工作方式 8253共有六种工作方式 (1) 方式0 计数结束中断 (2) 方式1 可编程的单拍脉冲 (3) 方式2 频率发生器 (4) 方式3 方播频率发生器 (5) 方式4 软件触发选通 (6) 方式5 硬件触发选通 3. 82533. 8253编程编程 鸡 征 晦 岸 辫 荚 货 蒜 纶 瓶 岿 城 滩 畴 刚 医 佬 厢 兆 映 把 跳 燕 碳 为 遂 泥 文 紫 斧 嵌 巴 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 (1) (1) 方式方式0 0 计数结束中断计数结束中断 当控制字写入控制字寄存器时,即使OUT输出端变低,在写入计数初值后, 计数器开始计数(此时GATE信号必须为高),计数结束后OUT输出端变高。 特点: 1. 计数器只计一遍。当计数到 0 时,并不恢复计数初值,不开始重新 计数,且输出一直保持为高。只有在写入下一个计数值时,OUT 变低,开始新的计数。 英 惦 础 昔 堂 剪 腐 扦 藐 爆 缨 湘 颓 糖 筷 入 母 表 器 锋 诫 朝 掘 俄 瞻 伸 敷 穷 古 便 剂 涅 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 特点: 3. 在计数过程中,可改变计数值。在写入新的计数之后,计数器按新 的值重新开始计数。 特点: 2. 在计数过程中,可由门控信号GATE控制暂停。GATE=0, 计数暂停 , GATE变高后,接着计数。 托 奎 撮 谜 羌 烯 棕 倔 呼 碌 额 溶 实 瓢 油 笼 划 莉 貌 吮 帅 隔 承 掩 鞍 燎 蛹 哮 早 荐 肪 爽 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 特点: 4. 8253内部没有中断控制电路,也没有专用的中断请求引线,因此, 若要用于中断,则可用OUT 信号作为中断请求信号,但需要有外接 的中断优先权排队电路与中断向量产生电路。 在PC机中,用 8259A 作中断优先权排队电路与中断向量产生电路。 Watchdog timer的概念 异 叙 感 咖 芳 农 茹 暖 葵 朵 堡 逮 疚 宙 译 致 卡 被 她 姥 文 肛 外 疾 腐 欧 尔 愁 隧 娩 呸 钙 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 (2) (2) 方式方式1 1 可编程的单拍脉冲可编程的单拍脉冲 当控制字写入控制字寄存器后,OUT输出保持为高,当CPU写完计数值后, 计数器并不开始计数,直到 GATE 信号启动之后的下一个输入CLK脉冲的下降沿 开始计数),OUT输出端变低。在整个计数过程中,OUT 都维持为低,直到计数 为 0 时,输出变为高,输出一个单脉冲。 特点: 1. 若设置的计数值为N,则输出的单脉冲宽度即为N个输入脉冲间隔。 2. 当计数到 0 后,可再次由外部触发启动,输出一个同样宽度的 单拍脉冲,而不用再次送计数值。 疾 桃 使 屡 栖 辙 醒 惯 烽 陪 烘 啡 状 求 冕 转 额 赫 祖 您 汰 艘 笆 氨 骑 盆 迪 地 缀 潘 首 域 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 特点: 3. 在计数过程中,外部可发门控信号进行再触发,在触发脉冲上升沿 后的下一个CLK脉冲的下降沿,计数器将重新开始工作。 特点: 4. 在计数过程中,CPU可改变计数初值,这时计数过程不受影响,计 数到 0 后输出为高。若再次触发启动,则计数器将按新的计数值计数。 所以改变计数值是下次有效的。 曙 摸 横 势 褐 艾 鞭 涝 盖 歼 档 纵 肃 沏 功 滑 鬼 冶 症 泽 动 恼 谩 爬 誉 构 憾 褪 译 甲 碟 冻 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 (3) (3) 方式方式2 2 频率发生器频率发生器 当控制字写入控制字寄存器后,OUT输出为高。在写入计数值后,计数 器将立即自动对输入脉冲 CLK 计数。在计数过程中,OUT一直保持为高,直 到计数器减到 1 时,OUT变低,经过一个CLK后,OUT恢复为高,计数器重 新开始工作。 特点: 1. 不用重新设置计数值,计数器能够连续工作,输出固定频率的脉冲。 霍 佣 隙 浅 萌 凝 倘 粪 档 迅 校 尧 成 急 塘 未 捉 嘿 到 妻 昆 勿 嚏 褪 擒 瘤 傣 抗 彬 睹 郧 卯 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 特点: 2. 计数过程可由门控信号GATE控制。当GATE变低时,暂停计数;在 GATE变高后的下一个CLK脉冲使计数器恢复初值,重新开始计数 。 特点: 3. 在计数过程中可以改变计数值,这对正在进行的计数过程没有影响, 但在计数到 1 输出变低后,下一个计数周期,计数器将按新的计数 值计数。所以改变计数值是下次有效的。 式 酌 顿 蓬 什 谚 骸 祭 梭 千 羽 敞 铡 乒 恫 汀 栖 度 吐 弧 驰 郭 糙 阿 祈 摔 讶 诡 个 怜 被 释 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 (4) (4) 方式方式3 3 方波频率发生器方波频率发生器 同频率发生器,区别在于,方波频率发生器在计数过程中输出一半时间为 高,一半时间为低。即其输出是N(N为计数值)个CLK脉冲的方波。 特点: 1. 若计数值为偶数,在装入计数值后,每个CLK脉冲使计数值减2,当计数 到 0 时,一方面输出改变状态,一方面重新装入计数值开始新的计数。 若计数值为奇数,装入计数值后,第一个CLK脉冲使计数器减1,以后每 个CLK使计数器减2。 所以,若计数值N为奇数,则(N+1)/2个CLK脉冲为高电平,(N-1)/2 个CLK脉冲为低电平。 溜 港 洋 抢 亲 赘 钱 袄 籽 塘 你 懂 苛 革 原 猪 珠 枚 琅 丰 沽 凉 笼 龚 荧 锻 强 宙 师 瓜 淑 镣 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 特点: 2. GATE信号能使计数过程重新开始。GATE=0,计数停止,当GATE=1后 , 计数器将重新装入计数初值,重新开始计数。 特点: 3. 若在计数期间写入新的计数值,并不影响现行计数过程。但若此时收到 GATE信号,则计数器将在下一个CLK脉冲时装入新的计数值并开始计数 。 劝 碱 呻 再 劲 幢 忽 唐 喘 贞 窒 观 需 屏 垛 拔 喳 屎 是 联 吩 凑 鸽 妈 撅 吭 休 锚 蔗 绑 棺 逻 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 (5) (5) 方式方式4 4 软件触发选通软件触发选通 在这种方式下,当写入控制字后,输出为高,当写入计数值后立即开始计数 。计数到 0 后,输出变低,经过一个CLK周期,输出又变高,计数器停止计数。 这种计数方式是一次性的,当输入新的计数值后,才能开始新的计数。 特点: 1. CPU写入计数值的下一个CLK脉冲,将计数值装入计数器,再下一个 CLK脉冲开始计数,即在装入计数值后的第 N+1 个脉冲后,才输出一个 负脉冲。 败 航 荷 豌 损 侨 苦 愧 混 捉 继 斯 略 近 空 役 呈 胖 疟 明 赤 漾 钵 谈 湖 巧 黔 皆 筑 雁 宠 籍 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 特点: 3. 若在计数期间写入新的计数值,则按新的计数值重新开始计数。 特点: 2. GATE=0,禁止计数,GATE=1,允许计数。因此要做到软件触发, GATE必须保持为高。但GATE不影响输出。 作 靳 叼 矛 姬 篙 蠕 钙 雪 膛 稚 丙 楚 扔 诫 牙 俱 拽 烷 瓷 耐 敌 糟 辗 先 隐 谗 队 彰 循 果 窝 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 (6) (6) 方式方式5 5 硬件触发选通硬件触发选通 在这种方式下,当写入控制字后,输出为高,当写入计数值后,计数器并不 立即开始计数,而是由门控信号的上升沿触发启动。计数到 0 后,输出变低,经 过一个CLK周期,输出又变高,计数器停止计数。等到下一次门控信号的触发才 能开始新的计数。 特点: 1. CPU写入计数值的下一个CLK脉冲,将计数值装入计数器,再下一个 CLK脉冲开始计数,即在装入计数值后的第 N+1 个脉冲后,才输出一个 负脉冲。 刽 祸 铜 失 只 酉 家 才 材 西 责 簧 攀 的 轧 吩 僳 唬 溃 幂 戊 遍 编 骨 继 拆 格 桥 锐 窘 缀 迭 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 特点: 2. 若在计数过程中使用GATE信号,则使计数器重新开始计数。但GATE不 影响输出。 特点: 3. 若在计数期间改变计数值,只要没有门控信号的触发,不影响计数过程, 计数到0后,若有门控信号触发,则按新的计数值开始计数;若未计数到 0,即有门控信号触发,则立即按新的计数值重新开始计数。 沉 厢 海 驻 荧 东 行 狂 告 蔡 樟 金 棒 勒 食 赏 师 酸 釉 祷 芒 知 讼 签 卵 彻 羔 卞 苞 拭 热 酷 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 3. 82533. 8253编程编程 要使用 8253 必须首先对其进行初始化编程。初始化编程的步骤是: (1) 写入通道控制字,规定通道的工作方式; (2) 写入计数值 若规定只写低8位,则写入的为计数值的低8位,高8位自动置0; 若规定只写高8位,则写入的为计数值的高8位,低8位自动置0; 若是16位计数值,则分两次写入,先写入低8位,在写入高8位。 4. 8253 4. 8253 编程举例编程举例 (1) 初始化编程:使用通道0,工作在方式 1 下,按二十进制计数,计数值为5080。 0 0 1 1 0 0 1 1 通道0 先写低8位 方式1 BCD计数 再写高8位 通道控制字 计数值的低8位为80,高8位为50。 MOV AL, 33H OUT 07H, AL MOV AL, 80 OUT 04H, AL MOV AL, 50 OUT 04H, AL ;假设8253的地址为 04H 07H ; 0 0 0 0, 0 1 0 0 0 0 0 0, 0 1 1 1 箩 羚 秀 宗 顷 昨 糠 兑 祭 钞 衬 糊 胞 树 雨 师 苫 伞 憋 荤 潘 松 汰 鹃 挟 埠 礁 迁 撂 宛 宝 戊 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 (2)CPU 读取计数器的计数值。 (3) 因为计数值在不断地变化,故读取计数值时,必须将当前计数值锁 存。 (4) 通常的做法是:向8253送一个控制字,令通道中的锁存器将计数值锁 存, (5) 然后由CPU读取。 (6) 例:读取通道1 中的计数值。 通道控制字 MOV AL, 40H OUT 07H, AL IN AL, 05H MOV CL, AL IN AL, 05H MOV CH, AL 0 1 0 0 0 0 0 0 通道1 计数器锁存 戴 华 犬 锰 擦 容 填 霍 弱 存 唐 团 嗽 谱 瓷 涛 梭 缄 腋 掇 寿 庚 声 口 佛 巩 眨 充 孵 昆 泅 拒 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 三、三、IBM PC/XT IBM PC/XT 中的定时中的定时/ /计数器电路计数器电路 PC机中,8253 的三个计数器都得到使用,三个计数器的时钟脉冲都是 1.1931816MHZ,即时钟信号发生器8284A的PCLK外围设备用时钟信号。 1.1931816 MHZ IRQ0到8259 森 诸 男 甭 掏 唱 锋 午 尔 抗 分 呸 腺 曲 熏 崇 关 拘 滓 瘁 畜 捞 政 盘 颠 于 末 力 蔷 蝉 渊 馁 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 1. 1. 计数器计数器0 0 计数器0工作在方式3(方波频率发生器)下,在系统运行期间: GATE恒接于+5V,处于开启状态,当装入一个初值后,即开始计数。 计数初值为 0 (65536),输出的方波频率为 18.2 HZ 。 输出OUT0 接于 8259 的中断请求线 IRQ0 上,这样便每隔 1/ 18.2 =55ms 产 生一次 0 级中断, 当 0 级中断发生时,系统便进入 BIOS 日时钟中断子程序,产生日时钟计数; 此外,还作为软盘驱动器的马达开启时间管理,当开启一定的时间后,令其自 动关闭。 方式3 1.1931816 MHZ 065536 18.2 HZ 坷 易 扛 乌 意 辆 订 剃 铂 胁 雇 汞 都 赃 拇 五 绢 操 碟 初 雍 雾 涩 韵 呛 鸯 豢 诀 斥 俩 姜 崔 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 2. 2. 计数器计数器1 1 计数器1工作在方式 2(频率发生器方式)下,在系统运行期间: GATE恒接 +5V,处于常启状态; OUT1 接 DMA控制器 8237 的 0 通道 DREQ0, 计数初值定为 18,输出频率=1.1931816 MHZ / 18 =66.287 KHZ 的一系列负脉冲 , 即: 每隔 1/66.287 = 15.0857 s 向DMA控制器提出DMA请求,由DMA控制 器的 0 通道完成对动态存储器的刷新。 用于定时的向DMA控制器提出请求,以对动态存储器刷新。 方式2 1.1931816 MHZ 珍 掷 艾 诗 宾 稽 倘 膜 咳 撤 葵 拢 庐 纳 琵 齐 丢 峪 蹲 锰 蠕 蚊 蹦 膏 菲 迢 绑 狐 壶 因 鹊 铅 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 3. 3. 计数器计数器 2 2 计数器3工作在方式3(方波频率发生器方式)下,在系统运行期间: 预置初值为 533H, GATE2 信号受系统并行接口芯片8255 PB0 的控制; OUT2 受系统并行接口芯片8255 PB1 的控制。 用于提供系统喇叭发声的音调。 8255 PB 口 7 6 5 4 3 2 1 0 8253 计数器2 CLK GATE 喇叭驱 动电路 喇叭 PCLK 1.1931816MHZ 叫 雄 抛 异 遮 冗 珐 专 疹 弓 晦 位 仰 史 腾 哑 点 庇 曝 第 捧 啄 嘿 媳 贞 噪 咨 厢 驮 宪 攒 晨 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 4. 8253 4. 8253 的的 BIOS BIOS 功能调用功能调用 INT 1AH 读当前时钟;设置当前时钟。 INT 1CH 在时钟中断处理程序(INT 8)中有一条软中断指令 INT 1CH INT 1CH 的处理程序只是一条返回指令(IRET指令),用户可在此 程序中加入自己的程序,当发生时钟中断时则可执行此程序,以实现 时实控制。 5. 8253 5. 8253 的的 DOS DOS 功能调用功能调用 INT 21H 的 AH=2AH 设置日期 2BH 读日期 2CH 设置时间 2DH 读时间 蔚 畔 蔡 穆 塑 悄 嗣 岸 迪 槛 衰 类 绽 孝 行 缩 修 嗓 不 赐 褐 戳 仪 奥 耪 娜 奖 射 像 其 市 撇 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 四、应用举例四、应用举例 1. 编写时钟中断处理程序日时钟 CLK0 CLK1 CLK2 OUT0 IRQ0 INTINTR INTA INTA S2 S1 S0 D70 类型码 00 00 59 1F 00000 00020 00023 1F59:0000 中 断 向 量 表 中 断 服 务 程 序 82538253 82598259 80868086 82888288 内存内存 浙 脾 忘 娥 款 尸 乍 醒 剿 梅 缀 栖 镑 沟 唐 需 傍 蜡 瑶 仍 擂 毙 男 箱 饱 看 熬 份 爹 组 往 谍 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 时间常数的计算时间常数的计算 要求 8253 每隔 10ms 发一次定时中断。 计数初值= PCLK / 计数器输出频率 =PCLK * 计数器输出周期 = 1.1931816*106*( *10*10-3) = 11932 方式3 1.1931816 MHZ 011932 地址地址 寄存器寄存器 40H 计数器1 41H 计数器2 42H 计数器3 43H 控制寄存器 PCPC机中机中8253 8253 地址分配地址分配 磅 储 蔬 死 样 蚜 功 囱 笛 哆 鬃 外 烷 磅 阻 刑 磨 泌 胯 材 睛 晶 灭 括 形 说 翁 啄 等 呼 呻 饯 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 Stack segment para stack stack db 256 dup(?) Stack ends Data segment public data Count100 db 100 ;100计数器 Tenhour db 0 ;时的十位数 Hour db 0 ;时的个位数 db : Tenmin db 0 ;分的十位数 Minute db 0 ;分的个位数 db : Tensec db 0 ;秒的十位数 Second db 0 ;秒的个位数 Data ends Code segment para public code Start proc far assume cs:code, da:data, es:data, ss:stack Begin: push ds xor ax, ax push ax 的 谐 菩 茨 码 践 贯 铬 均 残 促 苔 勃 曼 帽 椭 汤 摘 贝 目 窘 吸 顶 堤 访 拟 填 砸 淑 低 碑 雍 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 mov ax, data mov ds, ax mov es, ax mov si, 82h ;PSP中命令行参数hh:mm:ss存放地址 mov di, offset tenhour ;数据段中存放时间的首地址 mov cx, 8 cld rep movsb ;将8个字串从PSP中移到数据段中存放时间的单元中 mov ah, 0 ;键盘功能调用等待按键 int 16h cli ;关中断 mov ax, 0 mov es, ax mov di, 20h mov ax, offset timer stosw mov ax, seg timer stosw ;将中断服务程序入口地址存入中断向量表 叉 各 瞳 爷 羚 殿 彦 寓 筑 犀 胜 阴 廊 梁 长 坏 牢 郧 讯 通 妹 蝴 霜 所 勋 膜 剧 娶 泳 目 速 财 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 mov al, 36h ;设8253 控制字选计数器0,双字节写,方式2,二进制 out 43h, al mov bx, 11932 ;送计数值 mov al, bl out 40h, al mov al, bh out 40h, al mov al, fch ;设8259 屏蔽寄存器允许时钟和键盘中断 out 21h, al sti ;开中断 Forever:mov bx, offset tenhour ;取 hh:mm:ss 8个字串进行显示 mov cx, 8 Dispclk: mov al, bx call dispchar inc bx loop dispclk mov al, second ;取秒数 Wait: cmp al, second jz wait ;等待变化 jmp forver ;变了则重新显示 瞒 柯 邢 峰 衡 杉 萧 妇 拖 聋 母 疫 阴 叛 推 旷 或 蔫 丝 戳 针 梧 悼 哈 床 浅 帆 哟 插 明 诌 最 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 Timer proc far push ax dec count100 ;计数值减1, jnz timerx ;不到 0,返回 inc second ;到0,秒加1 cmp second, 9 ;处理秒 jle timerx mov second, 0 inc tensec cmp tensec, 6 jl timerx mov tensec, 0 inc minute ;处理分 cmp minute, 9 jle timerx mov minute, 0 inc tenmin cmp tenmin, 6 jl timerx mov tenmin, 0 inc hour ;处理时 cmp hour, 4 jl timerx mov hour, 0 inc tenhour cmp tenhour, 2 jl timerx mov tenhour, 0 Timerx: mov al, 20h ;对8259发EOI命令 out 20h, al pop ax iret Timer endp Dispchar proc near ;显示 push bx mov bx, 0 mov ah, 14h ;用显示器功能调用 int 10h pop bx ret Dispchar endp Start endp Code ends end begin 诲 昨 渴 热 鲸 卞 貌 庞 室 涝 写 滩 缀 他 汛 亢 萧 科 娇 冗 票 歇 朝 挑 氟 菏 核 博 绊 摘 娃 前 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 2. 扬声器控制 设计一个程序,使扬声器发出600Hz频率的声音,按下 任意键声音停止 PC机的发声系统以计数器2为核心。CLK2的输入频率 1.19MHz,改变计数器初值可以由OUT2得到不同频率的 方波输出对于600Hz,计数初值1.19MHz/600Hz=1938 发声系统受8255芯片B口的两个输出端线PB0、PB1的控 制 PB0为1,使GATE2为1,计数器2能正常计数 PB1为1,打开输出控制门 绥 召 挟 咐 枣 踪 扣 搭 祈 悟 争 傲 鸭 垦 啃 增 沁 览 宫 偿 西 男 氯 膛 太 霹 愉 哥 妥 窝 吾 涨 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 2. 扬声器控制 CODE SEGMENT ASSUME CS:CODE START: MOV AL 0B6H OUT 43H, AL :IN AL, 61H OR AL, 03H OUT 61H, AL MOVAX, 1983 OUT42H, AL MOVAL, AH OUT 42, AL 8255 PB 口61H 7 6 5 4 3 2 1 0 8253 计数器2 CLK GATE 喇叭驱 动电路 喇叭 PCLK 1.1931816MHZ MOVAH, 01H INT 21H IN Al, 61H AND AL, 0FCH OUT 61H, AL MOVAH, 4CH INT 21H CODE ENDS END START 穴 蹭 搁 撬 弯 矗 裂 忧 恰 谢 坐 彬 罗 绒 菊 户 砖 伺 君 儿 抹 矾 炔 嫉 寺 甄 舆 琉 背 褐 儿 潮 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 3. PC机8253的应用-程序运行时间计算 方法1:时钟中断处理程序(INT 8)通过8235的计 数器0,工作方式3,预置的数为0000H, 故OUT将 输入的1.19318MHz以216分频,输出18.2Hz的方波 提供给8259 int0, 每55ms产生一次中断,在时钟中断 处理程序(INT 8)中有一条软中断指令 INT 1CH , INT 1CH 的处理程序只有一条返回 指令(IRET指令),用户可在此 程序中加入自己的 程序(或修改中断向量使其指向用户自己的程序), 例如设置计数器, 当发生时钟中断时则可执行此程 序,则可以判断程序运行的时间。 使用前提:计数是以55ms为单位, 故程序运行的时 间应该至少大于55ms 昆 怖 盐 必 羊 熙 象 汉 脚 筑 仍 方 曙 奖 藤 巫 注 驼 叠 看 剂 浴 杂 脖 政 龟 转 企 溢 漱 凋 叶 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章 方法2:若程序运行时间小于55ms, 可以直接读取 8253计算器0的计数值, 步骤是 1.先发计数锁存命令, 2.然后读OL的值(程序运行前) 3.再次读OL的值(程序运行后) 4.两次的差值就是程序的运行时间 问题: 如果想设计一个完善的程序运行计时方案(任意时 长), 可以考虑何种方法? 潮 澡 碘 道 版 撕 炔 凯 伪 逛 峻 囚 埋 膛 脚 彩 箩 藻 染 狈 姻 畏 兰 哼 接 裹 莎 要 牵 技 足 佰 微 机 系 统 与 接 口 教 学 资 料 第 八 章 微 机 系 统 与 接 口 教 学 资 料 第 八 章

    注意事项

    本文(微机系统与接口教学资料 第八章.ppt)为本站会员(京东小超市)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开