admin 管理员组

文章数量: 1087134


2024年3月21日发(作者:三角函数诱导公式图像)

单片机蜂鸣器发声代码

蜂鸣器是一种常见的电子元件,可以发出短促的蜂鸣声用于提醒

或警示。在单片机应用中,蜂鸣器可以用来作为声音提示的一种方式。

下面介绍一段单片机蜂鸣器的发声代码。

1. 引脚连接

在使用单片机控制蜂鸣器发声之前,需要将蜂鸣器与单片机的引

脚连接。通常情况下,蜂鸣器有两个引脚,其中一个为正极,一个为

负极。将蜂鸣器的正极连接到单片机的一个IO口上,将负极连接到

单片机的GND上。

2. 代码实现

单片机发出频率为f的声音,需要将IO口以1/f的频率高低电

平切换。以下是一个基本的单片机蜂鸣器发声代码:

#include 'reg51.h' //单片机头文件

#define BEEP P1_5 //定义蜂鸣器连接的IO口

void Delay(unsigned int Time) //延时函数

{

unsigned int i,j;

for(i=Time;i>0;i--)

for(j=110;j>0;j--);

}

void Beep(unsigned int Time) //发出一次蜂鸣声

{

- 1 -

BEEP = 0; //使IO口输出低电平

Delay(Time); //延时

BEEP = 1; //使IO口输出高电平

Delay(Time); //延时

}

void main(void)

{

while(1)

{

Beep(100); //发出100ms的蜂鸣声

}

}

在上述代码中,我们首先定义了蜂鸣器连接的IO口为P1_5,然

后定义了一个延时函数Delay和一个发出蜂鸣声函数Beep。Delay函

数用于延时,Beep函数用于发出一次蜂鸣声。

在main函数中,我们使用一个while循环不停地发出蜂鸣声。

在Beep函数中,我们首先使IO口输出低电平,然后延时一段时间,

再使IO口输出高电平,再延时一段时间,从而在IO口上形成一个频

率为1/(2*Time)的方波信号,从而发出蜂鸣声。

3. 修改参数

如果我们想要修改蜂鸣器发出的声音的频率和时长,只需要在

Beep函数中修改Time的值即可。例如,如果我们想要发出一个持续

- 2 -

200ms的蜂鸣声,可以将Beep(100)修改为Beep(200)即可。

总之,单片机蜂鸣器发声代码是比较简单的,只需要将IO口以

一定的频率高低电平切换即可。通过修改参数,我们可以实现不同频

率、不同时长的蜂鸣声。

- 3 -


本文标签: 蜂鸣器 单片机 发出 发声 声音