arkadaşlar arduino uno ile dc motorun yön ve hızını kontrol edip bunu lcd ekrana yazırmak istiyorum. Motor sürücüm L293D. Butonlara basınca yön değişecek ve led devreye gircek.Aşağıdaki kodu inceleyip fikir verebilirmisiniz? bu işte yeniyim,kodu bu şekilde yazdım proteusta çalıştı ancak birleştirmede çalıştıramadım sorun ne olabilir? veya elinizde hazır kodlar varsa paylaşabilirmisiniz? #include <liquidcrystal.h>
LiquidCrystal lcd(7,8,9,10,11,12);
int enablePin=6;
int in1Pin=2;
int in2Pin=3;
int btn1=4;
int btn2=5;
int potPin=A0;
int val;
int led1Pin=A1;
int led2Pin=A2;
void setup () {
lcd.begin(16,2);
pinMode(in1Pin,OUTPUT);
pinMode(in2Pin,OUTPUT);
pinMode(enablePin,OUTPUT);
pinMode(btn1,INPUT_PULLUP);
pinMode(btn2,INPUT_PULLUP);
pinMode(potPin,OUTPUT);
pinMode(led1Pin,OUTPUT);
pinMode(led2Pin,OUTPUT);
}
void loop() {
val=analogRead(potPin);
val=map(val,0,1023,0,255);
analogWrite(6,val);
delay(100);
lcd.setCursor(0,0);
lcd.print(“motor hizi”);
lcd.setCursor(0,1);
lcd.print(val);
int btn2=digitalRead(8);
int btn1=digitalRead(7);
if (btn2==HIGH && (btn2 ^ btn1) )
{
digitalWrite(10, LOW); // motor saat yönü tersine döner
digitalWrite(9, HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,LOW);
analogWrite(6,val);
}
else if (btn1==HIGH && (btn2 ^ btn1) )
{
digitalWrite(10, HIGH);
digitalWrite(9, LOW);
digitalWrite(A2,LOW);
digitalWrite(A1,HIGH);
analogWrite(6,val);
}
else
{
digitalWrite(10, LOW);
digitalWrite(9, LOW);
digitalWrite(A2,LOW);
digitalWrite(A1,LOW);
analogWrite(6,val);
}
if(val==0) {
digitalWrite(10, LOW);
digitalWrite(9, LOW);
digitalWrite(A2,LOW);
digitalWrite(A1,LOW);
}
}
</liquidcrystal.h>