[attiny13]+serwo+timer


Witam Wszystkich :)
Zwracam się do Was z prośbą o pomoc w napisaniu programu, który miałby za zadanie (po naciśnięciu switcha):
1. Obrócić serwo o pewien kąt
2. Załączyć przekaźnik
3. Odmierzyć czas 15 minut
4. Wyłączyć przekaźnik
5. Obrócić serwo w drugą stronę
Do tego wykorzystuję procesor attiny13 i będzie taktowany wewnętrznym rezonatorem 9,6 MHz.

Moje podstawowe pytanie to czy jest to wszystko realne na tym procesorze?
Na co mam zwrócić szczególną uwagę przy programowaniu serwa? Czy częstotliwość ma jakieś znaczenie?

Z góry dziękuję za odpowiedź :)
Pozdrawiam!




Portret użytkownika matrix

Re: [attiny13]+serwo+timer

Nie ma szans bo attiny13 ma tylko jeden timer.

Portret użytkownika Chester

timer

A jakby tym samy timerem sterować serwo i odmierzać czas ? Nie używać config serwo tylko sterować nic na przerwaniach ? Też nie ma takiej możliwości?

Portret użytkownika matrix

Re: [attiny13]+serwo+timer

Zależy jak to zrobisz bo pisząc:

config servo=x 'i tak dalej

Już zabierasz timer i nic z nim nie zrobisz. Jest tylko do użytku dla serw.

Portret użytkownika Chester

Attiny2313

Zaprogramowałem sobie Attiny2313 taki oto programem:

$regfile = "2313def.dat"
$crystal = 800000
 
Config Servos = 1 , Servo1 = Portb.0 , Reload = 10
Config Portb = Output
 
Enable Interrupts
 
Servo(1) = 100
 
 
Dim I As Byte
Do
 For I = 0 To 100
   Servo(1) = I
   Waitms 1000
 Next
 
 For I = 100 To 0 Step -1
   Waitms 1000
 Next
Loop
End

Po włączeniu zasilania serwo obraca się o 180 stopni ale nie zatrzymuję się :( Silnik obraca się ciągle czy to oznacza że serwo zostało uszkodzone?