方法二:查询方式 ORG 0000H START: MOV SP, #5FH 可替换为 LOOP: JNB TFO, S MOV TMOD,#O CLR TFO MOV TLO, #18H MOV TLO.#18H MOV THO, #OEOH SETB TRO LOOP: JBC TFO, NEXT SJMP LOOP NEXT: MOV TLO,#18H MOV THO, #OEOH CPL P1.0 SJMP LOOP
方法二:查询方式 ORG 0000H START:MOV SP,#5FH MOV TMOD,#0 MOV TL0,#18H MOV TH0,#0E0H SETB TR0 LOOP: JBC TF0,NEXT SJMP LOOP NEXT: MOV TL0,#18H MOV TH0,#0E0H CPL P1.0 SJMP LOOP 可替换为: LOOP:JNB TF0,$ CLR TF0 MOV TL0,#18H :
6.3.2模式1及其应用 模式1时的结构和工作原理 模式1工作时的结构构成: (1)定时计数信号源;(2)运行控制部分; (3)16位计数器 (4)溢出标志。 M|1派荡器-÷12 C/T=0 TLo THO 中断 8位)(8位 TF C/T T引脚 C/T=1 IRD GATE 控制 B INT引脚
6. 3. 2 模式1及其应用 一、模式1时的结构和工作原理 模式1工作时的结构构成: (1)定时/计数信号源;(2)运行控制部分; (3)16位计数器; (4)溢出标志。 0 1
二、特点 1、可定时(C/=0)、可计数(C/T=1); 2、16位方式(TL0、1为低8位,TH0、1为高8位); 3、INT0、NT1是定时器计数器0、1的外部门, GATE=1允许使用外部门(TR0、1应置1),此时 用外部门控制运行 GATE=0禁止外部门,此时用TR0、1控制运行; 4、计数值N和定时时间t的计算: N=216-初值X 仁=(216-初值X)*机器周期Tcy 最大计数值为:216=65536
二、特点 1、可定时(C/T=0)、可计数(C/T=1) ; 2、16位方式(TL0、1为低8位,TH0、1为高8位); 3、INT0、INT1是定时器/计数器0、1的外部门, GATE=1允许使用外部门(TR0、1应置1), 此时 用外部门控制运行 GATE=0禁止外部门,此时用TR0、1控制运行; 4、计数值N和定时时间t的计算 : N= 216 -初值X t=(2 16 -初值X) *机器周期Tcy 最大计数值为: 2 16 =65536
例6-4用定时器T1产生一个50Hz的方波,由P11 输出。使用程序查询方式,设fosc=12MHz 解 (1)计算初值 方波周期T为:T=1/50s=0.02s=20ms 定时时间为:tT/2=10ms=10000s 由公式:t=(216-X)*机器周期Tcy 因Tcy=1ps,得 10000(216X)*1,100065536-X X=55536=D8FoH 55536÷256 商为高8位, 余数为低8位
例6-4 用定时器T1产生一个50Hz的方波,由P1.1 输出。使用程序查询方式,设ƒosc=12MHz。 解: (1)计算初值 方波周期T为:T=1/50s=0.02s=20ms 定时时间为:t=T/2=10ms=10000μs 由公式: t=(2 16 -X)*机器周期Tcy 因Tcy=1μs,得 10000= (216 -X)*1, 10000=65536-X X=55536=D8F0H 55536÷ 256 商为高8位, 余数为低8位
(2)模式字TMOD TMOD=0001*实兴B=10H (3)源程序 ORG 0000H MOV TMOD,#10H SETB TRI LP: MOV THI, #OD8H MOV TLl, #OFOH JNB TF1, S CLR TFI CPL P1. SJMP LP
(2)模式字TMOD TMOD=0001****B=10H (3)源程序 ORG 0000H MOV TMOD,#10H SETB TR1 LP: MOV TH1,#0D8H MOV TL1,#0F0H JNB TF1,$ CLR TF1 CPL P1.1 SJMP LP