Żeby był dostęp bez opóźnień z wielu źródeł. (CPU/DMA/...) CPU nie musi czekać na SRAM1 kiedy DMA zajmuje się SRAM2. Do pamięci CCM ma dostęp tylko CPU. Jest to pamięć tylko na dane.
Zwykle nie mają i zwykle nie jest to problemem, gdyż można bezproblemowo zapisywać wbudowaną pamięć flash, aby sobie taki EEPROM "emulować". Często układy te mają też podtrzymywana bateryjnie pamięć (np. do 4kB w STM32F4), która również może zastąpić EEPROM.
Z kodu wynika pewna ciekawa rzecz... Otóż z tego co widzę stos znajduje się... w środku sekcji .bss - nie wiem czy to normalne, ale nie sądzę... 4\/3!!
Aktualizacja z września 2025: zobacz tutaj, aby uzyskać szczegółowe informacje na temat konwersji STM32 przez UART zamiast J-Link (tj. J-Link nie jest wymagany) https://www.elektroda.com/rtvforum/viewt... (dzięki (at)max4elektroda!) zobacz tutaj, aby uzyskać wyższą wersję przekonwertowanego oprogramowania CK-Link Lite dla STM32...
Nie piszesz o Cortex-M, a o STM32 - popraw temat. U innych producentów uC wygląda to zupełnie inaczej. Pamięć spod adresu 0x08000000 w normalnym trybie pracy STM32 zostaje odwzorowana również pod adresem 0 - jest dostępna do odczytu (tylko) pod dwoma adresami.
To jest tzw. bluepill i wszystkie opisy, które się go tyczą pasują. Zworki, w dużym uproszczeniu, służą do wyboru bootloatera. Masz wgrany jakiś soft, który emuluje pamięć masową. Ja zawsze używam ST-Link'a, nie korzystam z bootloaderów, ale można wgrywać przez port szeregowy, jak i USB (ale musisz mieć wcześniej wgrany jakiś niestandardowy bootloader,...
Zacznijmy od tego, że OpenOCD nie uruchamia się poprawie, wiec warto byłoby dochodzić do sprawy "krok po kroku". Przede wszystkim plik lpc2xxx.cfg NIE JEST przeznaczony do uruchamiania bezpośredniego, należy ZAWSZE użyć któregoś z konkretnych plików. Tymczasowo możesz użyć pliku lpc2148.cfg, ale najlepiej przerób go sobie na lpc2146 - komentarze w środku...
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...
Jeśli zmiana rozmiaru buforów powoduje że program przestaje działać oznacza to że prawdopodobnie kończy się pamięć na stosie. Kilka rozwiązań jest. 1. zwiększyć stos 2. zdefiniować bufory jako static albo zmienne globalne wtedy nie trafią na stos 3. jeżeli idea projektu na to pozwala podzielić odczyt na mniejsze paczki i zapisywać po trochu(używając...
Dało by się. Polecam program ISP Programmer (już niestety nie rozwijany ale i port LPT też już w nowych sprzętach rzadko się pojawia)- za jego pomocą dało się programować AT89S52 (czyli troszkę lepsze 8051-a właściwie 8052 z Atmela). Inną kwestią, że 8051 i jego krewni to w porównaniu do AVRów słabizna obliczeniowa. AVRy są to mikrokontrolery RISCowe...
Ostatnia rzecz jaka przychodzi mi do głowy, to zabezpieczenie pamięci przed zapisem. Do odbezpieczenia może być konieczne ustawienie pinu WP w stan wysoki, po czym zapisanie do rejestru statusu (instrukcja WRSR) wartości 0x00 (cała pamięć odbezpieczona, brak zabezpieczenia rejestru statusu pinem WP) [zapis musi być poprzedzony przez WREN]. Innych firmwareowych...
To może zacznijmy od początku. Od samych mikrokontrolerów. Nieco wybiórczo i subiektywnie. 1. MCS-51 - Wielu z nas rozpoczynało od tego w latach '80 ubiegłego wieku. Prosta konstrukcja, niewiele peryferii: GPIO, liczniki, UART. Programowanie praktycznie tylko w kodzie maszynowym, potem ewentualnie w języku C dzięki raczkującemu jeszcze SDCC. Firma Atmel...
Skrypt linkera z Cube'a "działa" tak, że na początku pamięci ram ląduje sekcja data (zmienne inicjalizowane przy starcie programu - lokalne statyczne i globalne), potem jest bss (zmienne zerowane przy starcie programu - nie inicjalizowane statyczne i globalne). Następny kawałek to _user_heap_stack - czyli sterta i stos "w jednym". Rozmiar data i bss...
Witam. Pracuję nad projektem, w którym chcę wykorzystać kilka kości równoległej pamięci RAM i płytkę STM32F4 - Discovery z procesorem STM32F407VG. Procesor jest w obudowie 100-pinowej i na tylko jedno wyjście CS(NE1) i właśnie, żeby to ominąć to tak wymyśliłem, żeby podpiąć sobie 4 pamięci i sterować CS dla każdej z nich softem. Robił ktoś tak, są jakieś...
Witam mam kilka pytań odnośnie pamięci RAM w stm32f4. A mianowicie jest ich kilka. Na wstępie dodam że korzystam z przykładu Freddiego ram : org = 0x20000000, len = 112k aux_ram: org = 0x2001C000, len = 16k ccm_ram: org = 0x10000000, len = 64k bkp_ram: org = 0x40024000, len = 4k (skopiowane z linkera) RAM to zrozumiałe zwykły ram tam są przechowywane...
Witam, Mam problem z emulowanym eepromem. Główną przyczyną są Gaskoin oraz Freddie Chopin :) gdyż oczywiście racjonalnie namówili mnie do niekorzystania z bibliotek lecz do pracy na rejestrach. Jest to teraz również i według mnie wiele leprze rozwiązanie lecz wiążą się z tym pewne problemy. Na temat tego jak w oparciu o same rejestry zapisywać trwale...
Witam Rozumiem, że chcesz aby cały kod wynikowy został umieszczony w pamięci RAM. Żeby tego dokonać należy zmienić adres sekcji ROM w skrypcie linkera: "rom (rx): org = 0x08000000, len = 128k" na pamięć RAM(zaczyna się od adresu 0x20000000 dla stm32). Pamięć RAM również należy przesunąć o odpowiedni adres. Jeżeli masz w kodzie przerwania to nie zapomnij...
Kolejny projekt lutownicy? Przedstawiam projekt stacji lutowniczej pod groty T12 dla każdego. O problematyce i wnioskach opowiem później, więc pomijając wyjaśnianie co to lutownica - jaki jest koń każdy widzi - zapraszam najpierw do galerii. Nadmienię tylko, że nie każdy ciekawy projekt jest warty naszego czasu! :) https://obrazki.elektroda.pl/3274539000_...
Witajcie! Dawno się nie oddzywałem, ale to nie znaczy, że spocząłem na laurach :D Obecnie mój moduł CFX dostał łatkę v3.0 i jest ostateczną wersją modułu efektora dla mikserów Behringera zastępującą oryginalny moduł DPM5/M. Tutaj natomiast chciałbym się pochwalić czymś, co planuje rozwijać równolegle, a mianowicie niezależny stereofoniczny efektor bazowany...
Tak, próbowałem na wiele sposobów. Według tego tekstu z dokumentacji wynikało by, że mój przypadek to ten drugi, czyli po odblokowaniu zapisu pamięć nadal jest chroniona. Robię więc tak jak sugerują po kolei : while(FLASH->SR & 1<<0); //BSY: Sprawdzam czy flash nie jest zajęty. FLASH->CR |= 1<<5; //CR_OPTER_Set FLASH->CR |=...
zepsuta pamięć
Cześć :) W związku z tym, że w miejscu w którym pracuję istnieje potrzeba programowania pamięci SPI których wsad jest taki sam, stwierdziłem że zbuduję urządzenie, które będzie kopiowało zawartość jednej kości do drugiej. Niby nic, ale z czasem chciałbym zająć się zawodowo projektowaniem oraz programowaniem mikrokontrolerów, więc jako pierwszy projekt...
To, że tam jest podłączone 8 MHz, to nie znaczy, że z taką częstotliwością pracuje, tym bardziej że bez podkręcania STM32F405 działa do 168 MHz. Racja, czyli... jeszcze gorzej. Przejrzałem źródła i rzeczywiście STM32 w tym projekcie pracuje z taktowaniem 168MHz. Wiem, że takie emulatory pamięci ROM w 8-bitowcach od biedy dają radę (oczywiście STM32...
https://obrazki.elektroda.pl/6347997200_... Cześć. Od jakiegoś czasu chodził mi po głowie projekt dzięki któremu mógł bym sobie sterować światła w domu i w ogrodzie poprzez wifi. Funkcjonalność banalnie prosta i spotykana w zapewne tysiącach rożnych projektów, jeszcze jeden nie zaszkodzi. :) W trakcie rozmyślania i projektowania kilka...
https://obrazki.elektroda.pl/5597652300_... Dzisiaj testujemy kolejną stację lutowniczą na groty T12. Yato YT-82462 75W z zewnątrz wydaje się być nieco bardziej masywna i stabilna niż testowany wcześniej Ksger, zainteresowała mnie również obiecana możliwość szybszej wymiany grotów niż w przypadku podobnych produktów tego typu. Sama...
W wielu aplikacjach pamięć NVS tego mikrokontrolera służy do zapisu klucza sieci Wi-Fi i hasła, dlatego można ją uważać za niezawodną.
https://obrazki.elektroda.pl/9235837400_... Głównym założeniem projektu, było stworzenie alarmu motocyklowego, z czujnikiem na bazie akcelerometru, oraz powiadomieniami SMS. System posiada Bluetooth z aplikacją mobilną do zmiany ustawień, kontrolę stanu akumulatora, oraz kodowany pilot z systemem rolling code. PILOT https://obrazki.elektroda.pl/2233369800_...
Cześć, W wolnym czasie uczę się układów STM32 na płytce STM32_Smart_v2 (https://stm32-base.org/boards/STM32F103... Próbuję uruchomić pamięć eeprom, która jest na tej płytce na podstawie kursu (https://forbot.pl/blog/kurs-stm32-11-i2... Niestety program nie działa - funkcja I2C_EVENT zwraca error....
Witam ,Posiadam pilot od łódki Viking Boat. Podczas próby wgrania oprogramowania przez pomyłkę została usunięta cała pamięć z układu. Mam pytanie: Czy istnieje możliwość zgrania całej zawartości flash z układu STM32L dawcy i wgrania go ponownie? Nadmienię, że posiadam kopie plików BIN i HEX, ale po próbie ponownego wgrania programem STM32 ST-LINK UTILITY...
Inot, może nie wszystkie układy na które trafię (z demontażu), będą zabezpieczone. Chcę się nauczyć odczytywać, kopiować i programować czyste. Można rzec klonować. Ale nie po to by kogoś okradać z jego własności intelektualnej, ale po to by móc zrobić kopię zapasową na własne potrzeby. Będąc na resortowej emeryturze uczę się całej elektroniki praktycznie...
Jednym z układów jest mikrokontroler STM32F407VGT6, który pełni rolę centralnego kontrolera lotu (Flight Control Unit – FCU). Podstawowe dane techniczne Rdzeń i wydajność CPU: ARM Cortex-M4F (z FPU – jednostką zmiennoprzecinkową) Częstotliwość: do 168 MHz DMIPS: ok. 210 DMIPS DSP: tak, rozbudowane instrukcje DSP Pamięć Flash: 1 MB SRAM: 192 KB (112...
https://obrazki.elektroda.pl/9032300100_... Witajcie moi drodzy. Przedstawię tutaj unikalny zestaw płytek uniwersalnych pod elementy w obudowach SMD, obejmujący TQFP100, TQFP64 i TQFP48, różne SSOP, SOIC itp. Płytki te wyróżnia sprytne i uniwersalne poprowadzenie ścieżek, ułatwiające uruchomienie dowolnego mikrokontrolera (gotowe zworki...
https://obrazki.elektroda.pl/8760486500_... Po przygodach z matrycami zbudowanymi na max7219, przyszła pora na coś bardziej zaawansowanego. Miałem w planach zrobienie własnej matrycy z 1500 jednokolorowych ledów 0603, 3 rejestrów przesuwnych i paru elementów dyskretnych, ale jak już ją zaprojektowałem, to przypadkiem trafiłem na matryce...
No to wyjątkowo słabo tą dokumentację przeglądałeś (; Na pierwszej stronie manuala masz coś takiego: For information on programming, erasing and protection of the internal Flash memory please refer to: ● PM0075, the Flash programming manual for low-, medium- high-density and connectivity line STM32F10xxx devices ● PM0068, the Flash programming...
https://obrazki.elektroda.pl/9151185000_... Autor poniższego zestawienia jest inżynierem i konsultantem wsparcia dla systemów wbudowanych. W swojej karierze poznał on szereg różnych architektur mikrokontrolerów, różniących się wydajnością, wyborem peryferii, poborem zasilania etc. Wybór odpowiedniego układu stanowi zawsze o sukcesie...
Mam zestaw STM32 discovery ale mam z nim problem. Po podłączeniu do komputera wykrywa go jako pamięć masową. Próba zaprogramowania w uVision kończy się komunikatem Can't halt the core. Zainstalowanie ST- link utitliy i aktualizacji firmware nie pomaga. Zestaw nowy, otrzymany od wykładowcy.
Witam. Zaopatrzyłem się niedawno w aplikację zwaną Flash loader demonstrator. Umożliwia ona m.in. zapis i odczyt pamięci programu mikrokontrolera STM32 przez bootloader poprzez RS232. Gdy chciałem odczytać pamięć flash i zapisać obraz pamięci w pliku hex mocno się zdziwiłem, gdyż plik miał rozmiar 319744 bajtów, a flash mojego STM32F103RB ma "tylko"...
kondensatory bliżej Naprawdę uważasz że da się bliżej przy jednowarstwowej? Zauważ że odległość C16 od xmegi to 1 długość kondensatora w obudowie 0603 od padów C15 2 dwie długości. W jednym przypadku można C2 przysunąć do pamięci, odsuwając pamięć w prawo. Spróbuj przysunąć C11,C9,C8 albo C15 bliżej. Umiejscowienie rezonatora w ten sposób jest chociażby...
https://obrazki.elektroda.pl/9151185000_... Druga część artykułu o najtańszych nowych mikrokontrolerach z roku 2017. Ekosystem developerski Środowisko developerskie mikrokontrolera ma ogromny wpływ na jakość pracy z nim i w konsekwencji - na produktywność. Na to składają się różne czynniki – jakość IDE, dostępne biblioteki, płytki...
KAM-ELE-ON Hot Water Visualizer V5.7.3 https://obrazki.elektroda.pl/3337561500_... https://obrazki.elektroda.pl/2004735900_... https://obrazki.elektroda.pl/1180862600_... https://obrazki.elektroda.pl/1239958000_... Czym właściwie jest? Powiem w skrócie: Odpowiedzią na nurtujące pytania...
Dziękuję za Twoją odpowiedź! Kilka komentarzy: Od oprogramowania sprzętowego > 64 wartości ustawień nie są już przechowywane w pamięci wewnętrznej STM32, ale w chipie U2, który nie jest Eepromem, ale mikrokontrolerem komunikującym się z STM32 poprzez I2C Masz rację, tak jak mówiłem pamięć EEPROM w DSO150 i DSO138mini nie jest prostą pamięcią EEPROM,...
https://obrazki.elektroda.pl/2759406900_... 8-bitowe mikrokontrolery nadal można znaleźć w wielu projektach, ale dzięki nowemu, niedrogiemu 32-bitowemu z rdzeniem AMR Cortex-M0+ taktowanym 48 MHz — STM32C0 — firma STMicroelectronics dąży do wyparcia 8-bitowych jednostek. Co może się odbyć wskutek: „ograniczonego wpływu...
Jak mogę podłączyć pamięć SRAM lub SDRAM (bardziej SDRAM bo większa pojemność) do mikrokontrolera STM32 lub jakiegoś AVR-a? Chodzi mi o zwykły zapis i odczyt danych z takiej pamięci. Jak to wygląda sprzętowo i programowo?
Jest to płytka STM32F103RB NUCLEO. Podpięcie pinu BOOT0 pod masę nic nie daje nadal program zanika Sprawdziłem pamięć flash poprzez STM32 ST-LINK Utility i jest w niej program aczkolwiek nie działa http://obrazki.elektroda.pl/5116944600_1... Dodam jeszcze, iż kiedy połączę się płytką w STM32 ST-LINK Utility to wciśnięcie przycisku reset...
https://obrazki.elektroda.pl/5728376300_... Black Pill to nowa płytka prototypowa. Black Pill to następca popularnej i niedrogiej Blue Pill. Sercem Black Pill jest układ STM32F401CCU6 lub STM32F411CEU6 firmy STMicro zawierający jednordzeniowy procesor ARM typu Cortex-M4F o taktowaniu odpowiednio 84MHz lub 100MHz. Kompatybilność Black...
Widzę, że się koledzy zbijają z Bartola to Ci napiszę: Embedded flash to pamięć wbudowana w układ służąca albo do wykonywania kodu albo za pomocą specjalnych instrukcji jako pamięć danych, którą w dzisiejszych czasach również może program przeprogramować. Nikt nigdzie nie pisze, czy jest to pamięć nand, nor, etc. bo dla Ciebie nie jest to istotne. W...
https://obrazki.elektroda.pl/7157591100_... Wydawać się może, że na temat konwerterów USB napisano już wszystko i nic nowego się nie pojawi. Nic bardziej mylnego. Najczęściej stosowane są konwertery USB-UART. Mają one szereg wad odczuwalny zwłaszcza przy współpracy z AVR a co za tym idzie większością Arduino. Wykorzystanie UART stwarza...
Nie chce zakładać nowego tematu z I2C bo tematów jest sporo i dużo jest wałkowane o i2c w stm32. Mam procesor stm32f103 i niestety ale mam duży kłopot z tym interfejsem. Otóż problem dotyczy odczytu i czasami zapisu pamięci eeprom. Czytałem, że problem może być z zakłóceniami na szynie. Stosowałem różne metody DMA, przerwania i odpytywanie. Wszystko...
Jeśli to nie tajemnica, to do czego ten Fnirsi kupiłeś, skoro to taka kicha? Ktoś Cie namówił, czy tak dla relaksu? Jak wspomniałem jest projekt pisania własnego softu na to cudo, a że interesowały mnie akurat procesory Allwinner-a (F1C100/F1C200 - czyli ARM926EJ-S z wbudowaną pamięcią DDR1, USB OTG, sprzętowym dekoderem/enkoderem H.264 itd. w przyjaznych...
Bardzo często EEPROM jest emulowany w pamięci FLASH w sposób niewidoczny dla użytkownika. Nie można emulować funkcjonalności takiej jak wytrzymałość na ilość cykli zapisu/kasowania albo możliwość nadpisania pojedynczego bajtu. Jak nie można? Potrzeba 1kB EEPROM 100'000 zapisów (jak np w AVR), przeznacza się na pamięć 10kB FLASH, która ma ograniczenie...
Najtaniej : STM32 z magistralą zewnętrznej pamięci + podstawka pod pamięć podłączona do tejże magistrali + klon jLinka + oprogramowanie jFlash. Kilka lat w ten sposób programowałem różne pamięci serii S29GL. Teraz przerzuciłem się na BX48 Batronixa, ale to droga zabawka a te tanie nie koniecznie chcą programować S29GL.
Ależ jest i to znacznie lepszy mechanizm bo zabezpieczyć procesor można zarówno programatorem jak i z poziomu programu a odbezpieczenie wymaga skasowania całej pamięci i odblokowanie nie nastąpi do momentu kiedy cała pamięć nie będzie wykasowana (algorytm sprawdza wszystkie komórki - zabezpieczenie przed trikiem z wyłączeniem zasilania po rozpoczęciu...
Z racji że STM32 ma liniową pamięć oraz możliwość zapisu do flasha danych z poziomu aplikacji postanowiłem wykorzystać go do symulacji eeprom. Zapis danych do flash działa OK. Natomiast mam problem z zainicjowaniem struktury pod konkretnym adresem. const D DFLASH __attribute__ ((section(".variables&q... = { {{40,20},26},...
pamięć stm32 pamięć flash stm32 stm32 zewnętrzny pamięć
kontrolka otwartej skrzyni zamiennik głośnik pioneer źródło napięcia stałego
żarówka rzutnika regeneracja obudowy radia
Skoda Fabia 1.6 brak mocy, huczenie silnika, ujemne korekty, spalony katalizator – diagnostyka Schemat wzmacniacza m.cz. tranzystorowego RADMOR FM3011 – płytka 3011-1500/B708, naprawa i modernizacja