2

I am trying to control a continuous servo (MG996R) with an RF remote, but it's not working; the servo just spins in one direction.

I am new to Arduino so I don't really know if the code is correct.

This is my code:

#include <Servo.h>

Servo servothumb;
Servo servoindex;
Servo servomiddle; Servo servoring; Servo servopinky;

void setup() { pinMode(2,INPUT); pinMode(3,INPUT); pinMode(4,INPUT); pinMode(5,INPUT); Serial.begin(9600); // setting baud rate Serial.println(" Data 4 Ch Remote Control"); servothumb.attach(9); servoindex.attach(10); servopinky.attach(11); servoring.attach(12); servomiddle.attach(13); }

void loop() { if (digitalRead(2) == HIGH) { // Button B pressed Serial.println("B"); servothumb.write(90); servoindex.write(90); servopinky.write(90); servoring.write(90); servomiddle.write(90); } else { servothumb.write(90); servoindex.write(90); servopinky.write(90); servoring.write(90); servomiddle.write(90); }

if (digitalRead(3) == HIGH) { // Button D pressed Serial.println("D"); } if (digitalRead(4) == HIGH) { // Button A pressed Serial.println("A"); servothumb.write(0); servoindex.write(0); servopinky.write(0); servoring.write(0); servomiddle.write(0); } else { servothumb.write(90); servoindex.write(90); servopinky.write(90); servoring.write(90); servomiddle.write(90); } if (digitalRead(5)== HIGH) { // Button C pressed Serial.println("C"); servothumb.write(180); servoindex.write(180); servopinky.write(180); servoring.write(180); servomiddle.write(180); } else { servothumb.write(90); servoindex.write(90); servopinky.write(90); servoring.write(90); servomiddle.write(90); } }

ocrdu
  • 1,795
  • 3
  • 12
  • 24
James Lim
  • 21
  • 1

0 Answers0