AT91SAM7S64 i MAINF
Masz problem? Zapytaj na forum elektroda.pl
From: "EW" <asdfg2_at_nospam_poczta.onet.pl>
Subject: AT91SAM7S64 i MAINF
Date: Mon, 10 Oct 2005 12:51:16 +0200
Mam AT91SAM7S64 z kwarcem 18432000Hz. Korzystając z rejestru CKGR_MCFR i
MAINF obliczam częstotliwość zegara(liczba taktów w ciągu 16 taktów "slow
clock") czyli
Fosc = 32768/16*MAINF. Wychodzi 19900000Hz.
Nie mam już pomysłów czemu tak. Co ciekawe, jeżeli na podstawie tego wyniku
obliczę dzielnik dla UARTa to odbieram bajty z błędami, natomiast jeżeli
obliczę dla 18,432MHz jest ok. Czyli albo robię błąd przy liczeniu tej cz.,
albo slow clock jest tak niedokładny? Może ktoś mi podpowie.
Artur
From: Adam Dybkowski <adybkows123_at_nospam_amwaw.edu.pl>
Subject: Re: AT91SAM7S64 i MAINF
Date: Mon, 10 Oct 2005 22:07:08 +0200
EW wrote:
Mam AT91SAM7S64 z kwarcem 18432000Hz. Korzystając z rejestru CKGR_MCFR i
MAINF obliczam częstotliwość zegara(liczba taktów w ciągu 16 taktów "slow
clock") czyli
Fosc = 32768/16*MAINF. Wychodzi 19900000Hz.
Nie mam już pomysłów czemu tak.
SlowClock nie bierze się z powietrza ;-) tylko z generatora RC, który ma
prawo pływać w dość szerokim zakresie (zobacz w PDFie). Jeżeli proc
popędzasz kwarcem to korzystając z powyższej metody możesz conajwyżej
wyliczyć, z jaką częstotliwością tyka SlowClock (przyjmując stałą
częstotliwość kwarcu). Ale i tak do równego taktowania USB (48MHz)
lepszy jest kwarc 12 MHz niż 18,432 MHz.
BTW: Znacznie lepiej rozwiązali to w AT91RM9200, gdzie do generacji
32kHz podłącza się drugi, dedykowany kwarc. I wtedy można rzeczywiście
sobie wyliczyć częstotliwość głównego kwarcu. :)
--
Adam Dybkowski
http://www.amwaw.edu.pl/~adybkows/
Uwaga: przed wysłaniem do mnie maila usuń "123" z adresu.