-
定时器8253这部分内容周佳社老师讲得比较好,实验部分参考何宏老师《微机原理与接口技术 基于Proteus仿真的8086微机系统设计及应用》的12.2节,略有改动
-
使用Proteus提供的频率发生器和示波器
-
方式控制端口地址为A006H,计数器0的地址为A000H。当A14A13A12=010时候138选中Y2,A15=1时138可以工作。
-
结果如图所示,时钟为1MHz,计数时间为1us*20=20us,输出频率为50KHz,示波器宽度为2us,调整Horizontal橙色旋钮为2
-
计数器0选用方式3,初值为20,写计数器低八位,二进制计数,根据以上条件可以得出对控制端口初始化为00010110B
CODE SEGMENT PUBLIC 'CODE'
ASSUME CS:CODE
START:
JMP TCONT
TCONTR0 EQU 0A006H
TCON0 EQU 0A000H
TCON1 EQU 0A002H
TCON2 EQU 0A004H
TCONT:
MOV DX, TCONTR0
MOV AL, 00010110B
OUT DX, AL
MOV DX, TCON0
MOV AX, 20
OUT DX, AL
JMP $
CODE ENDS
END START