版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第八章第八章 定时定时/ /计数器计数器825382538.1 定时基本概念定时基本概念8.2 可编程计数器可编程计数器/定时器定时器82538.3 8253应用举例应用举例 8.3.1 计数器计数器/定时器定时器 8253的初始化的初始化 8.3.2 时钟程序时钟程序本章小结本章小结本章习题本章习题学学 习习 目目 的的通过对本章的学习,您应该能够达到下列要求:了解定时基本概念了解定时基本概念熟悉可编程计数器熟悉可编程计数器/定时器定时器8253的外部特性的外部特性熟悉可编程计数器熟悉可编程计数器/定时器定时器8253工作模式工作模式熟悉可编程计数器熟悉可编程计数器/定时器定时器8253初始
2、化初始化重重 点点8253的外部特性的外部特性8253工作模式工作模式8253初始化初始化8 8.1 .1 定时基本概念定时基本概念u 定时定时/计数计数日时钟日时钟-实时钟;定时采样实时钟;定时采样生产线上零件统计、车流量统计生产线上零件统计、车流量统计-频率频率-声音声音-音乐音乐u 微机中的定时方法微机中的定时方法软件定时软件定时延迟子程序延迟子程序 短时延时,不需要外围设备;短时延时,不需要外围设备;CPU等待延等待延时增加开销,降低时增加开销,降低CPU效率,受主机频率效率,受主机频率的影响,通用性差等的影响,通用性差等硬件定时硬件定时 采用定时采用定时/计数器或单稳延时电路产生定时
3、或延计数器或单稳延时电路产生定时或延时。时。 不占不占CPU时间,定时准确且时间长,不受主机时间,定时准确且时间长,不受主机频率的影响,使用灵活,通用性好。频率的影响,使用灵活,通用性好。8 8.1 .1 定时基本概念定时基本概念8253:2MHz8253-5:5MHz8254:8MHz8254-2:10MHz8254-5:5MHz 等等例例8 8.1.1:软件定时的例子:软件定时的例子 编写一个软件定时程序编写一个软件定时程序, ,要求定时要求定时20ms20ms。假设:假设:80868086的时钟的时钟=8MHz, =8MHz, 一个时钟周期一个时钟周期T=1/8MHz=0.125usT=
4、1/8MHz=0.125us延时延时20ms,20ms,执行执行PUSHF,POPFPUSHF,POPF指令:指令:需要循环次数:需要循环次数: N=20000/(14+12+17)N=20000/(14+12+17)* *0.1250.125 =37209=37209参考程序:参考程序:MOV CX,37209MOV CX,37209L1L1: PUSHFPUSHF; ;时钟数时钟数:14T:14TPOPFPOPF; ;时钟数时钟数:12T:12TLOOP L1LOOP L1; ;时钟数时钟数:17T:17T误差误差:(15+12+19):(15+12+19)* *0.125=5.75us0
5、.125=5.75us写成子程序:写成子程序:DELAY PROC FAR PUSH CX MOV CX, 37209 L: PUSHF POPF LOOP L POP CX RETPUSH CX PUSH CX ; ;时钟数时钟数: 15T: 15TPOP CX POP CX ; ;时钟数时钟数: 12T: 12TRET RET ; ;时钟数时钟数: 19T : 19T 完成完成09的计数的计数,主要程序片段,主要程序片段 MOV CX, 10LP: CALL DELAY MOV DL,30H MOV AH,02H ;DOS调用调用,显示一个字符显示一个字符 INT 21H INC DL L
6、OOP LP MOV AH,4CH INT 21H DELAY PROC NEAR ;软件延时子程序软件延时子程序 PUSH AX MOV CX,0FFFFH L: PUSHF POPF LOOP L POP AX RETDELAY ENDP8 8.2 .2 可编程计数器可编程计数器/ /定时器定时器82538253PIT(Programmable Interval Timer)PIT(Programmable Interval Timer)8086CPUD07A2A1A9A382538253端口地址为偶地址端口地址为偶地址82538253内部结构框图内部结构框图CLKiCLKi:不大于:不大
7、于2MHZ2MHZ1).数据总线缓冲器数据总线缓冲器(8位位) 往计数器设置计数初值;往计数器设置计数初值; 从计数器读取计数值;从计数器读取计数值; 往控制寄存器设置控制字。往控制寄存器设置控制字。2).读读/写逻辑电路写逻辑电路 A1 A0:端口选择:端口选择 0 0:通道:通道0(0号计数器)号计数器) 0 1:通道:通道1(1号计数器)号计数器) 1 0:通道:通道2(2号计数器)号计数器) 1 1:控制字寄存器:控制字寄存器3).控制寄存器控制寄存器(8位位) 接收接收CPU送来的控制字,用来选择计数器和工作送来的控制字,用来选择计数器和工作 方式,方式,只能写不能读只能写不能读。4
8、).计数器计数器: 三个独立通道三个独立通道:计数器计数器0, 计数器计数器1, 计数器计数器2 每个计数器包含每个计数器包含: 计数初值寄存器计数初值寄存器(16位,位,65536个数,个数,64KB) 减一寄存器减一寄存器(16位位) 当前计数初值锁存器当前计数初值锁存器(16位位)计数:计数:CLK脉冲间隔可以不相等;脉冲间隔可以不相等;定时:定时:CLK脉冲间隔相等,精确的时钟脉冲脉冲间隔相等,精确的时钟脉冲提问:提问:计数初值计数初值n =时钟频率时钟频率fc/输出频率输出频率fout =定时时间定时时间Tout/时钟脉冲周期时钟脉冲周期Tc方式命令字方式命令字对对8253初始化初始
9、化 SC1 SC0 RW1 RW0 M2 M1 M0 BCD1-计数值为计数值为BCD码格式码格式0-计数值为二进制格式计数值为二进制格式M2 M1 M0 模式选择模式选择 0 0 0 模式模式0 0 0 1 模式模式1 0 1 0 模式模式2 0 1 1 模式模式3 1 0 0 模式模式4 1 0 1 模式模式50 0-对计数器进行锁存对计数器进行锁存0 1-只读只读/写低写低8位字节位字节 1 0-只读只读/写高写高8位字节位字节1 1-先读先读/写低写低8位字节位字节, 再读再读/写高写高8位字节位字节.0 0-选计数器选计数器00 1-选计数器选计数器11 0-选计数器选计数器21 1
10、-无意义无意义82538253初始化方法初始化方法: :设置控制字;确定计数初值设置控制字;确定计数初值。例例8.2:8.2:使使2 2号定时器号定时器, ,工作在方式工作在方式3,3,计数初值计数初值=533H,=533H,二进制计数二进制计数. .试写出试写出82538253初始化程序段。已知初始化程序段。已知82538253的端口地址的端口地址:40H,41H,42H,43H:40H,41H,42H,43HMOV AL,MOV AL,101011110110110B ;0B ;2 2号定时器号定时器, ,方式方式3 3OUT 43H,ALOUT 43H,ALMOV AX,0533H MO
11、V AX,0533H OUT 42H,AL ;2OUT 42H,AL ;2号数据口号数据口 MOV AL,AHMOV AL,AHOUT 42H,ALOUT 42H,AL读当前计数值:先写锁存控制字,再读计数值读当前计数值:先写锁存控制字,再读计数值例例8.3:8.3: 计数器计数器1 1已经初始化为已经初始化为8 8位二进制计数方式,位二进制计数方式,要求读出并检查要求读出并检查1 1号计数器的当前值是否全为号计数器的当前值是否全为”1 1”。已知已知82538253的端口地址的端口地址:40H,41H,42H,43H:40H,41H,42H,43HL L: MOV AL,MOV AL,010
12、100000000B ;0000B ;1 1号计数器号计数器锁存锁存命令命令OUT 43H,ALOUT 43H,ALIN AL,41H ;IN AL,41H ;读读1 1号计数器计数值号计数器计数值 CMP ALCMP AL,0FFH0FFHJNE LJNE LHLTHLT方式方式0 0计数结束产生中断计数结束产生中断一次定时或计数一次定时或计数, ,重写初值重写初值, ,启动新一轮的计数启动新一轮的计数 方式方式1 1可编程的单脉冲可编程的单脉冲( (单稳单稳) )触发器触发器 GATEGATE边沿触发边沿触发, ,启动新一轮计数启动新一轮计数方式方式2 2分频器分频器( (速度波形发生器速
13、度波形发生器) )具有计数初值重装能力具有计数初值重装能力方式方式3 3方波发生器方波发生器具有计数初值重装能力具有计数初值重装能力 方式方式4 4软件触发的选通信号发生器软件触发的选通信号发生器 一次定时一次定时, ,重写初值重写初值, ,启动新一轮的计数启动新一轮的计数 方式方式5 5硬件触发的选通信号发生器硬件触发的选通信号发生器 GATEGATE边沿触发边沿触发, ,新一轮计数新一轮计数1.方式方式0计数结束产生中断计数结束产生中断(一次定时或计数一次定时或计数,若重新计数,则需若重新计数,则需重写初值重写初值,启动新一轮的计数,启动新一轮的计数)例例8.4:使使1号定时器工作在方式号
14、定时器工作在方式0,计数初值计数初值 0FF5H,二进制计数二进制计数.试写出试写出8253初始化程序段。已知初始化程序段。已知8253端口地址端口地址:40H,41H,42H,43HMOV AL,MOV AL,010111110000000B ;0B ;1 1号定时器号定时器, ,方式方式0 0OUT 43H,ALOUT 43H,ALMOV AX,0FF5H MOV AX,0FF5H OUT 41H,AL ; 1OUT 41H,AL ; 1号数据口号数据口 MOV AL,AHMOV AL,AHOUT 41H,ALOUT 41H,AL高高2.方式方式1单脉冲触发器单脉冲触发器(GATE边沿触发
15、边沿触发,硬件触发硬件触发,启动新一轮计数)启动新一轮计数)3.方式方式2-分频器分频器(具有计数具有计数初值自动重装初值自动重装能力能力)3 34.方式方式3-方波发生器方波发生器(具有计数具有计数初值自动重装初值自动重装能力能力) 由由OUTOUT指令对指令对CRCR置初值触发!置初值触发!例例8.5: 使使2号定时器号定时器,工作在方式工作在方式3,计数初值计数初值N=1000H, 二进制计数二进制计数.试写出试写出8253初始化初始化程序段程序段. 8253端口地址端口地址:40H,41H,42H,43HMOV AL,MOV AL,101010100110110B ;0B ;2 2号定
16、时器号定时器, ,方式方式3 3OUT 43H,ALOUT 43H,ALMOV AX,1000HMOV AX,1000HOUT 42H,ALOUT 42H,ALMOV AL,AHMOV AL,AHOUT 42H,AL OUT 42H,AL ; ;送送2 2号数据口高号数据口高8 8位,低位,低8 8位自动为位自动为0 04.方式方式4-软件触发的选通信号发生器软件触发的选通信号发生器5.方式方式5-硬件触发的选通信号发生器硬件触发的选通信号发生器提问:方式方式2,4,52,4,5波形相同,均输出一个波形相同,均输出一个CLKCLK负脉冲。负脉冲。方式方式1,51,5工作方式同工作方式同( (硬
17、件触发硬件触发) ),波形不同。,波形不同。方式方式0,2,3,40,2,3,4在写入计数值后开始计数;在写入计数值后开始计数;1,51,5还需外部触发。还需外部触发。只有方式只有方式2,32,3是连续计数,其它需重启。是连续计数,其它需重启。置控制字和计数初值。置控制字和计数初值。已知已知:CLK:CLK的频率的频率f fclkclk与定时的时间与定时的时间T Toutout计数初值计数初值: : N N = =定时时间定时时间T Toutout/ /时钟脉冲周期时钟脉冲周期T Tclkclk = =时钟频率时钟频率f fclkclk/ /输出频率输出频率f fout out = f = f
18、clkclk T Toutout 8.3 8253应用举例应用举例例例:设:设82538253的的f fclkclk=1MHZ=1MHZ,最大计数初值为:,最大计数初值为: N=65536N=65536,则:,则:一个定时器最大定时时间:一个定时器最大定时时间: T Tmaxmax= N/f= N/fclkclk=65536/10=65536/106 6 =0.065536s =0.065536s例:例:设置定时设置定时/ /计数器,使得计数器,使得OUT0OUT0输出周期为输出周期为10ms10ms的脉冲信号。的脉冲信号。定时常数定时常数N =TN =Toutout* *f fclkclk
19、=10=10* *1010-3-3* *1.193181.19318* *10106 6 =11931.8=2E9BH=11931.8=2E9BH解:解:MOVAL,00110100BOUT43H,ALMOVAL,9BHOUT40H,ALMOVAL,2EHOUT40H,AL工作方式工作方式的选择?的选择?方式方式2 2!8.3 82538.3 8253应用举例应用举例例例8.68.6:设定时器设定时器0 0、定时器、定时器1 1工作于方式工作于方式2 2,外部提,外部提供一个时钟供一个时钟, ,频率频率f=2MHZf=2MHZ。要求定时器。要求定时器1 1每每5 ms5 ms产生产生一个脉冲,
20、定时器一个脉冲,定时器0 0每每5s5s产生一个脉冲。产生一个脉冲。10005200520010510030sfnHZmsf1000010256111msftn2). 2). 将定时器将定时器1 1的的CLK1CLK1接接2MHZ2MHZ时钟,计数初值:时钟,计数初值:3).3).将定时器将定时器1 1的的OUTOUT1 1端接到定时器端接到定时器0 0的的CLKCLK0 0端端, ,定时定时器器0 0的计数初值的计数初值: :1). 1). 一个定时器的最大定时时间:一个定时器的最大定时时间: 65536/65536/(2 2* *10106 6)=0.032768 s=32.768ms=0
21、.032768 s=32.768ms地址地址译码译码CPUD7D0AB8253两个定时器串连使用两个定时器串连使用8253初始化程序初始化程序:MOV AL,00110100B ;0;0号定时器号定时器, ,方式方式2 2OUT 43H,ALMOV AX,1000OUT 40H,ALMOV AL,AHOUT 40H,AL MOV AL,01110100B ; ;1 1号定时器号定时器, ,方式方式2 2OUT 43H,ALMOV AX,10000OUT 41H,ALMOV AL,AHOUT 41H,AL究竟如何究竟如何执行得到执行得到计数?计数?通过时序,通过时序,电路控制电路控制例例8.78
22、.7:有一个频率发生器,其频率为有一个频率发生器,其频率为 1MHZ1MHZ,要求,要求用用82538253产生产生每秒一次每秒一次的信号,的信号,82538253如何连接?写出如何连接?写出初始化程序。初始化程序。82538253端口地址端口地址:40H,41H,42H,43H:40H,41H,42H,43H解:解: 1MHZ1MHZ变为每秒变为每秒1 1次,需要经过次,需要经过10106 6分频,一个通分频,一个通道的计数值最大为道的计数值最大为 6553665536,故需两个通道级连,每,故需两个通道级连,每个通道计数为个通道计数为10001000次。次。 可选择通道可选择通道0 0和通
23、道和通道1 1级连,都工作在方式级连,都工作在方式2 2。MOV ALMOV AL,0000110100B110100BOUT 43HOUT 43H,ALALMOV AX,1000MOV AX,1000OUT 40H,ALOUT 40H,ALMOV AL,AHMOV AL,AHOUT 40H,ALOUT 40H,ALMOV ALMOV AL,0101110100B110100BOUT 43HOUT 43H,ALALMOV AX,1000MOV AX,1000OUT 41H,ALOUT 41H,ALMOV AL,AHMOV AL,AHOUT 41H,ALOUT 41H,AL82538253初始化
24、程序:初始化程序:通道通道0 0初始化初始化通道通道1 1初始化初始化8.3 82538.3 8253应用举例应用举例例:例:利用利用82538253发发600Hz600Hz的声音。按任意键,的声音。按任意键,开始发声;按开始发声;按ESCESC键,停止发声。键,停止发声。解:解: 根据题意,有根据题意,有三项工作:三项工作:一是发声的频率应满足一是发声的频率应满足600Hz600Hz;二是扬声器的开和关。二是扬声器的开和关。 计数初值:计数初值:N=1.19318N=1.19318* *10106 6/600=1983/600=1983扬声器开关控制:扬声器开关控制:设置一个与门来控制。设置
25、一个与门来控制。CLK2 OUT2GATE2PB0 PB182538255&滤滤波波功功放放1.19MHz图图1 1 发声器电路原理发声器电路原理DATA SEGMENT M1 DB HELLO!,0DH,0AH,$DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART: MOV AX,DATA MOV DS,AX MOV DX,OFFSET M1 MOV AL,09H INT 21HW1: MOV AH,0BH INT 21H CMP AL,0 JZ W1 MOV AH,08H INT 21H CMP AL,1BH JZ STOP CALL SOU
26、ND JMP W1STOP: MOV AH,4CH INT 21HSOUND PROC MOV AL,10110110B OUT 43H,AL MOV AX,1983 OUT 42H,AL MOV AL,AH OUT 42H,AL IN AL,61H ;读入读入PB端口值端口值 MOV AH,AL OR AL,03H ;使得使得PB0/PB1为为1 OUT 61H,AL MOV CX,07FFFHDELAY: LOOP DELAY MOV AL,AH OUT 61H,AL RETSOUND ENDPCODE ENDS END START1 1、设、设82538253计数器计数器0 0 2 2和控制字的和控制字的I/OI/
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 先天性尺桡骨性连接的临床护理
- 无睾症的临床护理
- 【MOOC】金融风险管理-东华大学 中国大学慕课MOOC答案
- 饿了吗课程设计
- 飞轮电池 课程设计
- 飞机大战c 课程设计报告
- 飞大战游戏课程设计
- 风车涂色课程设计
- 风筝节特色课程设计
- 活动方案之冬季四防工作方案
- 高血脂和冠心病的药物治疗和康复
- 新高考选科走班指导主题班会
- 《CT检查技术》课件-胸部CT检查
- 血管瘤护理措施
- 圆及其在生活中的应用
- 起重指挥手培训课件
- 农商银行信贷客户经理管理办法
- 人才公寓建设实施计划书
- 苏教版小学数学六年级上册 解决问题的策略(2)(全国一等奖)
- 《自信主题班会》主题班会ppt课件完整版
- 2024传染病预防ppt课件完整版
评论
0/150
提交评论