Red de conocimiento informático - Problemas con los teléfonos móviles - stc89C51 utiliza el puerto serie para enviar un número a la computadora, comenzando desde 0 y contando hacia arriba. Si no se presiona ninguna tecla en 5 segundos, se agrega un número en 1 segundo.

stc89C51 utiliza el puerto serie para enviar un número a la computadora, comenzando desde 0 y contando hacia arriba. Si no se presiona ninguna tecla en 5 segundos, se agrega un número en 1 segundo.

Después de iniciar el mecanismo de vigilancia en el programa principal, el mecanismo de vigilancia se actualizará continuamente en el bucle del programa principal. Una vez que el mecanismo de vigilancia deje de actualizarse, se restablecerá. El programa es el siguiente:

#include lt; reg51.hgt;

sbit k1=P3^3; //pulsación de tecla

sfr WDT_CONTR = 0xE1; //definir el registro de vigilancia del microcontrolador STC89C51

unsigned char t0n; // T0 interrumpe 20 veces durante 1 segundo

unsigned char s5;/temporizador de 5 segundos

unsigned char second; // Segundo temporizador

main()

{

segundo=0xFF;

TMOD=0x21; /p>

p>

TH1 =0xFD; //Frecuencia del oscilador de cristal=11.

TH1 =0xFD; //Frecuencia del oscilador de cristal=11.0592, velocidad en baudios=9600

TL1 =0xFD;

SCON=0x50;

TH0 =0x4B; //Frecuencia del oscilador de cristal=11.0592, temporización 50 ms

TL0 =0xFD;

EA ?=1;

ET0 =1;

TR0 =1; p>WDT_CONTR=0x30; // EN_WDT=1; inicia el mecanismo de vigilancia, CLR_WDT=1, borra el mecanismo de vigilancia

mientras(1)

{

WDT _CONTR|=0x10; //Actualizar vigilancia

if(k1==0)

{

s5=0; clear 0

while(k1==0)WDT_CONTR|=0x10; //Espera a que se suelte la tecla para actualizar el mecanismo de vigilancia

}