- 1、本文档共186页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[理学]第八章 接口技术
微机原理与测控接口技术 北京邮电大学自动化学院 叶 平 Email: Ping.YE@ Tel:第八章 接口技术 本章教学目标 定时与计数器 并行传输以其接口 DMA传输及DMA控制器 串行传输及其接口 D/A与A/D转换及其接口 其它接口:磁盘控制器接口,显示器接口,键盘接口等属于标准的外部设备接口,这里不予介绍。 第一节 定时器/计数器 定时与计数 计算机中和日常生活中一样广泛应用定时与计数 定时 产生一个精确的时延,定时器 计数 对特定事件进行计数,计数器 实质上,定时是通过计数来实现的。 例如:一年365天,一天24小时,一小时60分 定时器的工作原理 定时器的工作原理 Fosc -- 标准时钟发生器 预分频器 -- 其输出作为计数器时钟,决定计时精度 时间常数寄存器(TCR)-- 存放计数初值,决定计时长度 计数器 -- 从TCR取得初值,在时钟驱动下进行计数(可以是减计数或加计数) 定时方法 硬件定时 采用硬件或可编程定时器芯片实现。定时准确,不占用CPU时间,但需附加硬件。 典型芯片:Intel 8253/8254,8254是8253的改进型。 软件定时 由于指令执行周期的长短是可知的,因此,用一段循环程序可实现定时。但占用CPU时间。而且主机频率不同,同一软件执行时其延时就可能不同,定时程序通用性差。 可编程定时/计数器 8253/8254 基本功能 具有3个独立的16位定时/计数器(T/C) 每个T/C功能: 可按二、十进制计数 有6种不同的工作方式 最高频率10MHz 有读回状态功能 (8253没有) 8253/8254外部特性及内部结构 8253/8254外部特性 1. 8253/8254与CPU的连接信号 D0 ~ D7(In/Out):三态双向数据线 RD(In):读信号线 WR(In):写信号线 CS(In):片选 A0、A1 (In):地址线,占有4个I/O端口 在PC机中的端口地址为: CH0 40H 00 0100 0000B CH1 41H 00 0100 0001B CH2 42H 00 0100 0010B 控制端口 43H 00 0100 0011B 2. 8253/8254与外设的信号(每个通道独立) CLK0~2(In):计数时钟输入, 计数脉冲; GATE0~2(In):门控信号, 禁止与启动T/C工作; OUT0~2(Out):计数器输出, 表示定时或计数已到。 8253/8254内部结构 计数通道内部逻辑框图 计数初值寄存器(16bits) 存放计数初值; CPU写入,赋值给减1计数器CE。 减1计数器(16bits) 每来一个脉冲减1; CPU不能直接读写。 当前计数值锁存器(16bits) 收到“锁存”命令后,锁存当前CE的值; 以供CPU查询。 8253/8254外部特性及内部结构 工作方式控制字 上电后,8253/8254的状态是未知的,工作模式、计数初值和输出也是未知的。因此需初始化。 控制字格式: ( A1 A0 = 11 ) 控制字共8位,由初始化程序写入 写操作规则 对每一计数器,控制字必须先于计数初值写入; 计数初值的写入必须遵循控制字定义的计数格式, 即:只写低字节; 只写高字节; 先写低字节, 再写高字节。 例:设置计数器1、模式3、计数初值2345H timer equ 40h mov al, ah mov al, out timer + 1, al out timer + 3, al mov ax, 2345h out timer + 1, al 例:读计数器1的当前计数值 timer equ 40h mov al, ; 01计数器1, 00计数器1锁存, 000方式0, 二进计数 out timer + 3, al ; 写入控制字 in al, timer + 1 ; 读计数器1低字节
文档评论(0)