Red de conocimientos turísticos - Información de alquiler - En 8051, se sabe que la frecuencia del oscilador de cristal es de 12 MHz. Intente programar P1.0 y P1.1 para que generen ondas cuadradas con períodos de 2 ms y 500 ms respectivamente.

En 8051, se sabe que la frecuencia del oscilador de cristal es de 12 MHz. Intente programar P1.0 y P1.1 para que generen ondas cuadradas con períodos de 2 ms y 500 ms respectivamente.

#includelt;reg51.hgt;

#define uchar unsigned char

#define uint unsigned int

uint Time_Num_2ms, Time_Num_500ms;

sbit PWM1=P1 ^0; //El bit que define el puerto de salida de onda cuadrada de 2 ms

sbit PWM2=P1^1 //El bit se utiliza para definir el puerto de salida de onda cuadrada de 500 ms

void InitTimer0(void)

{

TMOD=0x01; //Configurar Timer0 para el modo de trabajo 1

TH0=(65536-1000)/256; /cargar valor inicial, valor inicial de 1ms

TH0=(65536-1000)256; //cargar valor inicial, valor inicial de 1ms

EA=1;

ET0=1; //abre la interrupción del temporizador0

TR0=1; //inicia el temporizador 0

}

void T0Timer () interrupción 1

{

TH0=(65536-1000)/256; // Sobrecarga valor inicial, valor inicial 1 ms

TH0=(65536- 1000)256; // Sobrecarga valor inicial, valor inicial 1 ms

Time_Num_2ms;

Time_Num_500ms

}

void main(void; )

{

P1=0xff

InitTimer0()

mientras(1)

{

if(Time_Num_2ms==2)

{

Time_Num_2ms=0

PWM1=~PWM1

<; p> }

if(Time_Num_500ms==500)

{

Time_Num_500ms=0

PWM2=~PWM2

}

}

}

}