[bootloader] STM32 Arduino IDE programowanie przez USB dzięki STM32duino

Instrukcja dotyczy STM32F103C8T6 i instalacji pod Windowsem, jeśli masz linuxa skorzystaj z linku na końcu.

Aby wykorzystać wbudowany port USB w płytkach i wgrywać programy bez dodatkowych urządzeń, potrzebny będzie na bootlader który doda nam taką możliwość, będzie to STM32duino strona projektu.

Będziemy potrzebowali kilku plików, możemy je pobrac z linku, lub bezpośrednio z stron projektów.

Niezbędne pliki dostępne w folderze bootlader:
-generic_boot20_pc13.bin // bootlader STM32duino dla stm32f103c8t6
-stm32flash.exe // program do flashowania pod Windows’em
oraz folder drives // sterowniki usb

Aktualne pliki można pobrać z:
Ostatni STM32duino-bootloader
Ostatni stm32flash pod Windows
Ostatnie sterowniki do usb Arduino_STM32

Przygotowanie płytki:

Będziemy potrzebowali konwertera USB UART
podłączamy konwerter z stm32
-zasilanie do 5V
-gnd do gnd
-RX do A9
-TX do A10
Musimy także przełączyć zworkę BOOT0 na 1 (2 zworka od pinu reset) tak,
aby nasza płytka uruchomiła się w trybie wgrywania kodu przez port szeregowy.
Jeśli najpierw podłączyłeś zasilania a później przełączyłeś zworkę, kliknij reset.

Wgrywanie bootladera:
w folderze z niezbędnymi plikami(bootlader) kliknij klawisz „shift” i „PPM” (Prawy Przycisk Myszki)
i wybierz „Otwórz okno polecen tutaj”

w konsoli wpisz:

stm32flash.exe -f -v -w generic_boot20_pc13.bin COM8

gdzie COM8 oznacza numer portu konwertera USB UART

Jeśli mamy problemy możemy skorzystać z PL-FLASH.BAT jednak ma on pewne ograniczenia,
(tj. nie informuje nas o poprawnym wgraniu bootlader , okno konsoli zamyka się po wgraniu bootladera trzeba obserwować proces wgrywania,
aby wiedzieć że zakończył się powodzeniem, ograniczona liczba portów com do wyboru, od 1 do 15 portu)

po wgraniu bootladera zmieniamy zworkę BOOT0 na 0, po instalacji sterowników nasze urządzenie zostanie wykryte jako Maple DFU z tą nazwą nie musimy/nie możemy określić numeru portu com podczas wgrywania programu z arduino,

po wgraniu pierwszego programu jego nazwa zmieni się na Maple Serial i wtedy musimy już wybierać odpowiedni port com podczas wgrywania.

Sterowniki:
uruchamiamy „install_drivers.bat” z folderu „drivers\win”

Uruchomienie:
Potrzebne będzie Arduino IDE w wersji co najmniej 1.6.9.
Wchodzimy w ustawienia i dopisujemy dodatkowy URL do definicji płytek:

http://dan.drown.org/arduino/package_STM32duino_index.json

Następnie w menu „Tools” wybieramy w „Boards” opcję „Board Manager”, wyszukujemy „STM32” i instalujemy definicje dla „STM32F1*”
Dalej, wybieramy „STM32F103C”, programowanie przez STM32duino-bootloader, z przykładów wybieramy „Blink”,
(zmieniamy w nim „13” na „PC13”) podłączamy, wybieramy w „Tools” jego port szeregowy i klikamy „Upload”.

Instrukcja bazuje na:
http://www.forbot.pl/forum/topics49/programowanie-plytek-stm32f103c-przy-pomocy-arduino-vt13048.htm

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *