AT91SAM7S64 i MAINF



Masz problem? Zapytaj na forum elektroda.pl

Poprzedni Następny
Wiadomość
Spis treści
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



Poprzedni Następny
Wiadomość
Spis treści
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.