1. Przeczytaj początek tego: http://docs7.chomikuj.pl/492704393,0,0,0... 2. W systemie Windows istnieje funkcja wyszukiwania pliku o określonej nazwie. Czy użyłeś jej do zlokalizowania potrzebnego pliku ?
Teraz już w taki tryb wejść nie mogę. Bo skasowałeś bootloader.
Ogólnie dobrze kombinujesz. Wyrzuć ustawienie VTOR z aplkikacji - niech ustawia go bootloader. W bootloaderze zawołaj procedurę spod adresu pobranego z adresu 4 aplikacji, czyli o 4 dalej niż wartość VTOR. Jedyna potrzebna zmiana w skrypcie konsolidatora - to adres startowy (no i zmniejszony rozmiar dostępnej pamięci ROM)
Nie ma "przerwań synchronicznych", jest tylko błędna terminologia. SVC to jest właśnie pułapka, podobnie jak SYSCALL w innych procesorach, TRAP w jeszcze innych i INT w x86. Błąd to coś ciut innego - wszystkie Fault w ARM to właśnie błędy. Obsługa błędów ani pułapek nie zależy od priorytetu procesora. Ten "konfigurowalny priorytet" dla pułapek i błędów...
Witam Może ten wątek ci pomoże: http://www.elektroda.pl/rtvforum/topic24... Pozdrawiam
Ja zrobiłem kalkulator programowalny na takim chińczyku, różne rzeczy tam mam zaprogramowane i działa. Zakładając, że nie robiłeś tego w arduino - jak programowałeś płytkę? Stlinkiem czy via bootloader?
https://www.google.pl/search?q=stm32+uar... Pierwszy link: http://www.st.com/st-web-ui/static/activ... To na prawdę nie są super tajne informacje dla elit ;)
pozostaje Ci wgrać nowy program przez wbudowany bootloader
Do samego programowania JTAG nie jest potrzebny bo wszystkie układy STM32 mają fabrycznie wgrany, nienadpisywalny bootloader.
Jak zaprogramować STM32, kw którym nie działa bootloader? A jak myślisz? Już na to pytanie odpowiedź Ci padła dużej wcześniej- użyj jtag'a.
Podsumowując... Loader umieszczony jest we flash od adresu 0 i nie ma od tego odstępstw. Aplikacja umieszczona jest pod dowolnym adresem we flash z wyrównaniem do 512. Żadne biblioteki nie maja kodu na stałe przypisanego pod konkretny adres, nawet SPL, wszystkie startupy i tak zależą od linkera, no chyba, że ktoś sobie coś udziwił i coś na stałe przypisał....
"Nieco" bardziej popularny bootloader: https://github.com/rogerclarkmelbourne/S... Domyślny, dla w miarę oryginalnego BluePill to generic_boot20_pc13.bin.
Witaj, Ja popełniłem w przesłości bootloader dla tego mikrokontrolera ale mój własny bootloader musiał być umieszczony w pierwszych sektorach flasha. Jak będziesz chciał go wykonać to pamiętaj o przemapowaniu wektorów przerwań no chyba, że ich nie używasz. U mnie bootloader zajął 1 sektor 8k ale to na styk było a program który wgrywasz musisz zacząć...
Pomyśl może nad STM32 - mają chyba wszystkie bootloader po UART, niektóre po USB i innych magistralach. Jednak drobne uwagi - jakie to lotnictwo? Bo wiesz, ze do prawdziwego, musisz mieć specjalne układy z atestami? Ponadto - jeśli będzie duży program to debugger Ci się przyda na 200%. Teoretycznie można poradzić sobie bez tego, ale wygoda pracy i szukania...
Ja mam tak: __attribute__ ((section(".bootloader&... int program_page(unsigned short *data, unsigned int adr) {... } i linker: .bootloader 0x08000000+128K-1K : { *(.bootloader) } i działa
Nie wiem, czy dokładnie o to Ci chodzi, ale spróbuj Google -> "stm32 bootloader"
w STM32 bootloader w ROMie jest taki sam niezaleznie od medium. Rozne sa tylko protokoly komunikacji. Jezeli chodzi o USB,UART producent dostarcza oprogramowanie demonstracyjne, do CAN niestety nie
Dzięki za zainteresowanie. Ustawienia portu COM w programie Flash Loader Demonstrator mam następujące: - baud rate: 57600, - 8 bitów danych (niemożliwe do zmiany), - 1 bit stopu (niemożliwe do zmiany), - parzystość Even, - timeout 5 sekund. Zmiany baudrate oraz parzystości nie pomagają. Ponadto ustawiony baudrate od strony PC nie ma aż tak ogromnego...
Domyślnie uruchamia się program spod adresu 0x8000000. Jeśli napiszesz go tak, żeby sprawdzał co ma zrobić i ewentualnie skoczył do innego programu to da się. W innym przypadku się nie da. Nie wiem jednak po co takie kombinacje zamiast po prostu zrobić normalny bootloader...
No normalnie to ładujesz swojego bootloadera do flasha przy pomocy powiedzmy flash magic. A następnie generujesz sobie BIN swojej aplikacji w ofsetem i tego BINa podsuwasz bootloaderowi i on używając IAP powinien to wpisać do flasha. Ok, wszystko się zgadza, ale ja chciałem wgrać to bez użycia bootloadera - z wgraniem już sobie poradziłem. Pojawił...
Poradnik troch(zbyt) rozbudowany, ja sobie z tym poradziłem w ten sposób: http://aiiot.c0.pl/web/2017/04/11/bootlo... wykorzystuje program stm32flash i wgrywam bootloader przez CMD. Z listą poleceń napisaną w pliku .bat, można wgrywać bootloader do płytek niemalże masowo :P. Dodano po 14...
Witam, Co do odczytywania kodu z ATmeg to macie panowie rację. Myślę że nawet 1000USD to za dużo. Atmegi mają problem w stanach niestabilnych (na granicy napięcia zasilania) z utrzymaniem bezpieczeństwa kodu. Ich fusebity :-) hmm nawet BOR nie pomaga. Inaczej się sprawa ma z STM32. Tych nie udało mi się wprowadzić w taki stan. W dodatku nowe rodziny...
Ja stosuję z powodzeniem bootloader po USB z tego projektu: [url=https://github.com/libopencm3/libop... usb_dfu. Jak do tej pory nie miałem z nim problemów. Przerobiłem sobie aby można było z poziomu aplikacji wejść w tryb programowania. Pozdrawiam Tomasz
Witam Mam ten programator ale jakoś nie mogłem go na Macu podpiąć, ja ogólnie programuje SMT32 bez arduino, z tym że arduino ułatwia testy 10 minutowe ;-) Rezystor podciągający 4,7k, napewno muszę go zmniejszać? nawet jak używam 3 przewodów?? Przecież on nie jest zasilany z lini danych. Jeżeli w grę wchodzi kabel to tak, rozumiem, ale mam 50cm kable....
Przy BOOT0 zwartym z GND bootloader jest wyłączony. Na czym konkretnie polega problem?
książek, oprócz tej to nie ma ta jest dobra żeby lekko obczaić temat, ale jakaś super extra to ona nie jest przykłady (wydrukowane w książkach) są w paru miejscach walnięte ich kod jest dostępny w sieci. Książkę warto kupić, po to choćby żeby nie ślęczeć przed kompem. Co do zestawów, to w sieci i na ebayu (w HK i w PRC). Na ebayu jest dużo zestawów...
Czy to oznacza że nie ma potrzeby uruchamiać bootloadera w RAM, gdy będę kasował/zapisywał na sektorach na których nie ma kodu bootloadera? Uruchomienie kodu w RAM jest konieczne tylko gdy chcesz aktualizować kod samego bootloadera. Jeśli nie masz tego w planie, to nie jest Ci to potrzebne i cały bootloader może być w pamięci flash. 4\/3!!
Napisałem sobie prosty bootloader pod STM32 i chciałbym teraz z poziomu wgrywanego programu odwoływać się do funkcji z niezainicjowanego sektora pamięci. O ile umiem taką funkcję wywołać, to nie mogę nigdzie znaleźć informacji, jak taką funkcję można zainicjować. Może ktoś się zetknął z takim zagadnieniem?
(at)SACZI Nie mogąc już pratrzeć jak się męczysz (i inni) zrobiłem obrazkowy mikroporadnik jak użyć BluePill z ST-Link z Nucleo i Atollic for STM32 https://www.elektroda.pl/rtvforum/viewto...
A co chciałbyś wtedy debugowac.?
STM32 każdy model ma wbudowany bootloader uruchamiany przy starcie w zależności od stanu pinów BOOT0/BOOT1 (w zasadzie BOOT0, ale trzeba zwracać uwagę na oba). Programuje się to np. przez stm32 flasher czy też flash loader demo. W przypadku nucleo będzie kolega używał wbudowanego st-link, który można wyłamać i używać do innych projektów. A co do IDE...
Witam. Czy jest gdzieś gotowiec bootloader dla układów STM32 z obsługą USB host potrafiący upgradeowac firmware z pendrive? Przeglądnąłem sporo różnych i są wszelakie, ale nie taki. Czy zostaje tylko ściągnięcie że strony napisz.se ? Pozdrawiam.
Podrzucam to co mam (datasheet'y, jakieś przykłady i biblioteki). Może się przyda :) Jeśli to nie to, to daj znać - pogrzebię głębiej. Co do programu i specjalnego bootloader'a - nic takiego nie pamiętam. Może chodzi Ci o "Flash Loader Demonstrator" i oryginalny bootloader ST? Flash Loader... można pobrać ze strony ST. Bootloader w procku jest zapisany...
Jak rozpoczynałem zabawę z STM'ami to zastanawiałem się nad gotową płytką testową, ale tak wyszło, że zrobiłem ją sam, z części, które miałem w szufladzie. Pozostał problem jakiegoś lepszego programatora niż MAX 3232. http://obrazki.elektroda.pl/2593483200_1... To i JLinka mozesz sobie poskladac schematy sa i nie ma tam nic wielkiego...
Albo wgranie programu przez bootloader. Na stronie ST jest program do wgrywania programów do STMa przezeń właśnie. Innej możliwości nie ma. Ps. Podstawka? :|
Witam, aby STM32 pokazal sie w arduino IDE/dal sie obslugiwac przez USB musisz zaladowac bootloader, przynajmniej dawalo sie to zrobic w przypadku prostrzych wersji, nie wiem czy sa dostepne dla tej wersji. https://www.stm32duino.com/viewtopic.php... Pozdrawiam
Wybierz jedną z poniższych opcji: 1. używać do tego celu "option bytes" 2. współczynniki zapisywać na specjalnie przeznaczonej do tego stronie pamięci flash, której bootloader nie kasuje, a firmware nie używa 3. zapisywać te wielkości w pamięci podtrzymywanej bateryjnie (nie zawsze dobra opcja)
1. Nie musi 2. Kondensatory powinny byc przy każdej parze wyprowadzeń zasilania jak najbliżej uC 3. Warto zostawić możliwość uruchomienia bootloadera. Program można napisać tak, ze odetniesz sie od programowania. Niedawno mi sie to przydarzyło. Czytałem jakiś poradnik, że warto wyprowadzić na złącze SWD linię reset. Niestety to nie pomogło. Odpaliłem...
Już poprawiłem, czytam na temat tego co napisał BlueDraco Dodano po 47 BlueDraco wertuje dokumentację AN2606 ale z tego co widzę to Boot mode to własnie bootloader o który mi chodzi, więc jeśli go wyłączę to stracę możliwość aktualizacji software. Ogólnie jeśli dobrze rozumiem, to aby wyjść z tego trybu należy dokonać sprzętowego restartu procesora...
Tylko Jtag albo bootloader, inaczej się nie da
Musisz wcisnąć przycisk BOOT0, potem RESET (nie puszczając BOOT0), potem zwolnić reset i na końcu zwolnić BOOT0 - tylko wtedy procesor wstanie w trybie bootloadera. Kolejna uwaga to to, że w STM32 bootloader jest sprzętowy - te które są domyślnie (czyli m. in. UART) są na stałe zapisane w pamięci ROM procesora.
Witam, chętnie zapłacę za stworzenie Bootloader'a w sieci VSCP. Mam układ w postaci dwóch płytek z STM'ami 32. Komunikacja z masterem przez rs232. Oczekiwane funkcjonowanie: Z komputera wysyłamy program do pierwszego STM'a przez RS'a, ten STM wysyła po CAN program dalej do drugiego STM'a który jest programowany. Program napisany w C. Najlepiej osoby...
Faktycznie sypie błędami: Wszystkimi poza dwiema ostatnimi linijkami się nie przejmuj. Niemniej jednak te ostatnie pokazują, że programowanie się raczej na pewno nie udało. Możesz jeszcze zerknąć co pokazuje się w konsoli gdb - po zakończeniu zapisu sukcesem powinno tam być coś na styl komunikatu przedstawionego w moim artykule na stronie. Szukałem...
Flash loader demonstrator. Umożliwia ona m.in. zapis i odczyt pamięci programu mikrokontrolera STM32 przez bootloader poprzez USB Jak ustawić w/w program pokazano w 13 min [youtube]https://www.youtube.com/watch?v...
Czy do tego jest potrzebny programator, czy jest zaprogramowany bootloader? Pytam, bo niespecjalnie się orientuję w STM32...
W skrypcie linkera nie można tego ustawić? Albo zerknij do źródeł NVIC_SetVector i tam dodaj offset. No właśnie. Chodzi mi o to, ile jeszcze podobnych "niespodzianek" można się spodziewać po standardowych bibliotekach STM, przy relokacji kodu. Oczywiście wyjdzie to i tak "w praniu", ale tak sobie pomyślałem że może już to przerabiałeś, więc po co wyważać...
Witam, Chciałem programować procesor STM32L073RZ przez USB - DFU. Mam zainstalowany STM32CubeProgrammer. Uruchamiam procesor w trybie bootloadrea i nie działa to na mojej płytce jak również na płytce NUCLEO. Programator rozpoznaje płytkę ale w momencie rozpoczęcia procesu - tak jakby procesor się resetował. Ten sam program - programator działa w trybie...
Witam, Wg manual'a do procesora Cortex M3 jeśli się zmienia kod programu lub/i tablicę wektorów przerwań, to przed następną instrukcją powinno się użyć instrukcji ISB, DSB i DMB aby bufory załadowały nowe wartości.
...albo do programowania przez bootloader.
Ja też taki komunikat mam na zewnętrznym procesorze, chyba jest to spowodowane zabezpieczeniami fabrycznego procesora pod bootloader. Spróbuj wywołać komendę Chip Erease.
Nie każdy. Każdy da się programować przez SWD, ale interfejsy poszczególnych producentów komunikują się na ogół tylko z własnymi układami - ST-Linkiem Kinetisa nie zaprogramujesz. Interfejsem nie-producenckim, np. J-linkiem, zaprogramujesz każdy uC, ale za te interfejsy na ogół płacisz, chyba, że jest to jakiś otwarty, obsługujący Open OCD. Bootloadery...
IWDG ma timeout dopiero po 1,6s, a jest resetowany w tasku FreeRTOSa, który pstryka co 1ms, oraz w innym, który pstryka co 1s lub częściej, jeśli ma coś w kolejce... Jeśli używasz w ten sposób watchdoga, to w sumie możesz go nie używać wcale. Nie zabezpieczy Cię to wcale przed tym, że zawiesi się jakikolwiek inny task, a nawet jeśli zawiesi się jeden...
(at)PiotrPitucha.. śmieszne, ale nieprawdziwe. Raz, że STM32 ma fabrycznie bootloader (korzystający z UART) więc nic nie trzeba mu wgrywać by móc programować, a dwa, że nikt o STM32 nawet tam nie pisał. Była dygresja o rozwiązaniach przyszłościowych z wnioskiem by jeśli już to zacząć myśleć o SAMD/SAML (jako, że xmega nie są rozwijane, tiny to ograniczone...
z dokumentacji STM32 wiem już na pewno, że nie potrzebne jest podciąganie nRST w jakąkolwiek ze stron, dlatego że jest to zrealizowane wewnątrz procesora Uwierz mi, że z dokumentacji wynika tylko, że nie są KONIECZNE, za to ja gwarantuję Ci, że są potrzebne i to nie tylko podciąganie, ale i kondensator 100n do masy. Niemniej jednak to nie jest przyczyną...
Zaprogramuj (czy tam spróbuj) go przez UART i wbudowany bootloader. 4\/3!!
1. Deinicjalizujesz RCC, PLL i pozostałe zegary 2. Resetujesz i wyłączasz Systick 3. Wyłączasz przerwania wcześniej zerując flagi 4. Ustawiasz wskaźnik stosu na początek pamięci bootloadera 4. Skaczesz do adresu pamięci bootloadera +4 Wszystko jest analogiczne do poniższego przykładu dla F4: https://stm32f4-discovery.net/2017/04/tu...
dzieki za info, ale chyba sam cos napisze, a raczej dodam do przykladu z DFU w STM32 USB-FS-Device
To zainstaluję ten programator: https://www.st.com/en/development-tools/... W ustawieniach jest więcej opcji programowania, między innymi UART, możesz spróbować przejściówką USB-UART. Tu jest nieco informacji o podobnym układzie: https://embeddedprojects101.com/how-to-p... Mam płytkę BluePill i udało mi się uruchomić...
Bootloader to tylko dodatek, darmowa opcja dzieki której nie mając żadnego programatora zafleszujesz procka.
czy w takim razie wystarczy tylko aplikacja od strony PC-ta? Tak. Oto przykładowe linki: http://www.st.com/web/en/catalog/tools/P... http://www.scienceprog.com/flashing-prog... Czy ktoś z was wykorzystywał wbudowany bootloader? Wielu z nas. Być może lepiej napisać własny a jeśli tak to dlaczego? Jeśli wbudowany ci...
Cześć, Chciałem się spytać, czy ktoś miał może podobny problem. Otóż, mam pewien projekt, który od dłuższego czasu rozwijam. Postawiony jest na Xmega128A1U (do dzisiaj żałuję, mogłem wybrać jakiegoś STM32). Wszystko działało pięknie ładnie, aplikacja, bootloader, wszystko śmigało. Niestety kod ciągle się rozrastał, i po przekroczeniu 32k mam problem...
Aby odpalić bootloader należy podpiąć się do złącza, pod które podpięty jest konwerter USB<>UART - bootloader działa na 100% ze wspomnianą aplikacją.
Jak się programuje przez JTAG to nie trzeba nawet zworek przestawiać. Co do tych dodatkowych linii to można nimi sterować zewnętrznie o ile się nie mylę w EDW chyba styczniowym była płytka z STM32 i opis programowanie poprzez bootloader poprzez przejściówkę USB na FT232 gdzie właśnie sprawa zworek mogła być ustawiana automatycznie z poziomu aplikacji...
Czyli żeby zaprogramować procesor w programatorze korzystamy z fabrycznego bootloadera USB? Świetna sprawa, jak odkopię się z wszystkimi pracami to chyba też coś takiego wykonam, bo ostatnio się rozdrabniam na różne rodziny procesorów ;-) Każdy z STM32 ma bootloader na UART, fabryczny USB jest dostępny dla Connective Line (co nie obejmuje STM32F103),...
Zakładając, że układ nie jest uszkodzony, to jeśli nie możesz się połączyć JTAGiem, to zostaje Ci skasowanie całej pamięci przez bootloader przez UART. Same problemy z tym Wigglerem <: 4\/3!!
Witam. Odświeżam temat. Robię obecnie projekt na ARM od STM32 i szukam programu na Windows , którym można wgrywać plik hex do procesorów serii STM32F1 i F4 ze sterowaniem linii Reset i Boot0. Znalazłem program FlyMcu. Czy jest jeszcze jakiś podobny program do STM32 ?
I dobrze mówisz: Sprawa wygląda inaczej, bo podstawą jest tutaj JTAG i z tej racji przeraża to czasem miłośników AVRa. To właśnie jest to czego najbardziej się do tej pory obawiałem. Powiem szczerze: byłem święcie przekonany, że dla każdego producenta ARM będę musiał posiadać osobny programator. Polałeś miód na moje uszy. :) Jeżeli rzeczywiście jest...
Mam nowiutki procesor STM32F446RET6 i chcę wgrać wsad. Podobno w tej wersji jest zaimplementowany standardowo bootloader po USB w DFU. Podpinam się do pinów USBDP i USBDM ustawiem Boot0,1 i reset i zasilanie. Procedura sekwencyjna poszła... Komp wykrywa zgłoszenie ale nie ma poprawnego znacznika wersji. Sterowniki do DFU zainstalowane na windzie. Zaczynam...
http://obrazki.elektroda.pl/4832519900_1... Tytułem wstępu ... Witam wszystkich. Chciałem dzisiaj przedstawić projekt nad którym ostatnimi czasy pracowałem. Jest to uniwersalny sterownik GSM oparty o znany i popularny moduł GSM firmy SIMCom - SIM900. Podobnych konstrukcji jest w sieci wiele - nie mam zamiaru odkrywać koła na nowo ;)...
Gdyby zaczęli od STM32, to potem ewentualna nauka AVR, ESP czy 8051 (np dobry na początek z nimi AT89C2051) byłaby niezwykle łatwa i przyjemna. Nie do końca jestem przekonany do tej argumentacji. Po pierwsze, STM32 czy jakiekolwiek inne 32-bitowe mikrokontrolery komercyjnie często są programowane przez osoby po studiach informatycznych, nie elektronice....
Myślałem że zmieniam płytkę, wgrywam nowy bootloader i działa tak samo jak inne arduino. Wykonywałem procedurę z tego linku https://geektimes.ru/post/277928/
Mamy za mało PICów na elektrodzie... Bo oczywiste jest, że: Niestety wykonanie projektu wymaga pojedynczego wgrania bootloadera (pliku .hex) A standardem jest, że programator jest zbudowany na układzie tej samej rodziny co docelowy układ. Kiedyś, żeby zacząć programowanie AVR, był oklepany na maksa STK200 (czasami z kilku przewodów). Nim programowało...
Po załadowaniu programu trzeba wyjść z bootloadera. Można to zrobić na dwa sposoby, albo zdejmujesz zworki tak aby ruszał kod z flasha albo (tego nie jestem pewny) we flash loaderze ustawiasz, że po wgraniu ma uruchomić program. Nie umiem odpowiedzieć na pytanie czy gdy jest włączony bootloader działa JTAG. Ale chyba powiniem. Może go masz jeszcze źle...
Witajcie Potrzebuję na mojej płytce wykorzystać piny B3 i B4 jako GPIO, jednak jak wiadomo - jest tam standardowo włączony programator (TDO i TRST). Napisałem więc w programie, aby uruchomić na tych dwóch pinach funkcję alternatywną, jednak nadal nie działa. Do kodu dodałem: RCC_APB2PeriphClockCmd(RCC_APB2Perip... ENABLE); GPIO_InitTypeDef...
Witam kolegów, Projektuję układ z mikrokontrolerem STM32F030K6T6 i muszę jakoś podciągnąć BOOT0. Z tego co wiem to żeby programować szeregowo - musi być ustawiony BOOT na bootloader (jak się mylę prosze mnie poprawić) czyli: BOOT0 = 1 natomiast BOOT1 = 0. W układzie nie ma BOOT1 a wszystkie informacje jakie znalazłem dotyczą właśnie pary pinów a nie...
Od dawna korzystam z ST-Link na płytce Discovery i nie mam żadnych problemów podłączając tylko GND, SWDIO, SWCLK i NRST. Ale warunek jest taki, że wszystkie piny VDD/VSS, VCAP, OSC muszą być podłączone jak należy. BOOT0 do VSS (u Ciebie jest do VDD), BOOT1 przełączany jeżeli chcesz korzystać z wbudowanego bootloadera, albo pracować z kodem w RAM. To...
Witajcie, czy ktoś oblatany w ARMach i ich podłączeniach mógłby rzucić okiem czy mam dobry schemat minimalnego podłączenia STM32F051R8T6? http://obrazki.elektroda.pl/4907298800_1... Baterii nie używam, kwarców też nie (jadę z oscylatora wewnętrznego, nie potrzebuję super dokładności więc...). VDD to 3,3V (bezpośrednio będzie szło, już...
By pulling up/down BOOT0 (and BOOT1) pins while resetting STM32 you can choose startup configuration for your STM device. For example you can enable or disable built-in bootloader! Look here: https://my.st.com/public/STe2ecommunitie... ( Page 8 - Table 1 )
Ja bym bardziej szukał zwarć lub braku połączenia niż zmieniał układ na inny. Dla pewności czy działa możesz się spróbować połączyć z nim przez wbudowany bootloader. No i do JTAGa dołącz też pin resetu (SRST). 4\/3!!
By jednak się definitywnie upewnić czy niedziałanie programu wynika z zatrzaśnięcia stanu wysokiego z pinu BOOT0 podczas resetu, moim zdaniem warto by było, do egzemplarza płytki, który nie działa, spróbować "zagadać" z programu "STM32 Flash loader demonstrator" poprzez USART1, Jeśli Boot0 jest w stanie wysokim to ważne jest w jakim stanie jest Boot1,...
Witam, Naciąłem się na problem z przerwaniami z którymi nie mogę sobie jak na razie poradzić. Jeśli w bootloader'ze nie wykorzystam przerwać, to po skoku do aplikacji wszystko działa ok, jeśli natomiast zostanie tam wykorzystane, to aplikacja już ich nie wykonuje. Wydaje mi się że ma to związek z wskaźnikiem przerwania, ale nie mogę znaleźć rejestru...
Witam. Od jakiś ok. dwóch miesięcy zainteresowałem się programowaniem STM-ów, więc w tych sprawach nie jestem ekspertem, ale chyba miałem ten sam problem. Z dwa tygodnie temu spróbowałem wgrać sobie jakiś przykładowy program do płytki blue pill, i w żaden sposób nie mogłem z nią nawiązać łączności. Arduino jej nie widziało, w st linku v2 dioda świeciła...
Nie ma szyfrowania danych przy kompilacji do pliku .bin w AVRach może tak jest, w STM32 analizowałem sporo bootloaderów, i nie widzę, żeby była konieczność deszyfrowania danych przed wgraniem ich do pamięci. Ale nie upieram się, może jest taka konieczność. EDIT: Właśnie udało mi się uruchomić bootloader. Problem w tym że po resecie zasilania nie wchodzi...
Bo po zabezpiecznie trzeba zrobić power off reset. Tak to działa.
Nie, może być najwyżej widziany jako DFU, o ile uruchomi się w nim wbudowany bootloader. W kilka minut można wyklikać w CubeMX USB CDC, a w następne dwie godziny oprogramować tak, by działało - i masz VCOM.
Wszystkie płytki które ja uruchamiam, mają w procesorach pin boot0 ściągnięty do masy przez 10k lub 0R - praca z pamięci flash (używam zewnętrznego programatora). Konfiguracja boot[1:0] = 01 spowoduje uruchamianie bootloadera po każdym resecie. Pytanie, czy używasz bootloadera czy zewnętrznego programatora? Jeśli używasz wbudowanego bootloadera, sprawdź,...
Tak jak zauważyłeś tam już jest programator a właściwie JTAG czyli debugger. Samo zaprogramowanie STM32 może odbywać się przez jego bootloader( odpowiednie ustawienie pinów-wprowadzenie w stan bootloadera i wgranie programy przy pomocy aplikacji-choćby ze strony producenta po RS232). Oczywiście musi być MAX3232 lub coś podobnego. Co do środowiska-polecam...
Program wgrywam przez bootloader, więc nie potrzebuję JTAG, itp. Dlatego pytam, czy można bez ryzyka wykorzystać dodatkowe piny. Czy można wykorzystać piny JTAGa do obsługi innych układów ? Chociażby obsługę przycisków.
Odpowiedź na Twoje pytanie jest dosyć prosta - protokół SWD nie ma rozkazu zapisu do flash i tego się po prostu nie da tak zrobić jak zapisu do RAM. Oprogramowanie na PC, które się komunikuje przez SWD z układem (np. program do ST-Linka, OpenOCD) wgrywa do RAMu specjalną procedurę, która fizycznie realizuje zapis (poprzez odpowiednią sekwencje zapisów...
Ja polecam STM32F4Discovery (80zł) - bogatszy od rodziny F0, na pokładzie debugger, można też podpiąć układ zewnętrzny; lub HY-MINI STM32 (ok. 200zł) z wyświetlaczem LCD i TP, wgrywanie przez bootloader. Oczywiście niestety w tej dziedzinie dosyć kiepsko z literaturą polską jest, więc trzeba postawić na samodzielne czytanie po angielsku...
Witam Szukam informacji dotyczących funkcjonalności/zabezpieczeń profesjonalnego firmware-u wbudowanych urządzeń np w oparciu o mikrokontrolery STM32. Chodzi mi o funkcje jakie powinien posiadać firmware poza podstawową funkcjonalnością do której został stworzony jak np: - bootloader z szyfrowaną komunikacją lub nie - wydzielony fragment pamięci na...
O bootloaderze F103 https://www.elektroda.pl/rtvforum/topic3... Wgrywanie przez USB i kartę SD https://www.google.com/url?sa=t&rct=j&q=... Programowanie STM32F107 przez [url=https://stm32.eu/2012/05/10/program...
Ty wgrywając to po rs232 nie omijasz bootloader. Raczej go używa. A bootloader raczej liczy sumę kontrolną. Nie musisz kupować Jlinka za kilkaset złotych. Wystarczy że kupisz STM32 minimal development board za kilka kilkanaście złotych. Wgrywasz do niego plik hex https://github.com/x893/CMSIS-DAP/tree/m... używając firmowego bootloadera...
Jeżeli zworki przełączasz przed podłączeniem zasilania to brzmi ok. Nie znam Keil'a więc wiele więcej nie pomogę, ale: po wrzuceniu podanych przez Ciebie błędów w google wyskakuje sporo informacji. Może coś znajdziesz. Najczęściej pojawiają się informacje o złym ustawieniu adresów pamięci/algorytmów programowania w opcjach Keil'a lub włączonej blokadzie...
Jak się programuje takiego procka ? SPI, PDI a może coś innego ? Czy sprawdzałeś jak wiele połączeń możesz dokonać zanim procek odmówi współpracy ? Odpowiem za kolegę :) JTAG/SWD, wbudowany bootloader (RS232), lub inny bootloader (jak już go wgramy) - np. właśnie przez USB :) SPI/PDI to tylko w AVR-kach :)
Próbuję zaprogramować obie płytki, z tym że F103 była już programowalna, miałem wgrany bootloader od Maple Mini i śmigało to dobrze do momentu aktualizacji menedżera płytek. Teraz na nowych ustawieniach nie chce to współgrać ani ze starym bootloaderm (Maple), ani z nowym z tego wątku: https://github.com/Serasidis/STM32_HID_B... Z kolei...
Odkopię temat, bo ostatnio próbowałem sobie kupić zapasowy ST-LINK v2 (klon oczywiście), kupiłem dwa i w obu siedział APM32F103CBT6 tylko w jednym sygnowany przez APEXMIC, a w drugim przez GEEHY. O ile z ST-LINK Utility te programatory działały, to z STM32 Cube Programmer - nie chciały. Niby je widział, ale w polu SERIAL NUMBER była pojedyncza litera,...
Przez ST-Linka raczej nie da rady, przynajmniej ja o niczym nie wiem. Możesz próbować kompilować sobie OpenOCD z dodanymi patchami na ST-Linka, są albo już w repozytorium, albo jeszcze na gerrit. A samo programowanie możesz przeprowadzić przez bootloader na UART, pewnie jakiś programik do tego celu się znajdzie na linuxa. 4\/3!!
Ustawiasz piny (zworki) boot i uruchamiasz bootloadera przez USB po resecie mikrokontrolera. Do tego masz program na PC z STM. Opcja USB dostępna jest tylko w lepszych procesorach. W podstawowych masz tylko programowanie przez RS232 - musisz kupić/zrobić przejściówkę i podłączyć do odpowiednich portów (w obudowie LQFP48 jest to np. PA9.PA10) i potem...
Koledzy proszę, wręcz błagam Was o pomoc...rozwaliłem swojego discovery F0. Tzn. chciałem pobawić się I2C, skapnąłem się, że mam na liniach I2C1 lcd hd44780 więc przestawiłem jego kabelki na portA...niestety również na SWD Pin PA13 i PA14. Nie skapnąłem się, co za destrukcyjne działanie wykonuję. Rozwaliłem chyba bootloader w płytce, nie mogę wcale...
stm32 bootloader bootloader stm32 własny stm32 prosty bootloader
głośne wirowanie pralki prędkość nagrywania magnetofon szpulowy passat przeróbka
hulajnogi elektryczne problemy różnicówka brzęczy
Ekspres Krups EA89** - kawa za gorąca mimo wymiany czujnika NTC Oleo Mac 937: Objawy zużytego pierścienia tłoka