To co podałem wcześniej opóźnia na bardzo krótko (rzędu ms). To co próbowałeś nie zadziałało z 3 powodów:
- i jest w warunkach przycisków, a po starcie program wcale nie wymaga aby jakikolwiek był wciśnięty bo ustawia serwa na pozycje środkowe
- jeśli wszystkie klawisze byłyby wciśnięte to po spełnieniu warunku i jest zwiększone i w następnym warunku ma odpowiednią wartość
- i tworzysz już w warunku i zawsze a taką samą wartość w każdym obiegu pętli
Spróbuj jak poniżej. Dołożone są dodatkowe zmienne. Po starcie są zerami, a serwa zostaną uruchomione jak będą miały wartość różną od zera. W cyklicznym przerwaniu z pomocą dodatkowego licznika są one ustawiane po pewnym czasie od startu programu. Raz ustawione nie są już zmieniane.
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
------------------------ [ Dodano po: 2 pikosekundach ]Panicz74 napisał(a):
A jest jakaś możliwość aby zmniejszyć prędkość serw?
Tak jeśli przykładowo do zmiennej servo1 nie przypiszesz od razu docelowej liczby tylko z stopniowo będziesz ją zwiększał, aż do wymaganej wartości.