Po prostu zignoruj istnienie BOOT0, domyślnie option bytes są ustawione tak aby CPU ignorował jego istnienie.
Może pamięć się "zalock'owała" (ustawiły się przypadkiem flagi "option bytes") ? Mnie się to zdarzyło wielokrotnie. Do unlock'owania procesorów STM32 używam programatora J-Link i oprogramowania z firmy SEGGER a konkretnie "JLinkSTM32.exe". Jest to specjalnie napisany program do takich właśnie sytuacji. W ST-Linku powinien pomóc Masss Erase z programu...
Jak przeszukasz manual pod kątem frazy NADV to znajdziesz m.in. coś takiego: AF remap and debug I/O configuration register2 (AFIO_MAPR2) 4\/3!!
A co to jest OB? Option Bytes W sumie jeszcze będę musiał wybadać co tam jest nie tak. W debug to było wyrzucane, bo chodzi o zabezpieczenie (RDP, WRP), więc objawiło się dopiero w wersji release ;) Dorzuciłem to w którymś momencie i chyba zapomniałem sprawdzić, bo wyrzucone nie sprawiało problemu, hehehe :D Co ciekawe RDP się ustawiał, bo potem musiałem...
Eclipse CPP Juno SR1 - świeżo wypakowane od nowa Katalog Workspace - Wyczyszczony Projekt wypakowany do innego katalogu niz Workspace Odpalamy Eclipse Ustawiamy Workspace na C:\_Prog\Workspace Zamykamy ekran powitalny. File->Import->General->Existing Project into Workspace Wskazuję plik z archiwum projektu. Projekt został dodany Sprawdzam ustawienia...
Witam, jestem początkującym programistą procesorów ARM. Posiadam płytę ewaluacyjna MCBSTM32 z procesorem STM32F103RB oraz środowisko do programowania Keil uVision3. W zestawie jest rowniez programator ULINK Cortex. Na początek chciałem zaprogramować program demonstracyjny "Blinky" dla tej płyty. Wszystkie ustawienie "option for target" (device, target,...
Musisz ustawić bajt RDP pod adresem 0x1FFFF800 (option byte). Oczywiście wcześniej należy umożliwić sobie zapis pod ten adres. Wszystko jest opisane w PM0042. Być może w CMSIS udostępnione są jakieś gotowe funkje, ale to może wypowie się ktoś bardziej doświadczony. Jak sobie nie poradzisz z manualem to powalczymy razem :D
Dostałem płytkę z zablokowanym prockiem STM32F103C8T6, niestety nie mogę się dostać do niego ani JTAGiem(loader failed) ani przez serial bootloader - nie widzi procka. Poprzedni użyszkownik twierdzi, że zaznaczył wczystkie opcje dotyczące: - read protection, - user option bytes - flash memory write protection option bytes w programie Flash Loader Demonstrator....
Podłączyłem kabelkiem BOOT0 do +, odpaliłem STM32 ST-Link Utility, po wyborze opcji Erase Chip wyskakuje komunikat: 23:28:11 : Some flash pages are write protected! Nie mogę skasować pamięci flash. Ustawiłem aby łączyć się z urządzeniem "connect under reset". Jak trzymam przycisk reset i próbuję skasować flash, jest tak samo. Gdzie jest opcja hardware...
Nie no jak już zacząłeś to skończ :) Zaciekawiło mnie to bo przyda mi się duża szybkość. Czytałem o nawet 1Mbps w trybie synchronicznym. Możesz mi chociaż podać o którą bibliotekę ci chodzi? Jakikolwiek link? Bo trochę tego w google znalazłem i nie wiem o którą ci chodzi? Ja bym chetnie skonczyl gdybym mial cos wiecej do zaoferowania ;-) Jezeli chodzi...
Jeżeli masz kwarc o innej wartości, to w kodzie przed załączeniem pliku stm32f4xx.h musisz tą częstotliwość zdefiniować: Kod C - Do GCC też można przekazywać opcje poprzez wywołanie i to w dokładnie taki sam sposób - wystrczy w Makefile w odpowiedniej linii dopisać kolejną definicję. 4\/3!!
Ok, ale nadal nie rozumiem - Co z tego że że odpowiedni SFR zapiszę np. w trakcie programowania, jak przecież żaden rejestr nie utrzymuje wartości bez zasilania - po wyłączeniu napięcia zasilania wszystkie rejestry tracą swoje wartości. Wytłumacz jaśniej, bo zupełnie nie wiem jak to ma działać. Czy to jest jakiś rejestr w pamięci flash? Ustawiany jest...
Wejdź sobie w ST-link Utility i tam w ustawieniach Option Bytes można wybrać z listy poziom RDP. 0 to brak ochrony, 1 to ochrona przed odczytem i przy zmianie z 1 na 0 wykonuje się z automatu MassErase, a poziom 2, który da się ustawić tylko z programatora jest niby permanentny i już nic z tym nie zrobisz. Wydaje mi się natomiast, że mylisz się co do...
Obrałeś trochę złą drogę, po co się tak męczysz w tym przerwaniu skoro RTC przecież w swoim liczniku przechowuje czas w sekundach. Przy ustawieniu czasu wpisujesz tą wartość do licznika a potem RTC sam go zwiększa co sekundę nawet na zasilaniu bateryjnym ;) Jak potrzebujesz sprawdzic godzinę to odczytujesz tylko ten licznik i odpowiednio przeliczasz...
Od jakiegoś czasu próbuję odpalić oszukanego Black Pill'a - STM32F103C8T6 na Macbook'u Pro z OS Sierra używając środowiska Arduino IDE https://obrazki.elektroda.pl/5361253000_... Zamówiłem konwertery TTL z Aliexpress (CH340, CP2102 i YP-01- do tego nie mogę znaleźć sterownika). Pinout sprawdzony kilkukrotnie, TX do TX, RX do RX, 3,3V...
Tak, to DIY. Ustawianie czegokolwiek w debuggerze nic nie da skoro openocd nie łączy się i kończy działanie. W plikach nic nie zmieniałem, oto one: stlink-v2.cfg stm32f4.cfg Only debugging on evaluation boards is allowed. Debugging on custom hardware is not supported and not allowed
Sprawdziłem to i zwracam honor freddie :) , po poprawnym skonfigurowaniu optionbytes - a można to zrobić w ten sposób: [syntax=c]while(FLASH->SR & 1<<0);//BSY: Sprawdzam czy flash nie jest zajęty. //Jeśli jest to będzie się kręcić pętla i kręcić. FLASH->OPTKEYR = 0x45670123;//Jak taką sekwencją zapiszę klucz, to się odblokuje jednorazowo...
Write protection jest ustawiany przez tzw. Option Bytes - najłatwiej chyba będzie go (jednorazowo) usunąć poprzez bootloader i programi Flash Loader Demonstrator albo przez JTAGa i OpenOCD - są specjalne komendy do tego celu. W nocie od ST - PM0042 Reading/programming the STM32F10xxx embedded Flash memory - jest opis sposobów odblokowania, u mnie strona...
Witam, Mam zainstalowany kompilator Sourcery CodeBench Lite 2011.09-69 oraz Eclipse 7.0.2. Próbuję skompilować przykład "IOToggle" z biblioteki ST, wzorując się na ustawieniach z TrueStudio, w którym nie ma problemu z kompilacją. Zmieniłem flagi na -mfloat-abi=hard i mam następujący błąd: arm-none-eabi-gcc -static -mthumb -mcpu=cortex-m4 -mfloat-abi=hard...
A możesz spróbować uruchomić OpenOCD "poza" Eclipse, a w konfigu w Eclipse jakoś zrobić tak żeby nie odpalało OpenOCD? Ewentualnie po prostu spróbuj zrobić tak, że to co wpisywałeś z linii komend podajesz do "OpenOCD options", a resztę opcji jakoś trzeba by wyłączyć - np "Use default config" albo "Use local config" i wskazać mu pusty plik (albo /dev/null"...
Niestety nie pomogło. Prędkość jest była ustawiona domyślna, właśnie 1000kHz, poniżej wklejam wyjście. Open On-Chip Debugger 0.8.0 (2014-06-07-21:57) Licensed under GNU GPL v2 For bug reports, read http://openocd.sourceforge.net/doc/d... WARNING! This file was not tested with real interface, but is assumed to work as this...
Tak, jestem 100% pewien bo sobie porobiłem debugger na wyświetlaczu LCD. To jest kod: [syntax=c]#include <stdint.h> #include <string.h> #include "stm32f10x_map.h" #include "LCD.h" #include "Init.h" #include "RESET_SYSTEM.h" #include "FLASH.h" int i = 0; uint32_t useroptionbyte = 0, WRPR = 0; int main(void) { rcc_init(); //RCC init włączający...
Niczego nie poprawiaj w ustawieniach Eclipse! (; Zrób tak - wejdź do opcji projektu, C/C++, Discovery Options i na obydwóch pozycjach (C, C++) kliknij przycisk "Clear". Potem wyjdź z opcji, przekompiluj projekt, zamknij wszystkie otwarte karty edytora, zamknij projekt, otwórz projekt i gotowe - błędów nie ma (; 4\/3!!
Wykonałem poniższą konfigurację: 1101417 Dwie pierwsze linijki kodu mam raczej dobrze bo wykonałem je zgodnie jak zaleca RM czyli dostęp do Option Bytes już nie jest chroniony. Poniżej case 2: 1101418 1101419 Mam tylko kłopot z wpisaniem odpowiednich bitów do WRP. Nie do końca wiem jakie tam mają zostać wpisane bity. Oraz czy wpisanie tych danych do...
Definicja tcp_timer_needed() jest w pliku tcp_impl.h, żródła w timers.c. Plik tcp_impl.h zaincludowany w tcp.c z resztą tu nic nie zmieniałem. Po dopisaniu #include "lwip/timers.c" program się kompiluje owszem i wszystko działa ale mam potem problem z kompilacją gdy chce dodać liczniki softowe pod freertos a to za sprawą includeowania pliku timers.h....
https://obrazki.elektroda.pl/5694434400_... Moduły zasilaczy warsztatowych, takie jak DPS5005, dostępne są od dłuższego czasum.in. na AliExpress. Doczekały się wielu recenzji, w większości pozytywnych. Jednakże często wskazywanym problemem z tymi modułami jest kiepskiej jakości oprogramowanie – interfejs użytkownika pozostawia...
Do debugowania używam GDB Hardware debuging z CodeSourcery. Wtyczka ta nie ma nic wspólnego z toolchainem który wymieniłeś. Do kompilacji używałem różnych Tool Chain między innym: Yagarto, Corss GCC, ARM Windows GCC... No to używałeś CodeSourcery czy nie? Po zaimportowaniu projektu, nawet bez kompilacji co dziwne wyskakuje 30 błędów dotyczących jednej...
Witam :) Mam specyficzny problem. Otóż zakupiłem sobie programator STLinkV2, który jakoś nie specjalnie chce mi działać z płytką ewaluacyjną eb-stm32_04 oraz OpenOCD. Objaw jest taki: C:\eclipse_arm\openocd-0.6.1>bin\... -f scripts\interface\stlink-v 2.cfg -f scripts\target\stm32f3x_stlink.cfg -c Open On-Chip Debugger 0.6.1 (2012-10-07-10:34)...
Jak chcesz gotowca, to wykorzystałem takie coś w projekcie LED Cube ( to co ciebie interesuje jest w 16 minucie ): Czyli wpisując znak "C" komputer robi takie obliczenie (67-65)*5 = 10, czyli automatycznie przesuwa wskaźnik tablicy na 10 miejsce, czyli na pierwszą kolumnę litery C. Następnie zmienna "i" wyświetla następne kolumny. Jakbyś miał jakieś...
Bardzo ciekawa sprawa. Nie mam niestety aktualnie dostępu do tego tunera. Jak tylko będę miał możliwość to oczywiście spróbuję to zabootować. Można by to też skompresować przez LZMA, przez co może obraz ten zmieściłby się we flashu Można by, choć z mojej perspektywy na ten moment nie ma sensu. Mam pendriva który ma ogromny rozmiar w stosunku do wewnętrznego...
Hej, chciałem was poprosić o pomoc w postawieniu FreeRTOS na STM32F407 VG discovery Board. Przeczytałem kilkakrotnie tutorial na stronie http://imagizer.imageshack.us/v2/320x240... Następnie dodaje pliki RTOS'a zgodnie z instrukcją http://imagizer.imageshack.us/v2/320x240... W kolejnym kroku dodaje FreeRTOSConfig.h do katalogu...
To może wgraj oryginalną zawartość z Nucleo F411 jaka jest w nówkach na dzień dobry, by przynajmniej sprawdzić Nucleo plus ST-link. On tam miga i reaguje na przycisk może pamiętasz: No jest jakiś postęp chociaż nie wiem czy można to nazwać postępem. Wgrałem ten program, wyrzucił mi jakiś błąd elf loadera ale ostatecznie znalazł się w pamięci: Dodano...
Witajcie, Pracuję na STM32 CL i do końca nie rozumiem zachowania się openocd. Plik mam poprawnie skompilowany (z przkładów freddiego ). W eclipsie sekcje GDB_Hardware Debugging mam ustawiona następująco: main->C/C++ Application: {wkazanie pliku: stm32_blink_led.elf} Debugger -> GDB command -> arm-none-eabi-gdb.exe Debugger...
Na załączonym obrazku masz na górze "Assembler Options" Znajdź podobną zakładkę "Preprocessor Options". Tam ustawia się ścieżki.
Witam, Stworzyłem płytkę z mikrokontrolerem STM32F407. Próbowałem ja zaprogramować przykładem "blink_led" ze strony Frediego i nie chciało działać. Oprogramowanie Eclipse + bleeding toolchain + openocd 0.7.0 zostało skonfigurowane wg tutoriala Frediego na Ubuntu. Nie chciało się poprawnie programować, więc próbowałem różnych porad z internetu, ale to...
To napisz może jak ustawiasz Option Bytes. Istnieje tutaj widoczna zależność - utrata komunikacji następuje chwilę po zaprogramowanie Option Bytes. Wartości z tych rejestrów ładowane są przy okazji resetu. Nie włączyłeś przypadkiem RDP?
No dobra, jest więcej uwag (; 1. Zylin Embedded CDT - nie jest zupełnie potrzebne, kiedyś bez tej wtyczki nie działała dezassemblacja podczas debuggowania. Można sobie więc darować, jeśli wszystko działa bez tego. 2. natomiast w pola Binary Parser Options wpisujemy kolejno: arm-linux-gnueabi-addr2line arm-linux-gnueabi-c++filt To jest dziwna sprawa,...
Szanowni, Napotkałem na problem z zabezpieczeniem pamięci Flash przed odczytem. Pracuję na płytce testowej STM32F103 Nucleo, piszę w C z użyciem SPL, edytor: System Workbench for STM32. Mianowicie, po zaprogramowaniu procesora za pomocą ST-LINK Utility v4.1.0 swoim kodem, w opcjach oprogramowania Target->Option Byts ustawiam opcję Read Out Protection...
Witam. Mam problem z połączeniem CubeIDE / programowaniem / debugowaniem przez przez SWD ( podłączone tylko 2 linie SWDIO/SWCLK bez NRST ) . Zaznaczę, że STM32programmer łączy się bezproblemowo bez dotykania/jakichkolwiek zmian uC->STLINK . https://obrazki.elektroda.pl/2348537100_... A w CibeIDE: STMicroelectronics ST-LINK GDB server....
Wstęp Poradniki pomagające w tworzeniu oprogramowania na mikrokontrolery skupiają się głównie na wykorzystaniu peryferiów samego mikrokontrolera, co jest zrozumiałe, ale niestety rzadko skncentrują się na części programu, która wykonuje się przed funkcją main. Poniższy poradnik ma na celu przybliżenie tej części programu na podstawie GNU ARM toolchain...
Udał mi się pięknie odpalić debugger. A zmieniłem następujące rzeczy w zakładce "Startup": - odznaczyłem "Reset and delay" i "Halt", - poniżej wpisałem: monitor reset monitor soft_reset_halt load - potem zaznaczyłem "Load image" a w "Image file name" lokalizacja pilku elf np:. ${workspace_loc:\lcd\Debug\lcd.elf} - w "Runtime options" zastawiłem jak...
To może ze względu na mniej doświadczonych kolegów (...), zrobiłbyś instrukcję krok po kroku jak taki projekt w Keilu stworzyć 1. Pobrać i zainstalować MDK-Arm w wersji najbardziej aktualnej. 2. Przy pierwszym uruchomieniu od razu przejść do Pack Installer -a - ostatnia ikonka na niższym pasku narzędzi. 3. Tam powinna się samoczynnie zaktualizować...
Niczego nie trzeba dodawać na sztywno, Eclipse potrafi sobie wszystko znaleźć sam. Zaimportuj przykład i zobacz jak tam są zrobione ustawienia "Discovery options" w opcjach projektu. Czasem za pierwszym razem Eclipse jest trochę oporny i wtedy trzeba go zmusić do pomyślenia przez chwilę - opis sposobu jest tutaj: http://www.freddiechopin.info/pl/artykul...
Program IAR jest jednym z podstawowych, dostępnych narzędzi do tworzenia oprogramowania na mikrokontrolery. Posiada kolorowe i wygodne środowisko graficzne, wraz ze zestawem zoptymalizowanych, standardowych bibliotek. Poniższy samouczek ma na celu pokazanie, jak skonfigurować te środowisko do wydajnej pracy. W autora praktyce sporym utrudnieniem są...
Rzeczywiście, wypisuje błąd związany z pamięcią stosu. Na początku zmieniam w linkerze : __main_stack_size = 4096; na __main_stack_size = 2048; błąd w konsoli w tym samym miejscu co wcześniej. lecz już konsola nie wypisuje błędów Możecie powiedzieć mi czy dobrze zabrałem się za to? Dodano po 21 gaskoin : tak ściągnąłem USB HID Demonstrator Release 1.0.2,...
Mam za zadanie zrobić funkcję aktualizacji oprogramowania przez sieć. Urządzenie oparte jest o układ STM32F427VGT6, posiadający 1 MB Flash. Ustawiając bit DB1M można spowodować podział tej pamięci na dwa tak samo zorganizowane banki, po 512 kB. Można by więc mając kod uruchomiony z jednego banku zapisać nowy firmware w drugim banku, przestawić bit BFB2...
Witam, programuję stm32f103rb w KEILu, do tej pory używałem optymalizacji '-O3' nastawionej na szybki czas wykonywania. Wszystko działało bez zarzutu, skąd nagle po kompilacji zaczął pojawiać mi się błąd init.c: error: C3900U: Unrecognized option '-O3'. i to w różnych innych programach, które do tej pory kompilowały się bez zarzutu a ja nic nie zmieniałem....
Witam, Próbuję wgrać do płytki STM32F746G-Disco demo z gotowych przykładów CubeMX. Niestety przy kompilacji w keilu znajduje się jeden error... nie wiem jak to możliwe skoro to gotowiec. Również przy próbie wgrania pojawia się komunikat: Error: Flash Download failed - Could not load file 'STM32F7-DISCO\STM32F7-DISCO.axf' Próbowałem znaleźć rozwiązania,...
W jaki sposób to się odbywa skoro MCU ma RDP level 1 Twój program może sobie pisać w dowolnym RDP do FLASH. Tylko firmowy bootloader nie działa. Musisz sobie napisać własny. dodatkowo bootloader jest nienaruszony podczas aktualizacji oprogramowania, bo urządzenie jest "żywe" podczas tej operacji (świecą i migają diody). No i co w tym takiego nadzwyczajnego....
W Option Bytes jest faktycznie opcja Read out protection i jest ustawiona na Enable. Zmieniam na Disable na dole na Apply i dostaje kolejny komunikat Can not connect to device! I to było by na tyle. Może jakoś wymusić trzeba reset lub boot aby program nie startował :?: I jeszcze jedno z chwila wejścia w Option Bytes dostaje komunikat Internal Command...
stm32 ustawienie option openocd option stm32 stm32 ustawić option
akumulator zamiennik odbiera poczt sender video schemat
makita migają diody immergas czyszczenie wymiennika
Jak wyjąć zablokowaną kapsułkę z ekspresu Delta Siemens EQ500 – po rozłożeniu zaparzacza leci tylko woda, brak kawy