本帖最后由 VMAX 于 2012-10-21 20:02 编辑
发帖时已看到 191zzy的倒车雷达,不过我还是要发,因为我这个不需要库{:soso_e141:} ,
声光报警 20cm - 3cm, 之前我刚做了anduino的LED与BEEP实验,超声波是偶第3个实验,我的anduino所学全搁这个了,拿去吧{:soso_e113:}。以后还有433M的无线数传,等好了也发给大家! 这次没图,太简单了,不好意思发图
- int beeppin = 8;
- int ledpin=9;
- int echo= 6;
- int trig=7;
- unsigned long time_echo=0; // record the pulse width by sensor returns
- unsigned long distance =0; // record the distance value;
- void setup(){
- Serial.begin(9600);
- pinMode(beeppin,OUTPUT);
- pinMode(ledpin,OUTPUT);
- pinMode(echo,INPUT);
- pinMode(trig,OUTPUT);
- }
- void loop(){
- digitalWrite(trig,HIGH); //send pulse
- delayMicroseconds(80); //set pulse width with 50us(>10us)
- digitalWrite(trig,LOW); //stop send
-
- time_echo = pulseIn(echo,HIGH); //get return pulse width
- if((time_echo<60000)&&(time_echo>1)) //valid scope 1-60000
- {
- distance = (time_echo*34/100)/2; //mm
- if(distance < 200)
- {
- if(distance<30){
- digitalWrite(beeppin,HIGH);
- digitalWrite(ledpin,HIGH);
- }else{
- alert(distance/2);
- }
- }
- Serial.print(distance,DEC);
- Serial.println('\n');
-
- }
- delay(100);
- }
- void alert(unsigned i){
- digitalWrite(beeppin,HIGH);
- digitalWrite(ledpin,HIGH);
- delay(i);
- digitalWrite(beeppin,LOW);
- digitalWrite(ledpin,LOW);
- delay(i);
- }
复制代码 |