Red de conocimiento informático - Consumibles informáticos - Disculpe, comente sobre el microcontrolador 51.

Disculpe, comente sobre el microcontrolador 51.

void t0(void) interrupción 1 usando 0 //Función de interrupción del temporizador 0

{

TH0=(65536-500)/256; al contador de tiempo se le asigna un valor inicial

TL0=(65536-500)256; //Igual que arriba

if((errorflag==1) amp; amp; (rightflag= =0 ))// Si se considera que ambas expresiones son verdaderas, el programa ingresará {} para su ejecución

{

bb //El valor de bb se incrementa en 1.

if(bb==800) //Si el valor de bb es igual a 800, el programa ingresará el siguiente {} para su ejecución

{

bb=0; //bb se borra

alarmflag=~alarmflag; //El valor de alarmflag se invierte

}

if(alarmflag== 1) //Si alarmflag es igual a 1, el programa ingresará lo siguiente {} Ejecutar dentro de

{

P0_0=~P0_0 //Inversión de salida P0.0

}

aa; //aa Suma 1 al valor

if(aa==800) //Si el valor de aa es igual a 800, el el programa ingresa lo siguiente {} y se ejecuta

{

aa= 0; //aa se borra

P0_1=~P0_1; la salida se invierte

}

second3; //El valor de second3 se suma 1

if( second3==6400)//Si el valor de second3 es igual a 6400, el programa ingresa lo siguiente {} y se ejecuta

{

second3=0; / /segundo3 clear

hibitflag=0; /borrar

errorflag=0; //borrar

rightflag=0; //borrar

cmpflag=0; > P0_1=1; //P0.1 salida de batería alta

alarmflag=0; //Borrar

p>

bb=0 //Borrar

aa=0; //Borrar

}

}

if((errorflag==0) amp; amp; (rightflag==1)) / /Si ambas expresiones son verdaderas, el programa ingresará el siguiente {} para su ejecución

{

P0_1=0 //P0.1 salida batería inferior

cc; //El valor de cc aumenta en 1

<

p> if(cclt; 1000) //Si el valor de cc es menor que 1000, el programa ingresa el siguiente {} para su ejecución

{

okflag=1; okflag es igual a 1

}

else if (cclt; 2000) Si el valor de cc anterior no es menor que 1000, el programa salta directamente aquí para determinar si el valor de cc es menor que 2000. Si el valor de cc es menor que 2000, el programa pasa a lo siguiente Ejecutar dentro de {}

{

okflag=0; /p>

}

else // Si el valor de cc arriba Si el programa no es inferior a 2000, salte directamente aquí e ingrese la ejecución en {} a continuación

{

errorflag=0; //Borrar

rightflag=0; // Borrar

hibitflag=0 //Borrar

cmpflag=0; //Borrar

P0_1=1; //P0.1 salida de batería alta

cc=0; ; //Borrar

okb=0; //Borrar

okflag=0; //Borrar

P0_0=1; bateria

}

if(okflag== 1) //Si el valor de okflag es igual a 1, el programa ingresa el siguiente {} para su ejecución

{

oka; //El valor de oka se incrementa en 1

if(oka ==2) //Si el valor de oka es igual a 2, el programa ingresa lo siguiente {} para ejecución

{

oka=0; //El valor de oka se borra

P0_0=~P0_0; inversión de salida

}

}

else //Si el valor de okflag anterior no es igual a 1, el programa ingresa Ejecutar dentro de {} a continuación

{

okb; //okb más 1

if(okb==3) //Si el valor de okb es igual a 3 programa Ingresa lo siguiente { } para ejecutar

{

okb=0; //okb es igual a 0, lo que significa lo mismo que arriba para borrar

P0_0=~P0_0; .0 negación de salida

}

}

}

}

Mi QQ183184473