Skocz do zawartości

[Bascom] Attiny26 PWM linefollower


angelofdeath

Pomocna odpowiedź

Witam.

Właśnie buduję robota linefollower. Robot jest skończony, tylko trzeba go zaprogramować, i tutaj pojawia się problem, otóż nie mogę skonfigurować timera:

$regfile = "attiny26.dat"
$crystal = 1000000

Config Timer1 = Pwm , Prescale = 64 , Pwm = 8 ' unknown config parameter [PWM]
Compare A = Clear Down Compare B = Clear Down


Config Porta = &B00000111
Config Portb = Output

Set Porta.4
Set Porta.1
Reset Porta.2
Reset Porta.0

Do

If Pinb.4 = 1 Then Pwm3b = 100 ' assignment error
Elseif Pinb.5 = 1 Then Pwm3b = 150
Elseif Pinb.5 = 1 And Pinb.4 = 1 Then Pwm3b = 200
End If

Loop

End

jest to program do przetestowania odpowiedniego PWM do moich silników. Niestety wyskakują błędy które zamieściłem obok linijki w której się pojawiają.

__________

Komentarz dodany przez: Nawyk

Używaj znaczników code

Link do komentarza
Share on other sites

Cóż, Aniele Śmierci, robot widocznie nie jest skończony, choć jak piszesz "tylko trzeba go zaprogramować" 😐 Zanim to zrobisz, zadaj sobie jednak trud obejrzenia wnętrza Twojego procesora opisanego np. w jego karcie katalogowej. Wybrałeś go z jakiegoś szczególnego powodu czy było to na chybił trafił?

Tiny26 ma szczególny wśród AVR Timer 1 - bardzo fajny ale jednak inny niż typowy. Po pierwsze jest 8-bitowy więc nie możesz wybierać różnej długości okresu zliczania inaczej jak przez wpis do OCR1C - parametr "PWM" podający długość w bitach jest tu oczywiście nie na miejscu i nic dziwnego, że kompilator się czepia.

Nie masz też tam żadnego timera 3, więc próba wpisania czegoś do pwm3b nie może się udać. Kopiowałeś skądś kod nie pracujący na tiny26 - to raczej widać, ale czy choć raz go przeczytałeś i zrozumiałeś?

Radzę jednak, posiłkując się danymi katalogowymi używać wprost rejestrów związanych z timerem zamiast tych dziwnych CONFIG. Spróbuj przeczytać to:

http://www.elektroda.pl/rtvforum/topic88939.html

Link do komentarza
Share on other sites

Oczywiście. Pokaż co już zrobiłeś i opisz czego się spodziewasz, zapodaj kilka linijek kodu ustawiającego ten nieszczęsny timer z komentarzami jak rozumiesz działanie bitów i dlaczego tak a nie inaczej je ustawiasz, wrzuć schemat bo niby skąd mamy wiedzieć jak to podłączyłeś i wtedy możemy porozmawiać o tym co zrobiłeś źle. Gotowca nie będzie.

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.