Принцип работы:
1-когда я нажимаю на кнопку на пине3 - я выбираю скорость вращения вала мотора;
2-потом нажимаю на кнопку на пине4 - мотор начинает движение;
3- когда мотор заканчивает движение, цикл начинается сначала, скорость выбирается, но (проблема) не могу заставить мотор начать движение.
Ну вот и вся проблема. Помогите плиз(((
Код: Выделить всё
// порты для подключения модуля ULN2003 к Arduino
#define in1 8
#define in2 9
#define in3 10
#define in4 11
int count3 = 0;
int count4;
int val3;
int val4;
int x;
int dl; // время задержки между импульсами
void setup() {
pinMode(in1, OUTPUT);
pinMode(in2, OUTPUT);
pinMode(in3, OUTPUT);
pinMode(in4, OUTPUT);
pinMode(3,INPUT);
pinMode(4, INPUT);
Serial.begin(9600);
}
void loop() {
count4=1;
val3=digitalRead(3);
if (val3==HIGH){
count3=count3+1;
delay(500);
Serial.println(count3);
}
if (count3==6){
count3=1;
}
if (count3==1){
dl=30;
analogWrite(A0,1023);
digitalWrite(7,LOW);
}
if (count3==2){
dl=450;
analogWrite(A0, 0);
analogWrite(A1, 1023);
}
if (count3==3){
dl=900;
analogWrite(A1,0);
digitalWrite(5, HIGH);
}
if (count3==4){
dl=1350;
digitalWrite(5,LOW);
digitalWrite(6,HIGH);
}
if (count3==5){
dl=1800;
digitalWrite(6,LOW);
digitalWrite(7,HIGH);
}
val4=digitalRead(4);
if (val4==HIGH){
count4=0;
delay(500);
}
if (count4==0){
for (x; x<=512; x=x+1){
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
digitalWrite(in3, LOW);
digitalWrite(in4, HIGH);
delay(dl);
digitalWrite(in1, HIGH);
digitalWrite(in2, HIGH);
digitalWrite(in3, LOW);
digitalWrite(in4, LOW);
delay(dl);
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);
digitalWrite(in3, HIGH);
digitalWrite(in4, LOW);
delay(dl);
digitalWrite(in1, LOW);
digitalWrite(in2, LOW);
digitalWrite(in3, HIGH);
digitalWrite(in4, HIGH);
delay(dl);
}
}
}