单片机用C语言让蜂鸣器发出两种声调,怎么编程?

单片机用C语言让蜂鸣器发出两种声调,怎么编程?,第1张

蜂鸣器发出两棚早种不同的声调很容易,瞎扮只要给蜂鸣器的控制信号发送不同频率的脉冲就可以实现了,以下以延时方式来做。

#include<reg51.h>

#define

uchar

unsigned

char

#define

uint

unsigned

int

sbit

SPK=P1^0

sbit

K1=P1^7

//发链神雀声函数

void

Alarm(uchar

t)

{

uchari,j

for(i=0i<200i++)

{

SPK=~SPK

for(j=0j<tj++)

//由参数t行成不同的频率

}

}

voidmain()

{

SPK=0

while(1)

{

if(K1==1)

{

Alarm(90)

Alarm(120)

}

}

}

输出不同频率的方波信号来驱动蜂卜肆消鸣器即可发出N多种的声音。

用一个小的C程序型知来给你演示一下:

while(1)

{

P0^0=1

delayms(50)

P0^0=0

delayms(50)

}

改变delayms()函数据的参数即可雹袭改变延时的时间,就可以改变P0.0口输出的方波的频率,驱动蜂鸣器后就能发出不同的声音了

答:

#include<reg52.h>枣行

sbit beep=P1^0// 低电平凳衡哗驱动

sbit key1=P1^2

sbit key2=P1^3

typedef unsigned int uint

typedef unsigned char uchar

void delay(uint x)

{

uint i,j

for(i=xi>拦友0i--)

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

}

void mian()

{

while(1)

{

if(key1==0)

{

delay(20)

if(key1==0)

{

while(!key1)

{

beep=0delay(5)beep=1delay(5)

}

}

if(key2==0)

{

while(!key2)

{

beep=0delay(2)beep=1delay(2)

}

}

}

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12499154.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存