Cómo hacer que el puerto P0^0 del microcontrolador STC89C52 genere un nivel alto durante 30 segundos y un nivel bajo durante 5 minutos y 30 segundos. Por favor, deme un programa en lenguaje C.
#include "reg52.h "#include "stdio.h "#define p0^0 out//---------------- Programa principal---------- ----------void main(){ while(1) { p0=0xFF;//p0.0 salida nivel alto Delay30s();//retraso p0=0x00;//p0.0 salida baja nivel Delay330s();//delay }}//---------------- subrutina delay30s-------------void delay30s () //error 0us
{
carácter sin firmar a,b,c,n;
for(c=254;c>0;c--) //null operación
for(b=232;b>0;b--)
for(a=253;a>0;a--);
for(n=2441;n& gt;0;n--);
}
/------------- -- retraso 330S subrutina-----------void delay330s(void) //error 0us
{
unsigned char a,b,c,d ;
for(d=233;d>0;d--) //operación nula
for(c=137;c>0;c--)
for (b=195;b>0;b--)
for(a=25;a>0;a--);
}// ----- ---- ---- Improvisación, puede haber omisiones, no compilé --------------