zhaopengxslc
发表于 2013-10-13 16:05:07
尝试成功了
pumpitup
发表于 2014-1-29 18:11:35
本帖最后由 pumpitup 于 2014-1-29 18:13 编辑
今天做了一下,蜂鸣器正接反接都响,但是声音略有不同,有一种略带点公鸭嗓子的感觉。
int soundport=4;
void setup() {
pinMode(soundport,OUTPUT);
}
int yfl[]={262,293,329,349,392,440,494};
int yf[]={523,586,658,697,783,879,987};
int yfh[]={1045,1171,1316,1393,1563,1755,1971};
void ps(int fre,int hl,float tim){
if(hl==0){
tone(soundport,yfl);
}else if(hl==1){
tone(soundport,yf);
}else if(hl==2){
tone(soundport,yfh);
}
delay((int)tim*1000);
noTone(soundport);
}
void loop() {
ps(1,2,1);
ps(2,2,2);
ps(3,2,3);
delay(1000);
/*
for(int i=0;i<2;i++){
tone(4,yf);
delay(400);
tone(4,yf);
delay(400);
}
*/
/*for(int i=0;i<=6;i++){
tone(4,yf);
delay(1000);
}
noTone(4);
delay(1000);
*/
}
sinaydj2
发表于 2014-2-6 01:12:43
照着做了,ok.
sinaydj2
发表于 2014-2-6 12:26:48
请问强哥。
for(int i=200;i<=800;i++)
这频率就是用i表示吗?用其它字母不行吗?
shihaipeng04
发表于 2014-2-10 17:25:38
sinaydj2 发表于 2014-2-6 12:26 static/image/common/back.gif
请问强哥。
for(int i=200;i
用啥都可以,名字而已,自己随便起,只要不是系统保留的命令或函数名字。
gly1215216357
发表于 2014-5-9 16:04:45
嗯,学习了tone()函数
[email protected]
发表于 2014-5-24 12:38:02
chaoser 发表于 2013-8-9 21:54 static/image/common/back.gif
换种写法写一下楼主大大的程序:
/* 程序功能:使用tone()函数产生声音,模拟防控警报的响声
初始值n=200;i会直接变成-i;就出错了。
MuteFelix
发表于 2014-6-18 22:03:56
请问tone(pin, frequency) 和delay函数能否用tone(pin, frequency, duration)代替?实际试了一下发现不能,两者区别在哪??
Black7
发表于 2014-10-10 21:09:18
好东西,相当基础,适合初学者,顶!!!!
Valyrian
发表于 2015-1-31 16:35:05
强哥
根据tone(pin, frequency, duration)是不是可以tone(4,i,5)???
Valyrian
发表于 2015-1-31 16:35:25
强哥
根据tone(pin, frequency, duration)是不是可以tone(4,i,5)???
xiaokaihao0
发表于 2015-4-25 10:13:22
[email protected] 发表于 2014-5-24 12:38 static/image/common/back.gif
**** 作者被禁止或删除 内容自动屏蔽 ****
改变下顺序,让n+=i在最上面就可以了
pumpitup
发表于 2015-6-1 23:45:12
想问一下lz,如果用有源蜂鸣器的话,与使用无源的有什么不同。
suoma
发表于 2015-6-2 13:12:22
pumpitup 发表于 2015-6-1 23:45 static/image/common/back.gif
想问一下lz,如果用有源蜂鸣器的话,与使用无源的有什么不同。
一个上电就工作,一个需要触发脉冲
pumpitup
发表于 2015-6-2 16:57:28
suoma 发表于 2015-6-2 13:12 static/image/common/back.gif
一个上电就工作,一个需要触发脉冲
程序是通用的么?