Red de conocimiento informático - Problemas con los teléfonos móviles - Cómo configurar el timbre BEEP en STM8L15, lo he intentado muchas veces, pero solo puedo hacer que el timbre actúe pero no emita ningún sonido.

Cómo configurar el timbre BEEP en STM8L15, lo he intentado muchas veces, pero solo puedo hacer que el timbre actúe pero no emita ningún sonido.

void main(void)

{

unsigned char state=0;//state

Gpio_Init();//inicialización de puerto

Led_Init();//Inicialización del LED

CLK_LSEConfig( CLK_LSE_ON); //Encender el reloj LSE

while(CLK_GetFlagStatus(CLK_FLAG_LSERDY)== RESET);

CLK_PeripheralClockConfig(CLK_ Peripheral_BEEP, ENABLE);//Habilitar el reloj periférico BEEP

CLK_BEEPClockConfig(CLK_BEEPCLKSource_LSE);//Configurar la fuente del reloj de BEEP en LSE

mientras (1)

{

if( GPIO_READ(GPIOB,GPIO_Pin_0)==0){

switch(state){ // Máquina de estado, seleccione función.

caso 1:BEEP_Init(BEEP_Frequency_1KHz);//unidad de onda cuadrada de 1KHZ BEPP

BEEP_Cmd(ENABLE);//habilita salidas para sonido

LED1_1() ; //El LED muestra el estado actual

LED2_0 ();

interrupción;

caso 2: BEEP_Init(BEEP_Frequency_2KHz);//unidad de onda cuadrada de 2 KHZ BEPP

BEEP_Cmd(ENABLE);//Habilitar vocalización de salidas

LED1_0();//El LED muestra el estado actual

LED2_1();

break;

Caso 3: BEEP_Init(BEEP_Frequency_4KHz);//unidad de onda cuadrada de 4KHZ BEPP

BEEP_Cmd(ENABLE);//Habilitar vocalización de salidas

LED1_1 ();//El LED muestra el estado actual

LED2_1();

interrupción;

predeterminado: estado=0;

break ;

}

}

LED1_0();//El LED muestra el estado actual

LED1_0();// El LED muestra el estado actual Estado

LED2_0();

delay_ms(1000);

BEEP_Cmd(DISABLE); //Apagar salida

delay_ms(500 ); //Retraso para distinguir sonidos de dos frecuencias

estado ++; //Siguiente estado

}.

}

Un pequeño programa escrito por ti mismo, llévatelo