stm32f407 ile Servo motor kontrol

Kullanılan servo motor: Power HD Servo HD-2360A5v

6V Adaptör ile motoru besleyin(ben 5v ile besledim),

stm32f4’ün GND’si ile adaptörün GND’sini birleştirinmotorun besleme pinlerini adaptöre bağlayın,

motorun data pinini stm’in PC6(pwm ayarladığımız) pinine bağlayın

Kodlar: https://github.com/gokhanBeken/stm32f407_pwm_servo

Video:

 

6 thoughts on “stm32f407 ile Servo motor kontrol

  1. Keil ile derlerken bu hatalari alıyorum sebebi nedir?

    main.c(27): error: #268: declaration may not appear after executable statement in block
    unsigned int sayac1=0,sayac2=0,sayac3=0,sayac4=0;
    main.c(28): error: #268: declaration may not appear after executable statement in block
    char durum1=1,durum2=1,durum3=1,durum4=1; //1=artma, 0=eksilme
    main.c(30): error: #268: declaration may not appear after executable statement in block
    unsigned int aci=0;
    main.c(31): error: #268: declaration may not appear after executable statement in block
    unsigned int sifirKonumu=500;
    main.c(32): error: #268: declaration may not appear after executable statement in block
    unsigned int pwm=0;
    main.c(27): warning: #177-D: variable “sayac1” was declared but never referenced
    unsigned int sayac1=0,sayac2=0,sayac3=0,sayac4=0;
    main.c(27): warning: #177-D: variable “sayac2” was declared but never referenced
    unsigned int sayac1=0,sayac2=0,sayac3=0,sayac4=0;
    main.c(27): warning: #177-D: variable “sayac3” was declared but never referenced
    unsigned int sayac1=0,sayac2=0,sayac3=0,sayac4=0;
    main.c(27): warning: #177-D: variable “sayac4” was declared but never referenced
    unsigned int sayac1=0,sayac2=0,sayac3=0,sayac4=0;
    main.c(28): warning: #177-D: variable “durum2” was declared but never referenced
    char durum1=1,durum2=1,durum3=1,durum4=1; //1=artma, 0=eksilme
    main.c(28): warning: #177-D: variable “durum3” was declared but never referenced
    char durum1=1,durum2=1,durum3=1,durum4=1; //1=artma, 0=eksilme
    main.c(28): warning: #177-D: variable “durum4” was declared but never referenced
    char durum1=1,durum2=1,durum3=1,durum4=1; //1=artma, 0=eksilme

  2. Projeyi Emblocks IDE ve GCC derleyicisi ile yaptım, keil ile denemedim. Hem IDE hem de derleyici ücretsiz, hem de çok memnunum, tavsiye ederim.
    Müsait olduğum bir zaman projeyi keil’e adapte edip göndermeye çalışırım.

  3. hocam servonun datasheetine baktım da 4,8 ile 7,2 volt ve 500-900mA değerleri arasında besleme istiyor.siz hangi uçlu adaptörü kullandınız?ayrıca pwm ucunu karta, besleme ucu direk adaptöre bağlanıyor.adaptörün gndsi karta bağlanıyorsa servonun gnd sini nereye bağlıyoruz?bitişiğindeki öbür gnd ye mi?

  4. merhaba hocam micro c ile arm programlamayla uğraşıyorum ve bir türlü klavyeden değer almayı yapamadım yardımcı olursanız sevinirim

    • Klavyeler çeşit çeşit, seri port mu, PS/2 mi, usb mi? Hepsinin protokolü farklı. Bu konuda hazır örnekler bulabilirsiniz, kendiniz yazmak istiyorsanız protokollerini araştırın ama o kadar kasmaya gerek yok bence.

Bir Cevap Yazın