Arduino Uno (CH340) servo motor çalışmıyor


Forum otomatik baş harfleri büyülttüğü için hata vermiş. Her satırın ilk harfini küçültürseniz hata vermeyecektir (sadece "Servo myServo" yazan satır aynı kalsın).
 
Kodlar eski. Bazen kütüphane versiyonlarındaki değişimden dolayı çalışma zamanı hataları da olabiliyor. LRT keşke hangi versiyonu yüklediğini gösterseydi videosunda.
Daha yeni başka bir kod bulup deneyebilirsin. Hemen motorun bozukluğuna yormamak lazım.
 
Son düzenleme:

Hocam yeni kodda da çalışmamış bozuk olma ihtimali var.
 
Hata mesajında "Void" fonksiyonunun yanlış yazıldığını söylüyor.

C++:
include <Servo.h>
Servo sg90;
boolean aci;
#define POT A0
void setup()
{
sg90.attach(3);
}

void loop()
{
aci=map(analogRead(A0),0,1023,0,180);
sg90.write(aci);

}

Not: Servo motorları kontrol etmek için PWM pinlerini kullanmak zorundasınız.

Kodda hata yoktur umarım.

Buraya yazılan kodları direkt kopyala yapıştır yaptıysanız hata vermesi doğal, kodları yazan arkadaşlar dikkatsiz olduğu için ya da bilgisiz, kodları yazdıktan sonra düzelt butonuna basarak tabiri caizse kodun içinden geçmişler.

Bu tür kodları yazarken kod satırı kullanın yoksa düzelt deyince, bozarsınız. Ya hiç düzelt demeyin ya da kod satırı kullanın benim gibi.

Sorun PWM'de de olabilir, LED'i yakmış ama servoyu çalıştırmıyor. Ya servo bozuk ya da PWM'de sorun var. LED'i PWM sinyalleri ile yakmayı deneyin.
 
Son düzenleme:
Açı değerinin "boolean" cinsinden tanımlanması sorun oluşturabilir. "bool" ve "boolean" cinsi değişkenler yalnızca "0" ve "1" değerlerini tutabiliyor diye hatırlıyorum.

Evet hocam, haklısınız. Saat geçti byte ile booleanı karıştırmışım. :d


C++:
include <Servo.h>
Servo sg90;
byte aci;
#define POT A0.
void setup()
{
sg90.attach(3);
}

void loop()
{
aci=map(analogRead(A0),0,1023,0,180);
sg90.write(aci);

}

Kodun düzeltilmiş hali.
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…