Pokazywanie postów oznaczonych etykietą F103RB. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą F103RB. Pokaż wszystkie posty

sobota, 7 listopada 2015

[1] STM32 M3 - Nucleo - F103RB - GPIO

Niedawno rozpocząłem przygodę z mikrokontrolerami z rdzeniem Cortex M3. W związku z tymn na początek, chciałbym przedstawić sposób obsługi portów wejścia wyjścia tego układu. 
Programy zamieszczone w tym poście zostały przetestowane na płytce Nucleo F103RB.

Inicjalizacja


Podstawową rzeczą od jakiej należy zacząć programowanie linii GPIO jest ich odpowiednia inicjalizacja. W tym mikrokontrolerze każdy pin może zostać zdeklarowany jako wyjście typu Push Pull lub jako Open Drain. W przypadku deklaracji pinu wejściowego możliwe jest ustawienie rezystora podciągającego (Pull Up lub Pull Down) lub całkowite jego wyłączenie. Kolejną możliwością jest deklaracja pinu jako wejście alternatywne (Alternate Function). Ta opcja stosowana jest w przypadku stosowania interfejsów komunikacyjnych takich jak np. SPI.

Ostatnim elementem jest częstotliwość działania GPIO. Od tego parametru zależy jak często będzie możliwa zmiana stanu na linii. Im częściej taki stan będzie zmieniany, tym większy będzie poziom emitowanych zakłóceń elektromagnetycznych (EMC).