本帖最后由 amxamx 于 2015-1-11 17:32 编辑
ps:VBB里面没有找到我用的超声波,我的是四个接口的。
连线如图,问题是我想两个超声波通过不同的距离发出两个音调,但是总是有一个音调不对,感觉就是不能发出,就是一个声音发出正常,一个特别小而且音调不对。求大神帮忙啊。。。
ARDUINO 代码
- int _ABVAR_2_L2;
- int _ABVAR_1_L1;
- int ardublockUltrasonicSensorCodeAutoGeneratedReturnCM(int trigPin, int echoPin)
- {
- int duration;
- pinMode(trigPin, OUTPUT);
- pinMode(echoPin, INPUT);
- digitalWrite(trigPin, LOW);
- delayMicroseconds(2);
- digitalWrite(trigPin, HIGH);
- delayMicroseconds(5);
- digitalWrite(trigPin, LOW);
- duration = pulseIn(echoPin, HIGH);
- duration = duration / 59;
- return duration;
- }
- void setup()
- {
- digitalWrite( 12 , LOW );
- _ABVAR_2_L2 = 0;
- _ABVAR_1_L1 = 0;
- digitalWrite( 10 , LOW );
- }
- void loop()
- {
- _ABVAR_1_L1 = ardublockUltrasonicSensorCodeAutoGeneratedReturnCM( 12 , 11 ) ;
- _ABVAR_2_L2 = ardublockUltrasonicSensorCodeAutoGeneratedReturnCM( 10 , 9 ) ;
- if (( ( ( _ABVAR_1_L1 ) < ( 10 ) ) && ( ( _ABVAR_1_L1 ) > ( 0 ) ) && ( ( _ABVAR_2_L2 ) > ( 10 ) ) ))
- {
- tone(8, map ( _ABVAR_1_L1 , 0 , 10 , 392 , 392 ) );
- }
- else
- {
- noTone(8);
- }
- if (( ( ( _ABVAR_2_L2 ) < ( 10 ) ) && ( ( _ABVAR_2_L2 ) > ( 0 ) )&& ( ( _ABVAR_1_L1 ) > ( 10 ) ) ))
- {
- tone(8, map ( _ABVAR_2_L2 , 0 , 10 , 330 , 330 ) );
- }
- else
- {
- noTone(8);
- }
- }
复制代码
|