Podajesz jakieś dziwne nazwy, zamiast posługiwać faktycznymi nazwami. Nie da się nawet znaleźć tych dokumentów. W Twoim uC BOOT1 jest option bitem i jest ustawiany programowo. http://www.st.com/web/en/resource/techni... jest o tym wzmianka tutaj na stronie 12. At startup, the boot pin and boot selector option bit are...
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...
Witajcie, właśnie się bawię pamięcią Flash w STM32F0DISCOVERY (chcę się nauczyć obsługi). Efekt? Chyba zablokowałem możliwość zapisu... Kod (dopiero się uczę, więc komentarze mogą zawierać błędy): [syntax=c]#include "stm32f0xx.h" #include "stm32f0_discovery.h" int main(void) { RCC -> AHBENR |= RCC_AHBENR_GPIOCEN;//LEDY GPIOC -> MODER |= GPIO_MODER_MODER8_0...
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...
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...
Jak zweryfikować jedno lub drugie? Mógłbyś nieco rozszerzyć/nakierować? W konfiguracji jest tyle różnego rodzaju zmiennych, że dla początkującego trudno jest od razu wszystko objąć. Stąd niestety mogą się pojawić dość trywialne problemy. EDIT: Wygląda na to, że udało się znaleźć i wyeliminować problem. Reset był powodowany przez hardware'owego watchdoga....
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...
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...
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"...
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...
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...
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...
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!!
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....
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? (read out protection) RDP =AA = LEvel 0, no protection - nic nie włączałem - ale sprawdziłem i nie ma żadnego write/read...
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...
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...
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...
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!!
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...
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....
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!!
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...
Cześć, używam czegoś takiego jako bibliotek. Mógłbyś sprawdzić co tu może nie grać? Na moje oko to coś z funkcją wysyłającą tekst lub liczbę jest źle. Zależy mi abym nauczył się wyświetlać na nim jakieś napisy. Dotyku narazie nie chcę. Plik c [syntax=c] #include "ft800.h" #include "main.h" #include "notify.h" #include "spi.h" #include <stdlib.h>...
FPU jest włączone (Opcja "FPU Hard" w Configuration -> Compile -> Options -> FPU). Jeśli wybiorę "Not use FPU" to mi się chyba licznik "przekręca" - jest różnica w czasach. W linku, który podałem gość używał opcji "FPU Soft" ale dlatego, że biblioteka PDM mu nie działała. Co do zegarów to wydaje mi się być ok. Czasy na TIM1, który wyzwala ADC...
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...
Witam. Mam problem z wybudzaniem (z usypianiem chyba też) procesora z trybu Standby za pomocą pinu WKUP. Procesor chyba wchodzi w ten tryb, bo pobór prądu maleje. Ale to chyba nie jesty tryb Standby bo pobór porądu maleje tylko do 2mA a piny IO zachowują swój stan. Kod jest raczej prosty i nic nie robi poza włączeniem wyświetlacza, odczekaniem kilku...
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: Niestety żadne diody się nie zaświeciły. Po kolei, nie za dużo rzeczy naraz, bo się trochę robi chaos. Spróbuj ten plik .bin wgrać prosto z ST-link Utility albo po prostu kopiując go na ten...
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...
pomyslales o uzyciu scatter file? ;] W tam: target->options->linker odkliknij opcje "use memory layout from target dialog". Klik w przycisk "edit" z prawej strony. LR_IROM1 0x08000000 0x3C000 { ; load region size_region, zalozmy ze flash ma 256KiB ER_IROM1 0x08000000 0x3C000 { ; load address = execution address *.o (RESET, +First)...
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...
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...
Mały przykładzik z ustawieniami NVIC, priorytety przerwań i gdzie znaleźć opis w dokumentacji(PM0056): static void NVIC_conf(void){ //--------------------------------------... SCB->AIRCR |= (3<<8); //[Optional] Define interrupt fielding group, PRIGROUP[1:0]=11. see: PM0056 Programming...
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,...
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...
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. 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....
1. To trzeba sprawdzić czy nie musisz przeinstalować sterowników, albo doinstalować jakichś łatek. Gdzieś mi się kiedyś obiło o oczy na jakimś forum, że z st-linkiem pod Keilem były jakieś kłopoty. 2. Sprawdzić czy masz dobrze poustawiane zworki na st-linku (jeśli takowe są i wymagają ustawień), zajrzyj też do ustawień Options for target... |-> Debug...
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,...
Na załączonym obrazku masz na górze "Assembler Options" Znajdź podobną zakładkę "Preprocessor Options". Tam ustawia się ścieżki.
Witam. Próbuję uruchomić bibliotekę LwIP 1.4.0 i mam problem z jej kompilacją. A dokładniej z błędami typu: http://obrazki.elektroda.pl/8735841600_1...
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
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...
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....
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...
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)...
stm32 ustawienie option openocd option stm32 stm32 ustawić option
suszarka dziać honda civic chłodnica spawarka bester regulacja
keycard blaupunkt keycard blaupunkt
Stycznik AC‑7b do pompy obiegowej – sterowanie sygnałem bezpotencjałowym, suchym stykiem ROHTENBACH RH 25-60/180 – dobór stycznika z suchym stykiem i schemat połączenia