21 de abril de 2009

Práctica temporizadores

En el siguiente ejercicio se programa el microcontrolador para gestionar una temporización de 2 segundos:

sfr TMOD=0x89;
sfr TCON=0x88;
sfr TH0=0x8c;
sfr TL0=0x8A;
sbit TF0=TCON^5;
sbit TR0=TCON^4;
sfr P0=0x80;
sfr P1=0x90;
sfr P2=0xA0;
sfr P3=0xB0;

void main (void) {
int contador=0;unsigned long desbordes=0;
P0=0xFF;
P1=0xFF;
TMOD=0x01;
TH0=0x00;
TL0=0x00;
TF0=0;TR0=1;

while(1){
if (TF0==1)
{TF0=0;desbordes++;
if (desbordes==30)
{desbordes=0;
P0=~P0;
P1=~P1;}
}
}
}

** Se pide realizar las modificaciones oportunas para generar un retardo de 10s.

No hay comentarios: