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



Teraz jest 24 lut 2025, o 22:17


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 5 ] 
Autor Wiadomość
PostNapisane: 1 kwi 2017, o 21:15 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 lis 2015
Posty: 219
Pomógł: 20

Cześć.

Mam prośbę o wytłumaczenie rejestrów timerów. Akurat mam attiny85 i ćwiczę na niej timery. Chcę aby na wyjściu OC0A generować sygnał PWM. Wg tabeli są dwa tryby fast PWM: mode 3 i mode 7. Mam pytania:

Tryb 3 liczy do FF po czym się przekręca, a stan na pinie OC0A zmienia się przy zrównaniu licznika z OCR0A? (w zależności od bitów COM0A0, COM0A1)

A tryb 7? liczy do wartości jaką wpiszę do OCRA? ale kiedy zmienia się stan na pinie??

Obrazek

pozdrawiam :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 kwi 2017, o 22:03 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 sty 2013
Posty: 1760
Pomógł: 196

Witam
jez2000 napisał(a):
A tryb 7? liczy do wartości jaką wpiszę do OCRA? ale kiedy zmienia się stan na pinie??

Tutaj wpisujesz OCRA i OCRB - zmienia się po doliczeniu do OCRB; możesz aktywować tylko wyjście OC0B.

Pozdr.


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 kwi 2017, o 22:25 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 lis 2015
Posty: 219
Pomógł: 20

Ok. A skąd to waidomo? tzn wiem ze z dokumentacji ale czy to wynika z jakiegoś schamat, opisu czy z tabeli którą wysłałem z pierwszym poście?. Czyli w tym trybie mogę zmieniać również częstotliwość generowanego sygnału? Licznik liczy do OCRxA ale przy zrównaniu z OCRxB pin zmienia stan?
Jeżeli chcę użyć pinu OC0A w trybie Fast PWM to tylko tryb 3?

Jeszcze jedno pytanie:
W tabeli, trzy ostatnie kolumny co oznaczają? - piszę jak ja to pojmuję i nie pojmuję jednoczesnie :roll:
TOP - do jakiej wartości liczy licznik? - np do FF lub jak w trybie 7 do wartości wpisanej do OCR0A
Update of OCRx at - tlumacze to jakby "aktualizacja rejestr OCR0 podczas" - nie rozumię, myślalem że do OCR0 wpisuję wartość i ją ustalam, sam na nią wpływam a nie że coś mi ją aktualizuje.
TOV Flag - ustawienie flagi przerwania? - tu też mam problem ze zrozumieniem. Dla trybu normal lub ctc to ustawia flagę i program wykonuje procedurę obsługi przerwania, ale w trybie np fast PWM to co się dzieje?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 kwi 2017, o 23:44 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 sty 2013
Posty: 1760
Pomógł: 196

Witam
jez2000 napisał(a):
Ok. A skąd to waidomo?

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

podpiąłem oscyloskop i porównałem ;) - co do flag; dopóki czegoś nie potrzebuję to nie wnikam, więc niestety nie znam odpowiedzi.
Z tabelki można wywnioskować kiedy wystawiana jest flaga przepełnienia, lecz nie chciałbym wprowadzić w błąd "gdybając i chybając".
...a testowałem na ATtiny13, lecz to to samo.

Pozdr.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 2 kwi 2017, o 00:32 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27359
Lokalizacja: Szczecin
Pomógł: 1042

jez2000 napisał(a):
TOP - do jakiej wartości liczy licznik? - np do FF lub jak w trybie 7 do wartości wpisanej do OCR0A

No a jak mogłoby być inaczej ?

jez2000 napisał(a):
Update of OCRx at - tlumacze to jakby "aktualizacja rejestr OCR0 podczas" - nie rozumię, myślalem że do OCR0 wpisuję wartość i ją ustalam, sam na nią wpływam a nie że coś mi ją aktualizuje.

Trzeba dokładniej poczytać notę PDF, rejestry OCRx są podwójnie buforowane dla niektórych trybów - głównie dla PWM stąd MUSI być moment kiedy następuje ich aktualizacja po twojej zmianie. Nie może ona nastąpić w trakcie trwania całego cyklu zliczania licznika żeby nie było zakłóceń "po drodze". Tu masz dokładniejsze wyjaśnienie:
Obrazek

jez2000 napisał(a):
TOV Flag - ustawienie flagi przerwania? - tu też mam problem ze zrozumieniem. Dla trybu normal lub ctc to ustawia flagę i program wykonuje procedurę obsługi przerwania, ale w trybie np fast PWM to co się dzieje?

No to jest dokładnie moment ustawiania flagi przerwania przepełnienia. Jak to co się dzieje w trybie Fast PWM ? Też jest ustawiana bo dlaczego miałaby nie być ? W trakcie działania PWM też można korzystać z przerwania od przepełnienia - co w tym dziwnego miałoby być ? Pomijam już fakt, że ja nie rozumiem tej części twojego zdania które zaznaczyłem na czerwono


Autor postu otrzymał pochwałę

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



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: 5 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 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:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO