Programowanie pamięci Flash mikrokontrolerów STM32 – Flash Loader


P O D Z E S P O AY
Programowanie pamięci
Flash mikrokontrolerów
STM32  Flash Loader
Demonstrator
Pamięć Flash mikrokontrolerów STM32 może być programowana za
pomocą bootloadera zapisanego w pamięci systemowej programu,
który do ładowania programu wykorzystuje interfejs RS232.
Dzięki temu jest możliwe zaprogramowanie mikrokontrolera bez
konieczności posiadania dodatkowego sprzętu, poza zwykłym kablem
RS232 i układem konwertera napięć, który zazwyczaj jest elementem
większości systemów mikroprocesorowych. Jeśli natomiast obwody
służące do komunikacji za pomocą interfejsu RS232 nie zostały
umieszczone w systemie wystarczy podłączyć zewnętrzny konwerter
poziomów napięć, by móc niskim kosztem zaprogramować pamięć
mikrokontrolera przygotowanym programem.
We wspomniany bootloader wy- na wyprowadzeniach BOOT0 i BOOT1
posażono wszystkie aktualnie pro- (rys. 1) oraz wyzerować mikrokontro-
dukowane mikrokontrolery z rodziny ler. Zależność pomiędzy stanem na
Tab. 1.
STM32F101xx oraz STM32F103xx. wyprowadzeniach BOOT0 i BOOT1
Aby mikrokontroler wykonał program a rodzajem pamięci, z której wykony- BOOT0 BOOT1 Obszar pamięci
bootloadera należy wymusić odpo- wany będzie program przedstawiono 0 x Pamięć Flash
wiedni dla pamięci systemowej stan w tab. 1.
1 0 Pamięć systemowa
Z tabeli wynika,
1 1 Pamięć RAM
iż bootloader zostanie
uruchomiony, gdy wy-
prowadzenie BOOT0 wykorzystywane przez bootloader.
będzie się znajdo- Sygnał zegarowy jest otrzymywany
wało w stanie wyso- z wewnętrznego generatora RC wy-
kim, a wyprowadzenie sokiej częstotliwości, tak więc do
BOOT1 w stanie ni- pracy bootloadera nie jest wymaga-
skim. Stan tych wy- ny zewnętrzny oscylator kwarcowy.
prowadzeń jest odczy- Prędkość transmisji jest ustalana au-
tywany przy czwar- tomatycznie przez bootloader, który
tym narastającym
zboczu sygnału SYS
CLK po wyzerowa-
niu mikrokontrolera.
Bootloader komuni-
kuje się za pomocą
interfejsu USART1,
przy czym wykorzy-
stywane są tylko linie
USART1_RX (PA10)
o r a z U SA RT 1 _ T X
(PA9). Pozostałe wy-
prowadzenia ukła-
Rys. 1. du USART1 nie są Rys. 2.
Elektronika Praktyczna 7/2008
89
P O D Z E S P O AY
gram ma postać kreatora, który krok
po kroku przeprowadza użytkownika
przez proces programowania pamięci
Flash.
Jako pierwsze jest wyświetlane
okno powitalne (rys. 2). Po kliknięciu
przycisku Next wyświetlone zostanie
okno pokazane na rys. 3, służące do Rys. 7.
określenia numeru portu COM oraz
parametrów transmisji, przy czym je-
dyną opcją mogącą wymagać zmiany
przez użytkownika jest numer portu
Rys. 3. COM. Pozostałe parametry nie wy-
magają zmian. Na tym etapie należy
dostosowuje ją na podstawie danych ustawić na wyprowadzeniach BOOT0
odebranych z komputera PC. i BOOT1 odpowiedni stan oraz wy-
zerować mikrokontroler. Po kliknię-
Flash Loader Demonstrator ciu przycisku Next zostanie podjęta
Firma STMicroelectronics dostarcza próba nawiązania łączności z mikro-
aplikację dla systemu Windows prze- kontrolerem. W przypadku jej niepo-
znaczoną do programowania pamięci wodzenia zostanie wyświetlone okno
Flash mikrokontrolerów STM32 z wy- z komunikatem jak na rys. 4. Przyczy- Rys. 8.
korzystaniem umieszczonego w pamięci ną braku komunikacji może być zle
systemowej bootloadera i portu COM wybrany numer portu COM lub nie-
komputera PC. Program Flash Loader poprawny stan na wyprowadzeniach
Demostrator jest dostępny pod adre- BOOT0 i BOOT1. Kolejne okno służy
sem http://www.st.com/stonline/products/ do wyboru grupy, do której należy
support/micro/files/um0462.zip (publi- programowany mikrokontroler (rys. 5).
kujemy go także na CD EP7/2008B). W polu Flash Mapping zostaną wy-
Po rozpakowaniu archiwum należy świetlone wszystkie dostępne dla da-
uruchomić znajdujący się wewnątrz nej grupy sektory pamięci Flash wraz
plik UM0462.exe i zainstalować pro- z ich adresami oraz atrybutami. Ko-
gram Flash Loader Demostrator. Pro- lejne okno (rys. 6) służy do wyboru
operacji, jaka ma zostać wykonana
na pamięci Flash programowanego
mikrokontrolera. Do wyboru mamy Rys. 9.
kasowanie (opcja Erase) całego obsza-
Rys. 4. ru pamięci lub tez wybranych sekto- nie okno dialogowe Otwórz w sytuacji,
rów pamięci (rys. 7). Opcja Downlo- gdy właściwe byłoby okno dialogowe
ad służy do przesłania programu do Zapisz jako& . Po określeniu rodza-
mikrokontrolera. Plik z kodem pro- ju operacji wykonywanej na pamięci
gramu może być zapisany w trzech Flash oraz wybraniu odpowiednich
formatach: binarnym (*.bin), Intel plików i sektorów w pamięci, należy
HEX (*.hex) oraz Motorola S Record kliknąć przycisk Next. Nastąpi przej-
(*.s19). W przypadku pliku binarnego ście do kolejnego okna (rys. 8) oraz
możemy określić adres, pod którym zostanie wykonana wybrana operacja.
zostanie umieszczony ładowany pro- W oknie będą wyświetlone szczegóły
gram. W przypadku pozostałych forma- na temat aktualnie wykonywanej ope-
tów adres ten jest określony w pliku, racji oraz pasek postępu operacji. Po-
a opcja określenia adresu jest nieak- myślne zakończenie operacji zostanie
Rys. 5. tywna. Opcja Upload służy do odczy- zasygnalizowane odpowiednim komu-
tu zawartości pamięci Flash. Podobnie nikatem wyświetlonym na pasku po-
jak w przypadku kasowania pamięci, stępu (rys. 9). Po kliknięciu przycisku
możliwy jest wybór poszczególnych Finish program zostanie zamknięty.
sektorów pamięci Flash, których za- Teraz pozostaje nam tylko przywró-
wartość ma zostać odczytana. Program cić na liniach BOOT0 i BOOT1 stan
Flash Loader Demostrator w obecnej właściwy dla wykonywania programu
wersji posiada drobne niedociągnięcie. z pamięci Flash (BOOT0 = 0; BOOT1
Mianowicie odczytywane dane muszą = 0) oraz wyzerowanie mikrokontro-
być zapisane do już istniejącego pli- lera. Załadowany program powinien
ku  program nie jest w stanie samo- zostać wykonany.
dzielnie utworzyć pliku, do którego Radosław Kwiecień, EP
trafią odczytane dane. Spowodowane radoslaw.kwiecien@ep.com.pl
Rys. 6. jest to faktem, iż wyświetlone zosta-
Elektronika Praktyczna 7/2008
90


Wyszukiwarka

Podobne podstrony:
Programowanie pamięci FLASH ROM Jak uruchomić programator FLASH
Obsługa kart pamięci Flash, część 2
PAMIECI FLASH
Obsługa kart pamięci Flash, część 7
Obsługa kart pamięci Flash, część 4
Obsługa kart pamięci Flash, część 3
Odczytanie identyfikatorów VID i PID pendrive i pamięci flash
Odczytanie identyfikatorów VID i PID pendrive i pamięci flash
utk2 pamieci flash
Instalacja Windows XP z USB, pendrive a lub karty pamięci flash
Obsługa kart pamięci Flash, część 6
Obsługa kart pamięci Flash, część 5
Flash Loader for Z8 Encore
QART Serwis s c Pamięci flash z interfejsem USB USB 2 0
Obsługa kart pamięci Flash, część 1
Różnice w funkcjach zapisu danych w wewnętrznej pamięci EEPROM mikrokontrolerów AT89S8252 i T89C51R
Mikrokontrolery STM32 Bezpieczeństwo i stabilność
Mikrokontrolery STM32 Wykorzystanie ADC i DMA
Mikrokontrolery STM32 Obsługa kart SD i FatFs

więcej podobnych podstron