STM8S中的BEEP有什么作用?该如何使用?

2019-07-14 15:37发布

STM8S中的BEEP怎么用?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
18条回答
储蓄叛逆
2019-07-16 11:40

#define LSI_128kHz 128000
#define Beep_OptionAdd  0x4803

void BEEP_Config(BEEP_Frequency_TypeDef BEEP_Frequency)
{
         BEEP_Init(BEEP_Frequency);
         BEEP_LSICalibrationConfig(LSI_128kHz);
         CLK_LSICmd(ENABLE);
}

void Set_Beep_OptionByte(void)
{
         uint16_t Beep_Option_status;/*记录激活备选功能Beep的状态*/
         Beep_Option_status = FLASH_ReadOptionByte(Beep_OptionAdd);

         /*Beep_Option_status的最高位为1激活了Beep,否则不激活*/
         if(!(Beep_Option_status & 0x8000))
         {
                 FLASH_Unlock(FLASH_MEMTYPE_DATA);
                 FLASH_ProgramOptionByte(Beep_OptionAdd, (uint8_t)((Beep_Option_status | 0x8000) >> 8));
                 FLASH_Lock(FLASH_MEMTYPE_DATA);
                 /*向Beep_OptionAdd  0x4803 置1,激活了Beep*/
         }
}



使用
        BEEP_Config(BEEP_FREQUENCY_2KHZ);
         Set_Beep_OptionByte();

BEEP_Cmd(ENABLE);  就会响了...无源蜂鸣器,  8050三极管 驱动即可

一周热门 更多>