Solicitar a expertos que escriban un programa utilizando el lenguaje C de 51 microcontroladores TMOD=0X01 con un tiempo de un segundo.
Usemos interrupciones para controlar el LED. Por ejemplo, si el tiempo de sincronización es de 50 ms y se establece en un segundo, agregue un bucle for y realice las modificaciones correspondientes.
# include & ltreg52.h & gt
sbit led=p1^2 //Definir puerto LED.
/* -
Subrutina de inicialización del temporizador
- */
void Init_Timer0(void)
{
TMOD | = 0x 01; //Usar el modo 1
TH0 =(65535-50000)/256; //Valor inicial dado
TL0 =( 65535-50000)% 256;
EA = 1; //La interrupción total está activada
ET0 = 1; //La interrupción del temporizador está activada
TR0 = 1; //El interruptor del temporizador está encendido
}
/* -
Programa principal
- */
main()
{
init _ temporizador 0();
mientras(1); >
/* -
Subrutina de interrupción del temporizador
- */
Utilice 1 para invalidar el temporizador 0_isr(void) interrupción 1
{
TH0 = 0x00//Reasignación
TL0 = 0x00
LED = ~ LED//La luz indicadora está invertida, OK Ver parpadea.
}