网站大量收购闲置独家精品文档,联系QQ:2885784924

微机原理-第八章 8253.ppt

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理-第八章8253要点

微机原理与接口技术--基于IA-32处理器和32位汇编语言·第4版 第2章 处理器结构 第 8 章 常用接口技术 8.1 定时控制接口 8.2 并行接口 8.3 异步串行通信接口 8.4 模拟接口 8.1 定时控制接口 定时控制的作用 定时中断、定时检测、定时扫描等 实时操作系统和多任务操作系统中要定时进行进程调度 PC机的日时钟计时、DRAM刷新定时和扬声器音调控制都采用了定时控制技术 可编程定时器芯片 软硬件相结合、方便灵活的定时电路 软件延时方法 处理器执行延时子程序 8.1.1 8253/8254定时器 Intel 8253/8254可编程间隔定时器 3个独立的16位计数器 每个计数器有6种工作方式 1. 内部结构和引脚 3个相互独立的计数器,结构相同 计数器0 计数器1 计数器2 每个计数器,包含 16位减法计数器 16位预置寄存器 输出锁存器 定时器外设引脚 CLK时钟输入信号 在计数过程中,此引脚上每输入一个时钟信号(下降沿),计数器的计数值减1 GATE门控输入信号 控制计数器工作,可分成电平控制和上升沿控制两种类型 OUT计数器输出信号 当一次计数过程结束(计数值减为0),OUT引脚上将产生一个输出信号 连接处理器引脚 D0~D7数据线 A0~A1地址线 RD*读信号 WR*写信号 CS*片选信号 2. 工作方式 6种工作方式 使用步骤: ① 设定工作方式 ② 设定计数初值 [ ③ 硬件启动 ] ④ 计数初值进入减1计数器 ⑤ 每输入一个时钟计数器减1的计数过程 ⑥ 计数过程结束 定时器方式0:计数结束中断 定时器方式1:可编程单稳脉冲 定时器方式2:频率发生器(分频器) 定时器方式3:方波发生器 定时器方式4:软件触发选通信号 定时器方式5:硬件触发选通信号 3. 编程:写入方式控制字 控制字写入控制字I/O地址:A1A0=11 方式控制字编程示例 ; 假设8253的计数器0、1、2端口和控制端口地址:40H~43H ;设置其中计数器0为方式0 ;采用二进制计数,先低后高写入计数值 mov al,30h ;方式控制字:30H=00 11 000 0B out 43h,al ;写入控制端口:43H 3. 编程:写入计数值 选择二进制时 计数值范围:0000H~FFFFH 0000H是最大值,代表65536 选择十进制(BCD码) 计数值范围:0000~9999 0000代表最大值10000 计数值写入计数器各自的I/O地址 按方式控制字规定的读写格式进行 计数值编程示例 ; 8253的计数器0、1、2端口和控制端口地址:40H~43H ;设置计数器0采用二进制计数 ;先低后高写入计数初值:1024(=400H) mov ax,1024 ;计数初值:1024(=400H) ;写入计数器0地址:40H out 40h,al ;写入低字节计数初值 mov al,ah out 40h,al ;写入高字节计数初值 8.1.2 定时器的应用 1. 定时中断 DOS系统利用计数器0的OUT0输出端,通过08号中断服务程序实现时钟计时 OUT0端接8259A的IRQ0,每秒产生18.206次中断请求,或说每隔55ms(54.925493ms)申请一次中断 计数器0:方式3,输出方波 计数值: 1.19318MHz÷18.206Hz =65536 mov al,36h ; 计数器0为方式3,二进制计数 ; 先低后高写入计数值 out 43h,al ; 写入方式控制字 mov al,0 ; 计数值为0 out 40h,al ; 写入低字节计数值 out 40h,al ; 写入高字节计数值 2. 定时刷新 用于DRAM的刷新,15.6?s刷新一次 门控总为高,选择方式2或3 1.19318MHz的周期为0.838 ?s 计数初值为:15.6/0.838≈18 mov al,54h ;计数器1为方式2 ;采用二进制计数,只写低8位计数值 out 43h,al ;写入方式控制字 mov al,18 ;计数初值为18 out 41h,al ;写入计数值 3. 扬声器控制 ;发音频率设置子程序 ;入口参数:AX=1.19318×106÷发音频率 speaker proc push ax ;暂存入口参数 mov al,0b6h ;定时器2为方式3,先低后高 out 43h,al ;写入方式控制字 pop ax ;恢复入口参数 out 42h,al ;写入低8位计数值 mov al,ah out 42h,al ;写入高8位计数值 ret speaker endp 扬声器发音控制 speakon proc ;扬声器开子程序 push ax in al,61

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档