Kezdőoldal » Számítástechnika » Programozás » Hogyan lehet ezt így arduino-b...

Hogyan lehet ezt így arduino-ban lefuttatni? (sketch van)

Figyelt kérdés

Azt akarom hogy a sketchemben a szervók mozgása alatt mindig folyamatosan írja ki a szenzorok értékét az lcd.

Itt van:


#include <Servo.h>

#include <LiquidCrystal.h>

Servo servo1;

Servo servo2;

Servo servo3;

Servo servo4;


int pos=90;

int pos1=90;


#define echoPin 3

#define trigPin 2


LiquidCrystal lcd(13, 12, 11, 10, 9, 8);

int maximumRange = 200;

int minimumRange = 0;

long duration, distance;


int BalLDR = 0;

int JobbLDR = 1;

int balfenyero;

int jobbfenyero;


void setup()


{

servo1.attach(7);

servo2.attach(6);

servo3.attach(5);

servo4.attach(4);

static int v=90;

static int v1=60;

static int v2=120;

servo1.write(v);

servo2.write(v);

servo3.write(v);

servo4.write(v);

Serial.begin (9600);

pinMode(trigPin, OUTPUT);

pinMode(echoPin, INPUT);

lcd.begin(16, 2);


}


void loop()

{


elore();

delay(500);

hatra();

delay(500);

allas();

delay(500);

servo();

delay(500);

servoH();

delay(500);

vege();

delay(500);

void ut2();

delay(500);

}


void elore()

{

servo2.write(60);

servo3.write(60);

delay(500);

}


void hatra()

{

servo3.write(90);


for(pos = 90; pos < 125; pos += 1)

{


servo4.write(pos);

delay(20);



for(pos1 = 90; pos1 < 115; pos1 += 1)



servo1.write(pos1);

delay(20);

}

}

void allas()

{

for(pos = 60; pos < 90; pos += 1)

{

servo2.write(pos);

servo3.write(pos);

delay(20);

}


delay(500);

}


void servo(){


static int v2=110;

servo2.write(v2);

servo3.write(v2);

delay(500);

}


void servoH(){


for(pos = 90; pos > 65; pos -= 1)

{


servo4.write(pos);

delay(20);


for(pos1 = 90; pos1 > 55; pos1 -= 1)



servo1.write(pos1);

delay(20);

}

}

void vege(){

for(pos = 110; pos > 90; pos -= 1)

{

servo2.write(pos);

servo3.write(pos);

delay(20);

}

}


void ut2()

{



{

digitalWrite(trigPin, LOW);

delayMicroseconds(2);


digitalWrite(trigPin, HIGH);

delayMicroseconds(10);


digitalWrite(trigPin, LOW);

duration = pulseIn(echoPin, HIGH);



distance = duration/58.2;


if (distance >= maximumRange || distance <= minimumRange)

{


Serial.println("-1");

}


else {


Serial.println(distance);


}

delay(50);

}

{

balfenyero = analogRead(BalLDR);

jobbfenyero = analogRead(JobbLDR);

Serial.print("Bal: ");

Serial.print(balfenyero, DEC);

Serial.print(", Jobb: ");

Serial.println( jobbfenyero,DEC);

delay(500);

}


lcd.print(distance);

lcd.print(",");

lcd.print("j.");

lcd.print(jobbfenyero,DEC);

lcd.print("B.");

lcd.print(balfenyero,DEC);

lcd.print(",");



}



2014. jún. 1. 12:21
Sajnos még nem érkezett válasz a kérdésre.
Te lehetsz az első, aki segít a kérdezőnek!

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!