Freeduino 2009 + Motor Shield + Джойстик + замок
- Войдите на сайт для отправки комментариев
Вс, 09/02/2014 - 17:52
Добрый вечер!
Есть плата Freeduino 2009 http://freeduino.ru/arduino/freeduino2009.html
Motor Shield http://www.freeduino.ru/arduino/mshield.html
4х позиционный джойстик без фиксации отдаленно напоминает http://www.quartz1.com/price/model.php?group=15018&ext=10519
и замок
Необходимо с помощью джойстика переключать замок. Питание подается внешнее на плату Motor Shield 12V
Написал код для проверки замка, все работает
#include <AFMotor.h> AF_DCMotor motor(3); int led = 13; void setup() { pinMode(led, OUTPUT); Serial.begin(9600); } void loop() { motor.setSpeed(255); motor.run(FORWARD); delay(150); motor.run(RELEASE); delay(2); motor.setSpeed(255); motor.run(BACKWARD); delay(150); motor.run(RELEASE); }
Но когда пытаюсь первоначально считать сигнал с джойстика, а потом переключить замок ничего не выходит(((
#include <AFMotor.h> AF_DCMotor motor(3); //int led = 13; void setup() { pinMode(2, INPUT); digitalWrite(2, HIGH); pinMode(3, INPUT); digitalWrite(3, HIGH); pinMode(4, INPUT); digitalWrite(4, HIGH); pinMode(5, INPUT); digitalWrite(5, HIGH); // Serial.begin(9600); // pinMode(led, OUTPUT); // motor.setSpeed(128); } void loop() { if (digitalRead(2) != LOW) { delay(1); Serial.write(87); //Serial.println("UP"); // Serial.println("Motor test!"); motor.setSpeed(255); motor.run(FORWARD); delay(1050); motor.run(RELEASE); delay(2); motor.setSpeed(255); motor.run(BACKWARD); delay(1050); motor.run(RELEASE); delay(2); } }
в коде описано только одно движение джойстика вверх.
Надеюсь на Вашу помощь
Я уже разобрался.