标题: STM8S105K单片机驱动蜂鸣器源程序不响? [打印本页]

作者: lishen1111    时间: 2020-7-25 17:57
标题: STM8S105K单片机驱动蜂鸣器源程序不响?
#include <STM8S105K.h>
// 输入参数:ms -- 要延时的毫秒数,这里假设 CPU 的主频为 2MHZ
void DelayMS(unsigned int ms) // 函数功能:延时函数
{
                        unsigned char i;
                        while(ms != 0)
                        {
                                for(i=0;i<250;i++);
                                for(i=0;i<75;i++);
                        ms--;
                        }
}
main()
{
                int i;
                CLK_ICKR = CLK_ICKR | 0x08; // 打开芯片内部的低速振荡器 LSI
                while((CLK_ICKR & 0x10) == 0); // 等待振荡器稳定
                // 通过设置蜂鸣器控制寄存器,来打开蜂鸣器的功能,蜂鸣器控制寄存器的设置:
                // BEEPDIV[1:0] = 00 BEEPDIV[4:0] = 0e BEEPEN = 1
                // 蜂鸣器的输出频率 = Fls
                // ( 8 * (BEEPDIV + 2) )= 128K / (8 * 16) = 1K
               
                //InitBEEP();//初始化蜂鸣器
                //BEEP_LSICalibrationConfig(128000);//校准蜂鸣器频率
                BEEP_CSR|=0x40;//蜂鸣器鸣叫频率 2K
                BEEP_CSR = 0x2e;
                for(i=0;i<10;i++)
                {
                DelayMS(250);
                }
                BEEP_CSR = 0x1e; // 关闭蜂鸣器
                while(1);
}

1.png (8.67 KB, 下载次数: 76)

原理图

原理图

作者: lishen1111    时间: 2020-7-25 17:58
为什么蜂鸣器不响啊?????




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1