- 1、本文档共37页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
(电气专业必看)8253定时器详细介绍
第 12 章 第12章可编程定时器/计数器接口芯片8253 教学重点 8253的引脚和6种工作方式 8253的编程 8253在IBM PC系列机上的应用 12-1 定时器/计数器的工作原理 定时控制在微机系统中极为重要 定时器由数字电路中的计数电路构成,通过记录高精度晶振脉冲信号的个数,输出准确的时间间隔 计数电路如果记录外设提供的具有一定随机性的脉冲信号时,它主要反映脉冲的个数(进而获知外设的某种状态),常又称为计数器 定时功能的实现方法 软件延时——利用微处理器执行一个延时程序段实现 不可编程的硬件定时——采用分频器、单稳电路或简易定时电路控制定时时间 可编程的硬件定时——软件硬件相结合、用可编程定时器芯片构成一个方便灵活的定时电路 12-2 可编程定时器/计数器8253 12-2-1 8253的特点 3个独立的16位计数器通道 每个计数器有6种工作方式 按二进制或十进制(BCD码)计数 每个计数器都可由程序设置6种工作方式 每个计数器计数速度可达2.6MHz 所有I/O都可与TTL兼容 12-2-2 8253内部结构和引脚功能 计数器结构示意图 计数器的3个引脚 CLK时钟输入信号——在计数过程中,此引脚上每输入一个时钟信号(下降沿),计数器的计数值减1 GATE门控输入信号——控制计数器工作,可分成电平控制和上升沿控制两种类型 OUT计数器输出信号——当一次计数过程结束(计数值减为0),OUT引脚上将产生一个输出信号 2. 与处理器接口 D0 ~ D7数据线 A0 ~ A1地址线 RD*读信号 WR*写信号 CS*片选信号 12-2-3 8253的初始化 1. 写控制字 8253在工作之前,必须对它进行编程,以确定每个计数器的工作方式和对计数器赋计数初值。CPU通过写控制字指令,将每个计数通道分别初始化,使之工作在某种工作方式之下。 对8253芯片的初始化编程包括写入控制字和写入计数值两方面,任一通道的控制字要从8253的控制口地址写入,控制哪个通道由控制字的D7D6位来决定。计数初始值经由各通道的端口地址写入,可以采用二进制或十进制来计数。 1 方式控制字格式 2 写入计数值 选择二进制时 计数值范围:0000H~FFFFH 0000H是最大值,代表65536 选择十进制(BCD码) 计数值范围:0000~9999 0000代表最大值10000 【例12.1】 在某系统中8253的CLK0~CLK2的时钟频率为2MHz,端口地址为200H~203H。要求计数器0工作在方式0下,十进制计数,定时100μs后产生中断请求;计数器1工作在方式3下,二进制计数,用于产生周期为10μs的对称方波;计数器2工作在方式2下,二进制计数,每隔1ms产生一个负脉冲。 根据上述要求和已知条件,可知CLK的时钟周期为0.5μs。则可计算出计数器0的初始值为100μs/0.5μs=200,计数器1的计数初始值为10μs/0.5μs=20,计数器2的计数初始值为1ms/0.5μs=2000。 初始化程序如下: MOV DX,203H ;控制字地址送DX MOV AL ;控制字内容送AL OUT DX,AL ;写控制字 MOV AX,0200H ;计数初始值送AX MOV DX,200H ;计数器0地址200H送DX OUT DX,AL ;写低8位 MOV AH,AL OUT DX,AL ;写高8位 MOV DX,203H ;控制字地址送DX MOV AL ;控制字内容送AL OUT DX,AL ;写控制字 MOV DX,201H ;计数器1地址201H送DX MOV AL,20 ;计数初始值送AX 续: OUT DX,AL ;写低8位 MOV DX,203H ;控制字地址送DX MOV AL ;控制字内容送AL OUT DX,AL ;写控制字 MOV AX,2000 ;计数初始值送AX MOV DX,202H ;计数器2地址202H送DX OUT DX,AL ;写低8位 MOV AL,AH OUT DX,AL ;写高8位 若计数器2工作在十进制计数方式,则应把2000H送AX中
文档评论(0)