Arduino的多个超声波测距与processing的音频之间互动的问题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
我想做一个包含3
个超声波测距的Arduino程序,然后每个超声波到一定距离后,可以发出不同的声音,这是Arduino代码:
intsrfPin[] = {2,4,6}; //定义srfPin发送引脚为2
int z; //定义全局变量z
int Distance; //定义距离寄存器存放测试距离数据
int duration; //定义脉宽寄存器
int data; //定义串口接收寄存器
int ultrasonic(int distance){
for(int i=0;i<3;i++){
digitalWrite(srfPin, LOW); // 确保在发送脉冲前保持该引脚为低电平
delayMicroseconds(2); //保持低电平2ms
digitalWrite(srfPin, HIGH); // 发送一个高脉冲开始测距 delayMicroseconds(10); //保持10ms
digitalWrite(srfPin, LOW); // 在等待脉冲返回来之前发送低电平
pinMode(srfPin, INPUT); //调整超声波引脚为输入 duration = pulseIn(srfPin, HIGH); // 从SRF05回波脉冲在读取在微秒 distance = duration/58; // 除以58就是我们要得到的厘米数
}
return distance; //返回厘米数
}
void setup(){
Serial.begin(9600); //打开串口并设置通信波特率为9600
pinMode(13,OUTPUT); //定义I1接口
}
void loop(){ //主程序开始
Distance = ultrasonic(z); //读取超声波值Serial.write(byte(Distance));
delay(100);
}
那么,如何写个processing代码来使里面有声音并且每个超声波测距对应不同的音频呢?