sygnal zegarowy do AFIO w STM32

Czesc. chcialbym Was poprosic o pomoc w zrozumieniu pewnych ustawien w STM32. Czytam sobie na temat fukcji alternatywnych wyprowadzen i nie moge doszukac sie jakiegos przyzwoitego opisu odnosnie sygnalu zegarowego tzw. funkcji alternatynej i takiego sygnalu RCC_APB2Periph_AFIO? Czy to jest tak ze wlaczenie np TIM3 prowadzi do koniecznosci wlaczenia sygnalu zegarowego do samego Timera oraz wlasnie tej funkcji alternatywnej i czy samo GIPO tez trzeba uaktywnic? W RM008 patrzac na tzw. Clock tree nie widac tego sygnalu RCC_APB2Periph_AFIO, wiec tak na prawde co on taktuje?

Reply to
slawek7
Loading thread data ...

W dniu 2012-03-19 08:04, slawek7 pisze:

Ten zegar zasila jakby blok funkcji alternatywnych pinów GPIO :). Sam tego do końca nie rozumiem i tym bardziej nie potrafię wytłumaczyć, ale żeby używać "alternatywnych funkcji pinów" (czyli nie jako GPIO, ale np. wyjście PWM, wejścia zegarowe, Tx, Rx, SDA, SCL, MISO, MOSI itp itd) to powinieneś włączyć ten zegar. Więc odpowiadając na Twoje pytania:

- jeśli chcesz używać timera 3, ale tylko "wewnętrznie" (taktowany z proca, nie wyprowadza żadnego PWMa czy czegoś na zewnątrz, to nie musisz tego włączać.

- jeśli chcesz użyć Timera X, ale chcesz używać jego sygnałów na zewnątrz (CLK, Caputre, PWM...), to MUSUISZ włączyć ten zegar.

- czy musisz włączyć zegar do GPIO, na którym jest ten pin - nie wiem, nie orientuję się (możesz sprawdzić), ale obawiam się, że tak, gdyż konfigurację na funkcję alternatywną wykonujesz w rejestrach GPIO.

Reply to
Konop

Sprawdziłem jak to jest w korsie z EdW i tam niestety nie jest włączany ten układ a wykorzystują zarówno I2S, I2C, PWM i pozostałe bloki peryferyjne, więc o co chodzi?

Reply to
slawek7

W dniu 20.03.2012 13:46, slawek7 pisze:

Nie widziałem tego kodu, więc ciężko mi się odnieść. Niewykluczone, że to ich błąd, albo ja się mylę - też sobie głowy za to uciąć nie dam ;). Moim zdaniem powinno to być włączone i zawsze to po prostu włączone. Na początku zabaw z STM32 tego nie włączyłem i coś mi nie działało... . A pytasz bardziej praktycznie, czy teoretycznie?

Reply to
Konop

Aby skorzystac, np. z kontrolera SPI nalezy wlaczy zegar dla wybranego modulu SPI, wyszystkie moduly GPIO na ktorych pinach sa zamapowane porty SPI oraz wlaczyc modul AFIO - zapewnia on przemapowanie (remap alternate functions) pinow SPI oraz prawidlowo skonfigurowac moduly GPIO oraz w przypadku przemapowania AFIO. Najprawdopodobnie przy uzyciu domyslnego mapowania pinow (default alternate functions) nie ma potrzeby wlaczania AFIO jednakze osobiscie tego nie sprawdzalem - projekt wymagal ode mnie uzycia przemapowanych pinow.

Co do timera to w przypadku wykorzystania go jako wewnetrznego "licznika" tj. nie sa dostarczane/wyprowadzane sygnaly wystarczy wlaczyc tylko modul TIM.

pozdrawiam

Reply to
Nijak

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.