¿Cómo utilizar el temporizador del microcontrolador para implementar el proceso de programación de temporización?
El temporizador es en realidad un contador del reloj interno del microcontrolador. Cada contador de ciclo aumenta en 1, por lo que cuando utilice la función de temporizador, primero debe darle al temporizador un valor inicial, es decir, primero escriba el valor de TH0TL0 (como sigue), después de escribir el valor inicial, espere a que se llene el contador de la función del temporizador, es decir, se desbordará después de llegar a 65536, por lo que un proceso de temporización es el ciclo de reloj representado por el número entre 65536 y el valor inicial. Si el recuento está lleno y se desborda, para generar una interrupción, debe escribir una subrutina de servicio de interrupción. La subrutina es la siguiente: void timer0() barra de interrupción. . El de arriba no escribió interrupción para seleccionar el modo de funcionamiento del temporizador. Vaya, estoy tan agotado
void main()
{
TH0=(65536-50000)/256;
TL0 = (65536-50000) 256; //Valor inicial del temporizador 0, tiempo 50 ms, tantos MS como tiempo * 1000
EA=1 //Habilitar interrupción total
ET0=1; //Interrupción del temporizador 0 habilitada
TR0=1; //Habilitar el temporizador 0
while(1)
{
}
}
void timer0() interrupción 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)256;
}