{"id":6,"date":"2017-04-11T20:23:34","date_gmt":"2017-04-11T18:23:34","guid":{"rendered":"http:\/\/aiiot-technology.eu\/web\/?p=6"},"modified":"2017-04-25T14:00:38","modified_gmt":"2017-04-25T12:00:38","slug":"bootloader-stm32-arduino-ide-programowanie-przez-usb-dzieki-stm32duino","status":"publish","type":"post","link":"http:\/\/aiiot-technology.eu\/web\/2017\/04\/11\/bootloader-stm32-arduino-ide-programowanie-przez-usb-dzieki-stm32duino\/","title":{"rendered":"[bootloader] STM32 Arduino IDE programowanie przez USB dzi\u0119ki STM32duino"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-24\" src=\"http:\/\/aiiot-technology.eu\/web\/wp-content\/uploads\/2017\/04\/IMAG2066-1024x579.jpg\" alt=\"\" width=\"730\" height=\"413\" srcset=\"http:\/\/aiiot-technology.eu\/web\/wp-content\/uploads\/2017\/04\/IMAG2066-1024x579.jpg 1024w, http:\/\/aiiot-technology.eu\/web\/wp-content\/uploads\/2017\/04\/IMAG2066-300x170.jpg 300w, http:\/\/aiiot-technology.eu\/web\/wp-content\/uploads\/2017\/04\/IMAG2066-768x434.jpg 768w\" sizes=\"(max-width: 730px) 100vw, 730px\" \/><\/p>\n<p>Instrukcja dotyczy STM32F103C8T6 i instalacji pod Windowsem, je\u015bli masz linuxa skorzystaj z linku na ko\u0144cu.<\/p>\n<p>Aby wykorzysta\u0107 wbudowany port USB w p\u0142ytkach i wgrywa\u0107 programy bez dodatkowych urz\u0105dze\u0144, potrzebny b\u0119dzie na bootlader kt\u00f3ry doda nam tak\u0105 mo\u017cliwo\u015b\u0107, b\u0119dzie to\u00a0STM32duino\u00a0<a href=\"https:\/\/github.com\/rogerclarkmelbourne\/STM32duino-bootloader\">strona projektu<\/a>.<\/p>\n<p>B\u0119dziemy potrzebowali kilku plik\u00f3w, mo\u017cemy je <a href=\"https:\/\/github.com\/AIIoT\/STM32-ArdionoIDE\/\">pobrac z linku<\/a>, lub bezpo\u015brednio z stron projekt\u00f3w.<\/p>\n<p><strong>Niezb\u0119dne pliki dost\u0119pne w folderze bootlader:<\/strong><br \/>\n<strong>-generic_boot20_pc13.bin<\/strong> \/\/ bootlader STM32duino dla stm32f103c8t6<br \/>\n<strong>-stm32flash.exe<\/strong> \/\/ program do flashowania pod Windows&#8217;em<br \/>\n<strong>oraz folder drives<\/strong> \/\/ sterowniki usb<\/p>\n<p>Aktualne pliki mo\u017cna pobra\u0107 z:<br \/>\n<a href=\"https:\/\/github.com\/rogerclarkmelbourne\/STM32duino-bootloader\">Ostatni STM32duino-bootloader<\/a><br \/>\n<a href=\"https:\/\/sourceforge.net\/projects\/stm32flash\/\">Ostatni stm32flash pod Windows<br \/>\n<\/a><a href=\"https:\/\/github.com\/rogerclarkmelbourne\/Arduino_STM32\/tree\/master\/drivers\">Ostatnie sterowniki do usb Arduino_STM32<\/a><\/p>\n<p><strong>Przygotowanie p\u0142ytki:<\/strong><\/p>\n<p>B\u0119dziemy potrzebowali konwertera USB UART<br \/>\npod\u0142\u0105czamy konwerter z stm32<br \/>\n-zasilanie do 5V<br \/>\n-gnd do gnd<br \/>\n-RX do A9<br \/>\n-TX do A10<br \/>\nMusimy tak\u017ce prze\u0142\u0105czy\u0107 zwork\u0119 BOOT0 na 1 (2 zworka od pinu reset) tak,<br \/>\naby nasza p\u0142ytka uruchomi\u0142a si\u0119 w trybie wgrywania kodu przez port szeregowy.<br \/>\nJe\u015bli najpierw pod\u0142\u0105czy\u0142e\u015b zasilania a p\u00f3\u017aniej prze\u0142\u0105czy\u0142e\u015b zwork\u0119, kliknij reset.<\/p>\n<p><strong>Wgrywanie bootladera:<\/strong><br \/>\nw folderze z niezb\u0119dnymi plikami(bootlader) kliknij klawisz &#8222;shift&#8221; i &#8222;PPM&#8221; (Prawy Przycisk Myszki)<br \/>\ni wybierz &#8222;Otw\u00f3rz okno polecen tutaj&#8221;<\/p>\n<p>w konsoli wpisz:<\/p>\n<blockquote><p>stm32flash.exe -f -v -w generic_boot20_pc13.bin COM8<\/p><\/blockquote>\n<p>gdzie COM8 oznacza numer portu konwertera USB UART<\/p>\n<p>Je\u015bli mamy problemy mo\u017cemy skorzysta\u0107 z <a id=\"2eb88adbb5de874cbfa310d9fa21869e-be96e221a86bbd8c919e12abe775d328e23f7fd9\" class=\"js-navigation-open\" title=\"PL-FLASH.BAT\" href=\"https:\/\/github.com\/AIIoT\/STM32-ArdionoIDE\/blob\/master\/STM32duino-bootloader\/PL-FLASH.BAT\">PL-FLASH.BAT<\/a> jednak ma on pewne ograniczenia,<br \/>\n(tj. nie informuje nas o poprawnym wgraniu bootlader , okno konsoli zamyka si\u0119 po wgraniu bootladera trzeba obserwowa\u0107 proces wgrywania,<br \/>\naby wiedzie\u0107 \u017ce zako\u0144czy\u0142 si\u0119 powodzeniem, ograniczona liczba port\u00f3w com do wyboru, od 1 do 15 portu)<\/p>\n<p>po wgraniu bootladera zmieniamy zwork\u0119 BOOT0 na 0, po instalacji sterownik\u00f3w nasze urz\u0105dzenie zostanie wykryte jako Maple DFU z t\u0105 nazw\u0105 nie musimy\/nie mo\u017cemy okre\u015bli\u0107 numeru portu com podczas wgrywania programu z arduino,<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-60\" src=\"http:\/\/aiiot-technology.eu\/web\/wp-content\/uploads\/2017\/04\/Maple-DFU.png\" alt=\"\" width=\"779\" height=\"570\" srcset=\"http:\/\/aiiot-technology.eu\/web\/wp-content\/uploads\/2017\/04\/Maple-DFU.png 779w, http:\/\/aiiot-technology.eu\/web\/wp-content\/uploads\/2017\/04\/Maple-DFU-300x220.png 300w, http:\/\/aiiot-technology.eu\/web\/wp-content\/uploads\/2017\/04\/Maple-DFU-768x562.png 768w\" sizes=\"(max-width: 779px) 100vw, 779px\" \/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-62\" src=\"http:\/\/aiiot-technology.eu\/web\/wp-content\/uploads\/2017\/04\/Maple-DFU-Serial.png\" alt=\"\" width=\"1016\" height=\"302\" srcset=\"http:\/\/aiiot-technology.eu\/web\/wp-content\/uploads\/2017\/04\/Maple-DFU-Serial.png 1016w, http:\/\/aiiot-technology.eu\/web\/wp-content\/uploads\/2017\/04\/Maple-DFU-Serial-300x89.png 300w, http:\/\/aiiot-technology.eu\/web\/wp-content\/uploads\/2017\/04\/Maple-DFU-Serial-768x228.png 768w\" sizes=\"(max-width: 1016px) 100vw, 1016px\" \/><\/p>\n<p>po wgraniu pierwszego programu\u00a0jego nazwa zmieni si\u0119 na\u00a0Maple Serial i wtedy musimy ju\u017c wybiera\u0107 odpowiedni port com podczas wgrywania.<\/p>\n<p><strong>Sterowniki:<\/strong><br \/>\nuruchamiamy &#8222;install_drivers.bat&#8221; z folderu &#8222;drivers\\win&#8221;<\/p>\n<p><strong>Uruchomienie:<\/strong><br \/>\nPotrzebne b\u0119dzie Arduino IDE w wersji co najmniej 1.6.9.<br \/>\nWchodzimy w ustawienia i dopisujemy dodatkowy URL do definicji p\u0142ytek:<\/p>\n<blockquote><p>http:\/\/dan.drown.org\/arduino\/package_STM32duino_index.json<\/p><\/blockquote>\n<p>Nast\u0119pnie w menu &#8222;Tools&#8221; wybieramy w &#8222;Boards&#8221; opcj\u0119 &#8222;Board Manager&#8221;, wyszukujemy &#8222;STM32&#8221; i instalujemy definicje dla &#8222;STM32F1*&#8221;<br \/>\nDalej, wybieramy &#8222;STM32F103C&#8221;, programowanie przez STM32duino-bootloader, z przyk\u0142ad\u00f3w wybieramy &#8222;Blink&#8221;,<br \/>\n(zmieniamy w nim &#8222;13&#8221; na &#8222;PC13&#8221;) pod\u0142\u0105czamy, wybieramy w &#8222;Tools&#8221; jego port szeregowy i klikamy &#8222;Upload&#8221;.<\/p>\n<p><a href=\"https:\/\/raw.githubusercontent.com\/AIIoT\/STM32-ArdionoIDE\/master\/STM32duino-bootloader\/stm32usb.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-23\" src=\"http:\/\/aiiot-technology.eu\/web\/wp-content\/uploads\/2017\/04\/stm32usb.png\" alt=\"\" width=\"805\" height=\"785\" srcset=\"http:\/\/aiiot-technology.eu\/web\/wp-content\/uploads\/2017\/04\/stm32usb.png 805w, http:\/\/aiiot-technology.eu\/web\/wp-content\/uploads\/2017\/04\/stm32usb-300x293.png 300w, http:\/\/aiiot-technology.eu\/web\/wp-content\/uploads\/2017\/04\/stm32usb-768x749.png 768w\" sizes=\"(max-width: 805px) 100vw, 805px\" \/><\/a><\/p>\n<p>Instrukcja bazuje na:<br \/>\n<a href=\"http:\/\/www.forbot.pl\/forum\/topics49\/programowanie-plytek-stm32f103c-przy-pomocy-arduino-vt13048.htm\">http:\/\/www.forbot.pl\/forum\/topics49\/programowanie-plytek-stm32f103c-przy-pomocy-arduino-vt13048.htm<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Instrukcja dotyczy STM32F103C8T6 i instalacji pod Windowsem, je\u015bli masz linuxa skorzystaj z linku na ko\u0144cu. Aby wykorzysta\u0107 wbudowany port USB w p\u0142ytkach i wgrywa\u0107 programy bez dodatkowych urz\u0105dze\u0144, potrzebny b\u0119dzie na bootlader kt\u00f3ry doda nam tak\u0105 mo\u017cliwo\u015b\u0107, b\u0119dzie to\u00a0STM32duino\u00a0strona projektu. B\u0119dziemy potrzebowali kilku plik\u00f3w, mo\u017cemy je pobrac z linku, lub bezpo\u015brednio z stron projekt\u00f3w. Niezb\u0119dne [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":24,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-6","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-stm32"],"_links":{"self":[{"href":"http:\/\/aiiot-technology.eu\/web\/wp-json\/wp\/v2\/posts\/6"}],"collection":[{"href":"http:\/\/aiiot-technology.eu\/web\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/aiiot-technology.eu\/web\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/aiiot-technology.eu\/web\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/aiiot-technology.eu\/web\/wp-json\/wp\/v2\/comments?post=6"}],"version-history":[{"count":26,"href":"http:\/\/aiiot-technology.eu\/web\/wp-json\/wp\/v2\/posts\/6\/revisions"}],"predecessor-version":[{"id":63,"href":"http:\/\/aiiot-technology.eu\/web\/wp-json\/wp\/v2\/posts\/6\/revisions\/63"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/aiiot-technology.eu\/web\/wp-json\/wp\/v2\/media\/24"}],"wp:attachment":[{"href":"http:\/\/aiiot-technology.eu\/web\/wp-json\/wp\/v2\/media?parent=6"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/aiiot-technology.eu\/web\/wp-json\/wp\/v2\/categories?post=6"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/aiiot-technology.eu\/web\/wp-json\/wp\/v2\/tags?post=6"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}