V čem je problém, nemůžu přejit jak zapojil ovládaní motoru na dvě relátka - chod dopředu a dozadu ,dik za každou radu.
Kód: Vybrat vše
#include <SoftwareSerial.h>
#include<PWMServo.h>
SoftwareSerial bt(2,3); // bt(rx,tx)
PWMServo myservo;
bool posledni=false;
int a[4]; //proměná pro příkazy
void setup() {
myservo.attach(9);
Serial.begin(9600);
bt.begin(9600);
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
pinMode(12,OUTPUT);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(12,LOW);
}
void loop() {
if (bt.available()>4)
{
a[0]=bt.read(); // směr
a[1]=bt.read(); // rychlost
a[2]=bt.read(); // úhel zatáčení
a[3]=bt.read(); // zříkazy pro troubení, světla a tlačítka A,B,C
myservo.write(a[2]);
Serial.print(a[0]);
Serial.print(" ");
Serial.print(a[1]);
Serial.print(" ");
Serial.print(a[2]);
Serial.print(" ");
Serial.print(a[3]);
Serial.println(" ");
posledni=false;
}
if (bt.available()<1)
{
myservo.write(93);
digitalWrite(7,HIGH);
digitalWrite(6,HIGH);
if(posledni==false)
{
Serial.print("BT modul neni pripojen!");
Serial.println("zkontroluj pripojeni");
posledni=true;
}
}
if(a[0]==241)
{
digitalWrite(7,LOW);
}
else
{
digitalWrite(7,HIGH);
}
if(a[0]==242)
{
digitalWrite(6,LOW);
}
else
{
digitalWrite(6,HIGH);
}
if(a[0]==243)
{
digitalWrite(12,LOW);
}
else
{
digitalWrite(12,HIGH);
}
}