Ż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...
Ja nie tworzę żadnej zmiennej tylko wskaźnik któremu każę wskazywać na pewien adres. Fredie :) dziewięć dni temu prosiłem cię oto żebyś wkleił ten kawałek pierońskiego kodu na forum i się doczekałem tylko kilku krotnego chwalenia się tym, że go masz i że jest taki genialny ... . Pamięć jest odblokowana do zapisu tylko jednokrotnego i to zaraz po resecie....
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...
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_...
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...
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...
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...
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 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_...
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...
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...
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...
zepsuta pamięć
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ą.
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...
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....
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...
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...
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...
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...
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...
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...
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?
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/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...
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...
n"]tylko o to, że akurat F411 jest wg mojej pamięci nowszy zarówno niż cała rodzina F3 jak i F469 Nie znam chronologii, ale F3 mają wiele udoskonalonych peryferiów w porównaniu do F4 np. krytykowany brak sprzętowego sterowania DE dla RS485. Ja kolegi całkiem nie pojmuję. Na początek to proponuję zapoznać się z podziałem STM32 zrobionym przez ST https://www.st.com/en/microcontrollers-m...
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"...
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...
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...
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ęć
wymiana grzałki drukarki eksploatacja tania pisać atmega
potencjometr samsung piekarnik potencjometr samsung piekarnik
Sterownik do modemu LTE Lenovo YB1 - skąd pobrać? Spawarka Kraft Dele - problem z igomatem