Attiny 2313 - problem z Timer1

To forum jest dla wszystkich pasjonatów mikrokontrolerów AVR Atmela. Wymiana doświadczeń i pomoc dla początkujących w pisaniu programów zarówno w C, Asemblerze jak i BASCOM. Zapraszam znawców tematu, aby pomogli wszystkim początkującym!
ODPOWIEDZ
Nick_2
Użytkownik
Posty: 105
Rejestracja: 09 maja 2007, 8:11

Attiny 2313 - problem z Timer1

Post autor: Nick_2 » 27 mar 2008, 17:00

Witam
Ostatnio przeglądaja cykl oslej łączki dla mikroprocesorów AVR znalezłem bardzo ciekawy programik wykorzystujący Timer1 w trybie PWM ktory zmienia stan końcówki PB.3. Najprostsy listing programu zamieszczam poniżej
$regfile "attiny2313.dat"
$crystal = 4000000
Config Timer1 = Timer , Prescale = 256 , Compare A = Toggle
Dla procesora AT90S2313 w teorii powinno to działać ale jak załadowałem programik na Attiny2313 nic nie chce ruszać. Podłaczyłem oscyloskop pod PB.3 i wydaje mi sie ze końcówka ta jest w stanie trzecim, tj wysokiej impedancji. Dlaczego ten programik nie chce działąc? Przejrzałem karte katalogową attiny i nic konkretnego co mogłoby wskazac na przczyne tego błedu nie znalazłem

Awatar użytkownika
Tranzystor
Użytkownik
Posty: 889
Rejestracja: 28 sie 2005, 19:19
Lokalizacja: Świętochłowice
Kontakt:

Post autor: Tranzystor » 27 mar 2008, 17:39

Kolego, według mnie ten program nie jest dobry.
Spróbuj tak:

Kod: Zaznacz cały

$regfile = "attiny2313.dat"
$crystal = 4000000
Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up, Prescale = 1

Pwm1a = 200     'przykładowa wartość

Do     'pusta pętla
Loop
End
Po pierwsze źle skonfigurowany Timer1, a po drugie co on ma Ci robić skoro nie wpisałeś wartości PWM :?:

Pozdrawiam ;)

Awatar użytkownika
RcTomek
Moderator
Posty: 243
Rejestracja: 27 wrz 2007, 21:15
Lokalizacja: Głogów / Wrocław

Post autor: RcTomek » 27 mar 2008, 17:52

-> Nick_2

Musisz do tego skonfigurować PB.3 jako wyjście, bo domyślnie DDRB=0 i PORTB=0 - końcówki są w stanie wysokiej impedancji.

Awatar użytkownika
Tranzystor
Użytkownik
Posty: 889
Rejestracja: 28 sie 2005, 19:19
Lokalizacja: Świętochłowice
Kontakt:

Post autor: Tranzystor » 28 mar 2008, 6:43

Też dobre spostrzeżenie, ale wydaje mi się, że bez tego PWM również, będzie poprawnie działał.

Pozdrawiam ;)

Nick_2
Użytkownik
Posty: 105
Rejestracja: 09 maja 2007, 8:11

Post autor: Nick_2 » 28 mar 2008, 17:01

Dzieki Ddevil po skonfigurowaniu PB.3 jako wyjścia wszystko działa

ODPOWIEDZ