当前位置: 代码迷 >> 单片机 >> 蜂鸣器程序~乃是不会响,求指导
  详细解决方案

蜂鸣器程序~乃是不会响,求指导

热度:63   发布时间:2016-04-28 15:53:11.0
蜂鸣器程序~就是不会响,求指导
废话少说,直接代码~

#include <reg51.h>
#define uint unsigned int

sfr P4=0xE8;
sbit BEEP = P4^4;

void Delay(uint xms)
{
uint i,j;
for(i=xms;i>0;i--)
for(j=100;j>0;j--);
}

void beep()
{
BEEP=1;
Delay(100);
BEEP=0;
}
void main()
{
P4=0xff;
while(1)
beep();
}

机器周期为1us

------解决方案--------------------
改一下beep函数试试。

void beep()
{
 BEEP=1;
 Delay(300);
 BEEP=0;
 Delay(300);
}

------解决方案--------------------
也有可能是硬件驱动的问题,

蜂鸣器前要加三极管驱动的。
------解决方案--------------------
你这驱动能力不够的
你可以简单的接个小上拉电阻

还有蜂鸣器是有两种的,一种是给电就响,不需要给脉冲
另一种就是需要脉冲驱动的
你用电池接到蜂鸣器两端看你的是哪中蜂鸣器
  相关解决方案