[STM8] STM8S中的BEEP怎么用?

[复制链接]
2769|26
dingy 发表于 2017-7-24 23:01 | 显示全部楼层

#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三极管 驱动即可
supernan 发表于 2017-7-24 23:03 | 显示全部楼层

蜂鸣器是几V的,stm8输出是几V的
 楼主| ousj 发表于 2017-7-24 23:04 | 显示全部楼层
结贴了,多谢大家讨论这么多哈,呵呵
Erichk 发表于 2017-7-26 17:00 | 显示全部楼层
有没有输出波形??
zlutian 发表于 2017-7-26 22:52 | 显示全部楼层
谢谢,学习了。
拉克丝 发表于 2017-7-29 16:51 | 显示全部楼层
用编程Option byte方式Enable  Beep功能
LRP103981836 发表于 2017-9-19 22:48 | 显示全部楼层
学习了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部