接口技术的一个问题,产生周期为1ms的连续方波并在示波器上显示
;产生一个周期为1ms的连续方波,并在示波器上显示。使用1MHZ的脉冲DATASEGMENTT0EQU280HT1EQU281HT2EQU282HCTLEQU283HDA...
;产生一个周期为1ms的连续方波,并在示波器上显示。使用1MHZ的脉冲
DATA SEGMENT
T0 EQU 280H
T1 EQU 281H
T2 EQU 282H
CTL EQU 283H
DATA ENDS
STACK1 SEGMENT PARA STACK
DW 20H DUP(0)
STACK1 ENDS
COSEG SEGMENT
ASSUME CS:COSEG,DS:DATA,SS:STACK1
START: MOV AX,DATA
MOV DS,AX
MOV DX,CTL
MOV AL,00110111B
OUT DX,AL
MOV DX,T0
MOV AL,00H
OUT DX,AL
MOV AL,10H
OUT DX,AL
MOV AH,4CH
INT 21H
COSEG ENDS
END START
我有几个问题:
1、这个是老师的课件,第一个示波器下面一个1us是什么意思?前面999us是干嘛?
2、1MHZ计数次数应该是1000次吧,带上所给代码MOV AL,00H OUT DX,AL MOV AL 10H,OUT DX,AL这里是什么意思?求助。麻烦大神给我解释一下感激不尽
补充一下,用的是8253芯片哦 展开
DATA SEGMENT
T0 EQU 280H
T1 EQU 281H
T2 EQU 282H
CTL EQU 283H
DATA ENDS
STACK1 SEGMENT PARA STACK
DW 20H DUP(0)
STACK1 ENDS
COSEG SEGMENT
ASSUME CS:COSEG,DS:DATA,SS:STACK1
START: MOV AX,DATA
MOV DS,AX
MOV DX,CTL
MOV AL,00110111B
OUT DX,AL
MOV DX,T0
MOV AL,00H
OUT DX,AL
MOV AL,10H
OUT DX,AL
MOV AH,4CH
INT 21H
COSEG ENDS
END START
我有几个问题:
1、这个是老师的课件,第一个示波器下面一个1us是什么意思?前面999us是干嘛?
2、1MHZ计数次数应该是1000次吧,带上所给代码MOV AL,00H OUT DX,AL MOV AL 10H,OUT DX,AL这里是什么意思?求助。麻烦大神给我解释一下感激不尽
补充一下,用的是8253芯片哦 展开
1个回答
展开全部
周期是1ms,1us是低电平时间,999us是高电平时间,一个周期就是999us+1us=1ms。这个方波的占空比是99.9%.
1Mhz是时钟输入,得到1ms周期也就是1Khz的方波需要计数1000次。这个代码都是基本的寄存器读写操作。
MOV DX,T0 指定端口为T0,
MOV AL,00H 在AL写入00H
OUT DX,AL 把00写入T0端口 (计数器初值低位)
MOV AL,10H 在AL写入10H
OUT DX,AL 把10H写入T0端口 (计数器初值高位)
因为前面配置8253控制寄存器为T0,方式3,BCD计数,所以上面代码就是给T0初值1000。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询