微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 单片机驱动蜂鸣器为什么有杂音?

单片机驱动蜂鸣器为什么有杂音?

时间:10-02 整理:3721RD 点击:
这是我的电路的一部分,为什么发声会不清晰呢?


测试程序如下:
#include<reg51.h>
#define uint unsigned  int
#define uchar unsigned char
sbit SPK=P2^7;
void alarm(uchar t) //产生200个周期为2t的波形
{
        uchar i,j;
        for(i=0;i<200;i++)
        {
                SPK=~SPK;
                for(j=0;j<t;j++)
                ;
        }
}
void delayms(uint xms) //延时110*x
{
        uint i,j;
        for(i=xms;i>0;i--)
        for(j=110;j>0;j--)
        ;
}       
void main()
{       
        uchar t;
        delayms(11*50);
        SPK=0;       
                  for(t=20;t>10;t--)
                  {
                          alarm(90);
                          delayms(t*30);
                  }
                  while(1)
                {
                alarm(90);
                delayms(100);       
                }
          
}

R3的作用是不是相当于上拉电阻啊

我的是做的基于单片机的电子时钟的整点报时功能,蜂鸣器响一声后不能完全关闭,有杂音,不知道怎么回事

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top