现代微机原理与接口技术 思路: TC1产生10ms的基准时间间隔,然后通过OUT控 制TC0计数,用fnN=(N-M+1)10ms*1000Hz公式来计 算。其中N是T/C0的初始值,M是计数基准时间到时 的TC0当前计数值。 为了辅助控制,我们用8255A口初始化为输出,其 中位0为TRG,用来控制计数器1的GATE。8255B口 初始化为输入,其中位0接到OUT1脚,通过对该位的 不断査询,来确定10ms是否结束,结束后,根据TC0 的计数数值进行计算。 Department of Computer Science Engineering 算机科学与工程系 http://qsyang.yeah.net
http://qsyang.yeah.net 现代微机原理与接口技术 11 思路: T/C1产生10ms的基准时间间隔,然后通过OUT1控 制T/C0计数,用 fIN=(N-M+1)/10ms*1000Hz 公式来计 算。其中N是T/C0的初始值,M是计数基准时间到时 的T/C0当前计数值。 为了辅助控制,我们用8255A口初始化为输出,其 中位0为TRG,用来控制计数器1的GATE。8255B口 初始化为输入,其中位0接到OUT1脚,通过对该位的 不断查询,来确定10ms是否结束,结束后,根据T/C0 的计数数值进行计算
现代微机原理与接口技术 OUT PIOO, 0 TRG=O MOV AL, 01110010B; T/CI OUT 43H, AL MOV AH,2710H;间隔为10ms(2710H=10000 OUT 4IH AL MOV AL, AH OUT 41H, AL MOV AL,00110000B;T/C0 转上页 ouT 43H, AL 返回下页 MOV AL,00H;初值为65536 OUT 40H, AL OUT 40H, AL STC产生一个脉冲 OUT PIO0,2;TRG=1,开始计数 Department of Computer Science Engineering 算机科学与工程系 http://qsyang.yeah.net
http://qsyang.yeah.net 现代微机原理与接口技术 12 OUT PIO0,0 ;TRG=0 MOV AL,01110010B ;T/C1 OUT 43H,AL MOV AH,2710H ;间隔为10ms(2710H=10000) OUT 41H,AL MOV AL, AH OUT 41H,AL MOV AL,00110000B ;T/C0 OUT 43H,AL MOV AL,00H ;初值为65536 OUT 40H,AL OUT 40H,AL ;STC产生一个脉冲 OUT PIO0,2 ;TRG=1,开始计数 返回下页 转上页