Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 12 mar 2025, o 11:01


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 8 ] 
Autor Wiadomość
PostNapisane: 3 wrz 2013, o 16:10 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 03 sie 2013
Posty: 87
Pomógł: 0

Witam wszystkich

Proszę o podpowiedź odnośnie Timerów w ATtiny24A (16Mhz zewnętrzny kwarc)
Zrobiłem jeden programowy na T0, który działa poprawnie ale także potrzebuje drugi do generowanie częstotliwości T1 na pinie PA5 (OC1B)

Podejrzewam że błąd jest w ustawieniach trybu CTC - nie wiem jak odczytać to z noty (WGM1 [3:0] , mode 4, 0100)

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Jeżeli ktoś mógłby mi wytłumaczyć jak odczytać te ustawienia ew. co jest w tym kodzie nie tak, to wielkie dzięki.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 wrz 2013, o 16:58 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 05 sie 2013
Posty: 1154
Lokalizacja: Lublin / Kraków
Pomógł: 72

TCCR1A |= (1<<WGM01); //CTC

Powinno być chyba WGM11 bo to Timer1 a nie Timer0



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 wrz 2013, o 17:09 
Offline
Użytkownik

Dołączył(a): 12 mar 2013
Posty: 34
Pomógł: 0

Jak już kolega wspomniał oraz można przeczytać w datashitcie, w tabeli 12-5
na stronie 110

Żeby uzyskać CTC z TOP OCR1A używany bitów WGM 13:10, co oznacza WGM13, WGM12 itd.
Należy je ustawić : 0100 czyli (1<<WGM12)

Oraz CTC z TOP ICR1 1100, czyli (1<<WGM13)|(1<<WGM12)

_________________
/*Animus aeger semper errat*/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 wrz 2013, o 17:14 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 03 sie 2013
Posty: 87
Pomógł: 0

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


... i zamiast około 32000 Hz mam 122,3 Hz



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 wrz 2013, o 18:41 
Offline
Użytkownik

Dołączył(a): 12 mar 2013
Posty: 34
Pomógł: 0

Noto ja nie wiem :(
Może ten link okaże się pomocny: Link

_________________
/*Animus aeger semper errat*/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 wrz 2013, o 20:00 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 05 sie 2013
Posty: 1154
Lokalizacja: Lublin / Kraków
Pomógł: 72

mickeu napisał(a):
.. i zamiast około 32000 Hz mam 122,3 Hz


A to ma być w końcu na PA5 czy na PA6 to 32kHz ?
Bo to:
TCCR1A |= (1<<COM1A0); //pin8 ctc dotyczy PA6 czyli pinu nr 7

bit COM1B0 dotyczy pinu 8 czyli PA5.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 wrz 2013, o 09:57 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 03 sie 2013
Posty: 87
Pomógł: 0

TCCR1A |= (1<<COM1B0); - PORTA5

sprawdzilem chyba wszystkei możliwe kombinacje i nie dziala jak powinien, musza sprawdzić na innym układzie. Na chwile obecną poprzestałem na T0 programowym.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 wrz 2013, o 11:18 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 03 sie 2013
Posty: 87
Pomógł: 0

Zadziałało z generowaniem przerwania:

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 8 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 3 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO