Ensamblador - Cronometro ascendetne en ensamblador ayudaaa

 
Vista:

Cronometro ascendetne en ensamblador ayudaaa

Publicado por Jaime Martinez (1 intervención) el 24/02/2008 00:37:18
hola estoy haciendo un cronometro ascendente en esnamblador que cuente de 0 hasta casi10 mins en este formato:
9:59:9,
ya lo hicimos en C, pero hacerlo en ensamblador esta mas dificl les paos mi codigo en C y si alguien tiene alguna idea de como hacerlo se los agradeceriamos mucho! por cierto es para el AT89S52
char hexa[]={0x03,0x9E,0x25,0x0C,0x99,0x48,0x41,0x1E,0x01,0x18};
int a,b,c,d,w,x,y,z =0;
void loop(){
TH1=0x3C;
TL1=0xB0;
TR1=1;
}

void main(){
TMOD=0x12;
loop();
P0 = hexa[0];
P1 = hexa[0];
P2 = hexa[0];
P3 = hexa[0];
while(1){
TR0=1;
if(TF0!=1){
if(TF1==1){
TR1=0;
TF1=0;
x++;
y++;
z++;
w++;
if(x==20){
a++;
x=0;
if(a==10){
a=0;
}
P3=hexa[a];
}
if(y==200){
b++;
y=0;
if(b==6){
b=0;
}
P0=hexa[b];
}
if(z==1200){
c++;
z=0;
if(c==10){
z=0;
}
P2=hexa[c];
}
if(w==2){
w=0;
d++;
if(d==10){
d=0;
}
P1=hexa[d];
}
loop();

}
}else{
TF0=0;
}

}
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Cronometro ascendetne en ensamblador ayudaaa

Publicado por diego (2 intervenciones) el 25/11/2009 01:49:13
mira en mi clase el profe nos lo mostro en emsamblador aqui tienes el codigo

JMP INI
ORG 1BH
MOV TL1,#0B0H
MOV TH1,#03CH
INC R1
CJNE R1,#20,CONT
INC A
DA A
MOV P2,A
MOV R1,#0
CONT: RETI

INI: INC P2
MOV TMOD,#10H
SETB EA
SETB ET1
MOV TL1,#0B0H
MOV TH1,#03CH
SETB TR1
JMP $
END
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Cronometro ascendetne en ensamblador ayudaaa

Publicado por diego (2 intervenciones) el 25/11/2009 01:54:37
mira en mi clase el profe nos lo mostro en emsamblador aqui tienes el codigo

JMP INI
ORG 1BH
MOV TL1,#0B0H
MOV TH1,#03CH
INC R1
CJNE R1,#20,CONT
INC A
DA A
MOV P2,A
MOV R1,#0
CONT: RETI

INI: INC P2
MOV TMOD,#10H
SETB EA
SETB ET1
MOV TL1,#0B0H
MOV TH1,#03CH
SETB TR1
JMP $
END

;ojo este solo cuenta segundos, falta lo demas, pero al menos aqui te das una idea
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar