• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Przyrost wartości
#1
Witam.
Potrzebuję pomocy z raczej prostą rzeczą ale nie mogę nigdzie tego znaleźć
Poniżej kod:

Kod:
#include <Servo.h>

Servo serwomechanizm;
int pozycja = 0;
int zmiana = 6;
int y = 10;
int x = -10;

void setup()
{
pinMode (2, INPUT_PULLUP);
pinMode (3, INPUT_PULLUP);
serwomechanizm.attach(9);
serwomechanizm.write(0);
}

void loop()
{
if (digitalRead(2) == LOW){
serwomechanizm.write(y);

}
 if (digitalRead(3) ==LOW){
   serwomechanizm.write(x);
 }
}



Chodzi o to żeby serwo zmieniało pozycje co 10 po każdorazowym przyciśnięciu przycisku
lub co -10 zależnie od przycisku.
Mam nadzieję, że to co napisałem jest jasne.
Z góry dziękuję
 
Odpowiedź
#2
proszę

Kod:
#include <Servo.h>

Servo serwomechanizm;
int pozycja = 0;
byte state = LOW;

void setup()
{
pinMode (2, INPUT_PULLUP);
pinMode (3, INPUT_PULLUP);
serwomechanizm.attach(9);
serwomechanizm.write(pozycja);
}

void loop(){

if (digitalRead(2) == LOW and state == LOW ){
  state = HIGH;
  pozycja = pozycja + 10;}
if (digitalRead(3) == LOW and state == LOW ){
  state = HIGH;
  pozycja = pozycja - 10;}

  if ( pozycja > 180 )pozycja = 180 ;
  if ( pozycja < 0 )pozycja = 0 ;
  
if (digitalRead(2) == HIGH and digitalRead(3) == HIGH)state = LOW;
serwomechanizm.write(pozycja);


}
Ważne aby robić co się lubi albo lubić co się robi .
Arduino UNO, TINY, PRO MINI
Pomoc nagradzamy punktami reputacji Wink
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości