Standard C nic nie mówi o kolejności zmiennynch w pamięci. Przyzwoity kompilator i linker będzie rozmieszczał dane w kolejności malejącego rozmiaru, a nieupywane będzei eliminował całkowicie. Chcesz mień znany rozkład danych - użyj struktury - kompilator nie ma prawa jej zoptymalizować, ale będzei stosował wyrównanie naturalne, czyli np. int32_t będzie...
Zupełnie naplątałeś... Po pierwsze, nie przejdzie *ple=99.1 . Dlaczego? Bo 'ple' jest wskaźnikiem na unsigned int , więc kompilator nie będzie przypisywał ci wartości zmiennoprzecinkowych do typu całkowitego, więc otrzymujesz ekwiwalent przypisu *ple=99; ... Po drugie, czy ty może dysponujesz debuggerem? Wypadałoby sprawdzić co dzieje się z pamięcią...
Dzięki za odpowiedź, ale to chyba nie jest w HAL... Zgadza się. Nie jest. Ale STM przepisał te algorytmy również na HAL i te źródła znajdują się np. w repozytorium CubeMx w ścieżce: Repository\STM32Cube_FW_F1_V1.6.1\Projec... To jest akurat dla tego typu uC który jest na tym Nucleo, ale jeśli potrzeba...
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.
Witaj ! Jeśli pamiętasz to do czego odnosi się: extern uint16_t VirtAddVarTab[NumbOfVar]; Czy jeśli chciałbym zaposać 2000 (0x07d0) pół słów (16 bit) to musiałaby zostać utworzona tablica adresów o tym rozmiarze? Jak Ci mało, to można rozszerzyć funkcje tak, aby korzystały ze dwóch zestawów stron parami, trójkami itd. Coś dokładniej można prosić?...
Witam, Ostatnio testowałem komunikację I2C z pamięciami z serii 24x. Testy były przeprowadzone na Arduino oraz STM32F103xxx. Pierwsze testy z pamięciami adresowanymi pojedynczym bajtem, czyli 24x01-24x16, działają poprawnie i jak oczekiwałem (opieram się o moje doświadczenia z rodziną PIC, tam właśnie tak to działa). Zapis/odczyt poza zakresem pamięci/adresów...
Przy okazji walki z "magicznymi cyframi" - zapewne korciło Cię (może nawet tak zrobiłeś) żeby do funkcji podać rozmiar "4", natomiast o wiele lepszym rozwiązaniem jest napisać "sizeof (nazwa_twojej_zmiennej)". 4\/3!!
Być może, że twoje opóźnienie wcale nie jest takie jak myślisz (skoro 3ms to typowy czas to 5ms spokojnie powinno wystarczyć). Zauważ, że jeśli zapisujesz pierwszą stronę to kolejną możesz zapisać jeśli wysłanie control byte zwróci ACK jeśli nie to pamięć jest zajęta i należy ponownie wysłać start i control byte. Co jeśli najpierw zapiszesz druga stronę...
Witajcie, Jak to jest z tym eeprom-em w STM32? Mam przykładowo procesor STM32L010K4, on ma w sobie 128B pamięci eeprom. Chciałbym z tego skorzystać, ale jakoś nigdzie nie mogę znaleźć żadnych przykładów czy filmów, wszędzie mówi się o emulacji tej pamięci w obszarze pamięci flash. W jaki sposób mogę w CubeIDE skorzystać z wewnętrznego eepromu?
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....
http://lmgtfy.com/?q=stm32+i2c+eeprom Pierwszy link: http://forbot.pl/blog/artykuly/programow...
W wyszukiwarce wpisz "stm32 eeprom emulation".
Witam. Mikrokontrolery STM32 mają w sobie embedded flash memory. Jest to pamięć EEPROM, NAND Flash czy NOR Flash? Nie znalazłem tego w manualu.
Witam i dzięki za odzew! Znaczy mam coś innego niż FF wpisać pod adres? Linijką w programie, żeby przy każdym starcie to pisał czy jakoś inaczej? Taka wątpliwość-czy to nie zakłóci "emulacji eepromu"?
Jak nie ma to musieli skasować <: 4\/3!!
Po pierwsze, ważna sprawa. Adres kości w funkcjach HAL podawany jest w konwencji 8-bitowej (przesunięty o jeden bit w lewo względem drugiej konwencji występującej np. w dokumentacji tej kostki). Czyli dla QN8025 używasz adresu 0x20 (00100000). Druga rzecz. Nie wiem czy Twój moduł posiada oporniki podciągające linie I2C. Sprawdź, ewentualnie dodaj jeśli...
Proszę bardzo! Wersja minimalna - zapamiętywanie jednej zmiennej na F0. No fakt, aż 36 wierszy. Funkcja getmode() odtwarza ostatnią wartość zmiennej przy starcie, Funkcja storemode() zapamiętuje nową wartość. W tym konkretnym przypadku jest ona wołana z przerwanie zaniku zasilania, więc wartość zapamiętuje się tylko jeden raz w cyklu pracy urządzenia....
Korzystam z stm32F103RB (nucleo) (trochę archiwalne) ;) Musze poczytać o tym emulowanym eepromie bo jest to dla mnie nowe zagadnienie. Pozdrawiam
Kiedyś muszę chyba wrzucić do netu moją wersję emulacji EEPROMu dla STM32 jak i inne biblioteki (; Może zrobię to wkrótce (; 4\/3!!
No fakt, obsługa Flasha z prostą emulacją EEPROM to aż 30..40 linii kodu. ;)
Ja korzystałem z tego i działało po jakichś lekkich modyfikacjach, tylko dla siebie musisz sobie przerobić pod f103 https://electronics.stackexchange.com/qu... I później piszesz sobie na starcie coś w tym stylu np. Dodano po 3 Tutaj widzę jest jakaś gotowa procedura dla...
To nie sprawa cortexa tylko pamięci flash dołączonej doń. Datasheet F103 podaje, że 10k cykli. (5.3.9 Memory characteristics, Table 54. Flash memory and data EEPROM endurance and retention)
Jak wspomniano - nie baw się w starocie 8051 typu AT89C2051. Ale nie polecam też zaczynać od AVR, naprawdę nie warto. Polecam zacząć od STM32. Możliwości jakie dają są przeogromne, AVR się do tego nie umywa. Owszem, na początku są trudniejsze, ale nie jakoś szczególnie - bez problemu dasz radę. Są też tańsze od AVR. Płytka STM Nucleo (coś podobnego...
Tam zaraz CRC. Jak EEPROM pusty to programujesz, jak nie to nie. Albert
Cześć, Nagrałem i oceniłem komunikację I2C pomiędzy STM32 i U2 i zdecydowanie nie jest to EEprom. W chipie znajduje się logika, która ocenia telegramy i reaguje na nie. Na przykład ustawienia są cyklicznie przesyłane z STM32 do U2 oraz odczytywane i zapisywane nawet jeśli w ustawieniach nie dokonano żadnych zmian, co oznacza, że U2 sprawdza, czy dokonano...
Nie ma eeprom. W STM32F103 faktycznie nie ma, można emulować w FLASH, ale STM32L1xx mają EERPOM.
Ja..... 1. programem zewnętrznym. lepsza opcja. 2. eeprom emulation (google)
To może zapytam jeszcze inaczej. Wiedząc że odczyt nie działa użyłem innej funkcji odczytu: [syntax=c]uint32_t readFromEEPROM (uint32_t address) { return (*(__IO uint32_t *)address); }[/syntax] Oczywiście jako address podaję adres komórki eepromu tego konkretnego mikrokontrolera. Efekt jest taki że funkcja zwraca jakaś bzdurną wartość, nawet kiedy funkcję...
Wydaje mi się, że autor tego artykułu poradził sobie ze wspomnianymi przez Ciebie kwestiami. Alternatywnie jeśli chodzi tylko o upgrade firmware'u można by wykorzystać działającą komunikacje USB<->PC w normalnym trybie pracy, przekopiować nowy firmware do zewnętrznej pamięci (np SPI) EEPROM/FLASH, po czym w bootloaderze zwyczajnie wyczyścić wewn...
Dokładnie przed świętami do celów 'naukowo/badawczych' czyli dokładnie w celu zaznajomienia się z 'STM32 & wewnętrzny EEPROM' zakupiłem na kamami.pl : Same procesory STM32L011K4T6 i STM32L021K4T6 plus NUCLEO z STM32L031 wszystko z EEPROM na pokładzie. Do produkcji zakupy będą oczywiście gdzie indziej. Jesli autorowi nie przeszkadza że to M0+ to proponuję...
Obawiam się, że rozmiar strony może zwiększyć tylko producent, i to na etapie projektowania układu. ;) Użytkownik może za to określić liczbę stron, których che używać.
Dopiero zaczynam pracę z STM32 i przechodzę przez ten kurs: [url=http://forbot.pl/blog/artykuly/prog... STM na Forbot Na razie szło gładko, tylko ten I2C mnie zatrzymał. O której funkcji mówisz?
Flash musisz kasować blokami, to nie działa jak EEPROM, że możesz skasować pojedynczą komórkę. Gdzieś widziałem przykład emulacji pamięci EEPROM za pomocą pamięci flash... O, już wiem, w książce p. Lucjana Bryndzy o ARMach 9 jest przykład, który wykorzystuje 2 bloki pamięci flash. Jest tam zrobione wirtualne adresowanie itp. Ale można zrobić też tak,...
Dzień dobry, mam mały problem odnośnie zasilania mojej płytki opartej na STM32. Wcześniej miałem użyte 2 stabilizatory liniowe serii LM2940S, lecz zauważyłem, że zbijając z napięcia ok. 13.8V na odpowiednio 5V i 3V, strasznie się one nagrzewają i w następstwie doszło do uszkodzenia jednego z nich, gdzie zamiast puszczać napięcie 5V, puścił 9V. Postanowiłem...
Nie ma właśnie nic więcej wspomniane o tym, przewija się raz jeszcze na początku ta fraza, ale żadnego objaśnienia Jest w DS objaśnienie (koło strony 500, "Theory of Operation" ) The EEPROM operates using a traditional Flash bank model which implements EEPROM-type cells, but uses sector erase. Additionally, words are replicated in the pages to allow...
Witam STM32l151CC dysponuje 8Kb EEPROMu.. Próbuję zadeklarowac zmienne w pamieci eeprom, zrobilem cos takiego: [syntax=c] const char EEPROM_moj[] __attribute__ ((section(".eeprom"))) ={10,20,30,40}; w pliku linkiera MEMORY { rom (rx): org = 0x08000000, len = 256k ram (rwx): org = 0x20000000, len = 32k eep (rw) : org = 0x08080000, len = 1k } SECTIONS...
znaczy nie da sie programować? szczerze to 1 raz spotykam się z STM8 i STM32 i muszę określić czy będzie to odpowiedni produkt dla nas
ale ma pamięć EEPROM na I2C 1Mbit, 1Mbit czyli 128kB w takim wypadku to niestety wciąż mało.
czy na dole programu arduino masz taką informację ? https://obrazki.elektroda.pl/6368333500_... nucleo-costam on COM z numerkiem. zrzuty ekranu w Windows robi się kombinacją klawiszy WIN + Shitt + S wówczas możesz dodać obrazek poprzez https://obrazki.elektroda.pl/3902446900_... Ctr+V Dodano po 2 ps. tak sie zapisuje...
Jednak dane nadawane przez EEPROM się spóźniają powinny być zatrzaskiwane na zboczu narastającym a one na narastającym się dopiero zmieniają jakby miały być zatrzaskiwane na opadającym choć wyraźnie w manualu jest napisane że pracuje przy narastającym. Coś źle doczytałeś The READ instruction outputs the serial data of the addressed memory location...
Bardzo mało prawdopodobne żeby zajeździć 8252. Ja robiłem na tym bardzo dużo programów (zwykle ta sama płytka uruchomieniowa, jakieś 3 lata "męczenia" układu) i do tej pory wszystko żyje. Nawet kiedyś napisałem sobie z ciekawości ile to razy zaprogramowałem ten układ (i ile czasu straciłem na programowanie). Nie było tu jakiś porażających wartości....
Wcześniej użyłem volatile bo chciałem wymusić odczyt tych tablic za każdym razem z pamięci FLASH. A nie z jakiegoś rejestru gdzie wartość mogła by zostać zapamiętana. W tym celu, żeby po przeprogramowaniu pamięci, program na pewno operował na nowych wartościach. Ale mam rozumieć że w tym wypadku volatile nie pełni roli wymuszenia każdorazowego dostępu,...
Szkoda pieniędzy na STM32VLDISCOVERY. Dostajesz ST-Link + CPU z klawiszem i 2 ledami. Bieda straszna. STM32F4DISCOVERY jest znacznie lepszy. I lepszy, i nie. Na pewno znacznie mocniejszy procesor i kilka peryferiów, ale to co raz jest zaletą, innym razem jest wadą. Ja od początku miałem kilka płytek discovery, w tym vldiscovery i F4discovery. No i...
Moja koncepcja przewiduje dwie takie kości, jedna z programem monitor Cobra1 na płycie głównej, druga w złączu cartridge, tak, że jeszcze nie panikuję W Twojej wersji nie lepiej będzie zrobić po prostu drugiego carta i wymieniać w razie potrzeby? Gniazdo masz przecież wyprowadzone na zewnątrz. ;) Ja u siebie wykorzystał bym A19 eprom'u do przełączania...
Witam Hmm, walczę od jakiegoś czasu z uruchomieniem toolchaina Eclipse + CodeSourcery itd dla STM32 (dokładnie STM32F107VCT) i mam pewien problem. Przejrzałem kilka różnych projektów, w których podpatrywałem pliki skryptowe linkera (*.ld) jak i pliki makefile. Na razie kompiluje mi się gdy przykładowo zrobię plik main.c z takim kodem: STM32F10x_StdPeriph_Lib_V3.5.0...
Zresztą wcale nie ma tu jakiegoś wielkiego zapasu - mikrokontroler działa na 3.3V, dopuszczalne napiecie dla M95512-W to 2.5V minimum - tylko 0.8V różnicy. Też sobie wybrałeś kość (M95512-R i F mają 1,8V i 1,7V). To faktycznie rodzi problem, bo STM32 działają poprawnie przy obniżeniu do poziomu określonego przez power down reset (n.p. 2V). Czyli nie...
Nie mam kodu na 407 bo zazwyczaj korzystam z zewnętrznej pamięci jeśli w ogóle. Ciężko coś powiedzieć bez analizy poszczególnych funkcji. Na F030 używałem takiej funkcji do zapisu i ewentualnego kasowania strony: [syntax=c]//EEPROM #define FLASH_END 0x0800 #define FLASH_ADDR 0x0803F800 //ostatnia strona (page 127) #define EEPROM ((uint16_t *)FLASH_ADDR)...
Tyle że Technoservice to taka firma, która nie chce gadać z prywatnymi osobami niestety. Emulacja EEPROMu przedstawiona przez ST dla STM32, ale ideę można zastosować do każdegu układu w zasadzie. Sprytne i wygodne [; http://www.st.com/internet/com/TECHNICAL... Dla swoich potrzeb "przerobiłem"...
Pomysł jak najbardziej OK, ale jednak jak dla mnie mało mobilny. Dodatkowo mało bezpieczne rozwiązanie, ktoś podejdzie wciśnie przycisk i ma hasło - gdyby hasła znajdowały się w jakiejś pamięci szyfrowanej (np. AT88SC0104C) i były autoryzowane chociażby mifare a karta/brylo leżałby ma urządzeniu (na środku jest troche miejsca). Widzę, że mniej więcej...
Pytanie mam bardzo krótkie: jak dodaje się pliki do projektu w Eclipse? Uruchamiam port FreeRTOS dla STM32 i przyszła pora aby dodać do tego zestawu nowe funkcje. Mam plik eeprom.h i eeprom.c. Standardowo dodałem dyrektywę #include "eeprom.h" Oczywiście plik znajduje się w folderze gdzie sięga kompilator swoimi mackami. Wszystko fajnie tylko,...
Jeszcze go nie otworzyłem, ale zrobię i porównam hardware. Zrobię też backup FW modułu WiFi, ale nie wiem jak zrzucić flash MCU. Mam narzędzia dla Atmel (USBASP) i STM32 (STLink), a także programator EEPROM oparty na CH341; Nie wiem, czy którykolwiek z nich można zastosować do MCU CH573... Dodano po 7 . Możliwe, że nowy wariant ma inny identyfikator...
Przecież w kodzie powyżej nie ma żadnego zapisu do Flash... Jest w EE_Init(). Może źle się wypowiedziałem. EE_Init sprawdza czy wymagany na EEPROM obszar pamięci jest "sformatowany" jak nie to go "formatuje", czyli zapisuje na początku dwóch bloków ich jakby identyfikatory. I właśnie ich nie można zapisać. Wygląda to tak: pokaż, w jaki sposób wywołujesz...
No właśnie tak jak sam zauważyłeś uC jest na płytce STM32F0 Discovery, dwoma przewodami po około nie wiem 8 cm, połączone są z płytką PCFki, na niej są pull upy oraz złącze goldpin dla SCL i SDA. Od tych złącz dalej idzie po 5cm kabelka do osobnej płytki. Po skróceniu przewodów od STM32 do pcfki np 5cm gdzie łącznie byłoby to 10cm nie poprawiło połączenia...
Nie, nie, OCD już zarzuciłem, ale na manualach od st-link (tego texane...) jest jasno powiedziane, że powinno działać. Nawet mi sie układ komunikuje z GDB via st-link, wysyła i odbiera, diodka USB na płytce miga, ale nie chce ładować firmware'u. Znalazłem takie coś: http://hackaday.com/2011/10/17/how-to-de...
Po namyśle i rozważeniu wszystkiego wybrałem jednak J-linka edu, troszeczkę droższy, ale przynajmniej mam nadzieję, że będę z niego zadowolony. A czy ktoś miał może styczność z procesorami samsunga, a konkretnie s3c6432? W jednym urządzeniu mam taki, na płytce jest złącze 12 pin i zastanawiam się, czy byłaby możliwość za pomocą tego j-linka połączenie...
Pewnie dlatego, że po 16-bitowym adresie nie wysłałeś do pamięci ani jednego bajta danej do zapisu.
Witam szanownych inżynierów, piszę do was z prośbą o wsparcie techniczne. Otóż ... Opis : M24LR64 Jest to pamięć eeprom która to posiada dwa interfejsy komunikacyjne a mianowicie I2C (fast mode) oraz ISO15693(Bezprzewodowy). Projektowany przeze mnie układ powoduje wyzwolenie pomiaru przetwornika w przerwaniu timera a w przerwaniu przetwornika inicjalizuje...
Szukam osoby do oprogramowania już wykonanych płytek. Wymagana znajomość mikrokontrolerów STM32. Do wykonania: - komunikacja z pamięcią eeprom po spi - obsługa czujników pojemnościowych W grę wchodzi również drobne prace z lutowaniem. Miejsce pracy/współpracy: Katowice i okolice. Proszę o kontakt telefoniczny 606991472 lub wiadomość prywatną.
(at)Freddie Chopin Tylko że dalej nie ma co porównywać... to tak trochę jak by marudzić że ktoś kiedyś stworzył taki wynalazek jak Fiat 126p. Powiedzmy sobie tak obecnie na 8 bitowych AVR-ach nie ma totalnie sensu pisać jakiegoś rozbudowanego kodu. Natomiast świetnie się nadają tam gdzie trzeba coś prostego zrobić szybko... np. na jakimś ATTiny. Weźmy...
Nie - są to źródła na podstawie których można bazować w przypadku tego typu układów, oraz na których ja bazuje - obsługa enc28j60 pod kontrolą FreeRTOS'a i uIP. ENC bardzo się grzeje? ... czuć, że jest ciepły ale nie na poziomie "parzenia", więc myślę, że nie jest źle :) // UPDATE 25.10.2012: - dodałem obsługę zmiany adresu IP urządzenia z poziomu konsoli...
Wnioski z artykułu : startup wolniejszy bo kopiuje serial FLASH do SRAM Wydajność większa bo wykonywane ze SRAM Ciekawe jak działa emulowanie EEPROM w FLASH, ale skoro Na tą chwilę załadowałem bootloader stm32duino i działa ok to pewnie problemu nie ma?
Jeśli coś mniejszego od Raspberry/Orange Pi, to proponuję zacząć od poszukania oprogramowania niezbędnego do działania z Arduino i z modułem STM32, oraz sprawdzenia, jakie możliwości daje który moduł. Z tego, co pamiętam, STM32 jest dużo szybszy, najtańsze moduły do obu są w cenie kilkunastu zł - moduł STM32C8T6 od około 14zł, Arduino Pro Mini od 12.60zł...
Teoretycznie powinno sie dać (chyba) Praktycznie też. Przykładowo takie właśnie powtórne zapisywanie do jednej komórki używa oficjalnie STM w przykładach pt. EEPROM emulation i jest tam sprawdzanie statusu operacji i jest ok. No chyba nie do konca. Byc moze nadpisują tylko samymi zerami. W/g dokumentacji: FPEC preliminarily reads the value at the addressed...
Witam mam taki problem. Napisałem funkcję odczytującą wypełnienie PWM z odbiornika RC. Chciałem zrobić zabezpieczenie przed uruchomieniem gdy drążek gazu nie będzie w pozycji zero oraz wejście do programowania po przekroczeniu 90%( tak jak to jest w typowych regulatorach). Niestety program przechodzi przez while w czasie jego uruchomienia. Przy pracy...
Nie będę namawiał dalej, pewnie masz po prostu swoje przyzwyczajenia i tyle. Na pewno nie będzie tak, że wezmę K10 i zacznę pisać jak dla STM32. Bez kupienia płytki startowej i przecierania szlaków od migania LED, przez obsługę timerów, I2C, SPI, emulowania EEprom w Flash się nie obejdzie. Gdybym miał sponsora ok, fajnie jest poznać nowe uC ale muszę...
Przy emulacji EEPROMu wymagane są minimum 2 strony, ale nic nie stoi na przeszkodzie abyś użył ich więcej. Wtedy Twoja dopuszczalna ilość zapisów znacząco rośnie. Wszystko oczywiście ma swoje granice i przy takich założeniach jak poświęcisz na emulację EEPROMu 100 kB flasha, to tak czy siak kiedyś wytrzymałość się skończy. Czy to "kiedyś" jest wystarczająco...
Witajcie Jestem w trakcie pisana procedur do emulacji eepromu na stm32f103. Z opisu w nocie aplikacyjnej wynika, że każdej zmiennej przypisywany jest wirtualny adres czyli mamy 16 bitowy adres i 16 bitowa daną. Czy do zmiennej nie można odwoływać się poprzez normalny adres zyskując w ten sposób dodatkowe 16b na dane? pozdrawiam
Teraz już wszystko rozumiem :D Swoją drogą rozumiem, że można ich użyć jako swego rodzaju eeprom (choć to zupełnie coś innego) i zapisać np. ustawienia, a dopóki będzie zasilanie dane będą zapisane.
Brak napięcia na stykach akumulatora, całość zrobiona jest na BQ7694003 + BQ76200, stm32f072c8t6 oraz eeprom. Eeprom oraz stm32f072c8t6 są uszkodzone (zwarcie na p. zasilania) i mam pytanie czy da się uruchomić BQ7694003 bez mikrokontolera oraz eeprom?
Biblioteki z ST są zakręcone..niestety. Czy ja wiem? Są po prostu beznadziejne <: A jak się spojrzy na kod, to "OMG" <: Zaletą mojego pomysłu jest to że struktura ze zmiennymi jest jakby zrzutowana na pamięć więc dostęp do niej nie wymaga użycia żadnych dodatkowych funkcji. W istocie, w tej emulacji EEPROMu o której pisałem powyżej dostęp faktycznie...
10 sztuk STC8A8K32S4A12 za całe 34zł Drożyzna w porównaniu z stm32f030 czy stm8. OK ;) ale bierzmy pod uwagę ceny z tego samego sklepu: https://pl.aliexpress.com/store/product/... Z wysyłką 9,56$ za 10 sztuk STM32F030R8T6 - czyli 36,85zł co daje...
Witam serdecznie. Mam takie pytanko. Potrzebuję zapisywać pewne wartości z mikrokontrolera stm32 do zewnętrznej pamięci nieulotnej w razie wyłączenia zasilania. Znalazłem na stronie forbota przykład z pamięcią EEPROM (układ 24AA01),gdzie ilość cykli zapisu wynosi 1000000. I teraz pojawia się moje pytanie, czy ten milion zapisów jest na całą pamięć czy...
Za wcześnie się cieszyłem - zmiana terminu w TME - miał być tydzień 6/2022 a będzie: AVR128DB64-I/PT IC:mikrokontroler AVR; EEPROM:512B; SRAM:16kB; Flash:128kB 4 SZT Tydzień 21/2022 4 sztuki! Ręce opadają :( Microchip (Microchipdirect) ma na stanie 50 szt wersji z rozszerzona temperaturą: AVR128DB64T-E/PT
Przykład, zobacz wysyłanie poprzez SPI. Po grzyba wysyłając dane za każdym wysłaniem inicjalizować moduł SPI, raz nie wystarczy? To akurat się czasem przydaje, pod warunkiem że jest zrobione porządnie. W distortos mam to zrobione podobnie. Idea jest taka, że na jednym SPI możesz mieć kilka różnych układów które obsługują różne parametry SPI, często...
Cześć. Mam małą zagwostke i może ktoś z Was mnie nakieruje. Próbuje w STM32 uruchomić transmisje I2C. Podłączyłem do niego najprostszy układ tylko po to aby uruchomić ta transmisje, była to zwykła pamięć EEPROM. Sprawa wygląda tak że po wysłaniu sekwencji start wysyłam adres układu i w tym momencie wiesza mi się program. Sprawdziłem analizatorem co...
To jak mam tego delay() napisać? Wydłużyłem tego delay(15) a tamtego "55" usunąłem, ale nadal działa tak samo. Nie wiem co źle robię. Bawiłem się pamięcią eeprom na tym kontrolerze i wszystko działało, a ten czujnik nie chce.
Kiedyś, jak używałem starych bibliotek to do zapisywania we flashu używałem czegoś takiego: motohours = motohours+*(uint16_t*)Address; //sczytuje Niezłe :) A na przyszłość, jak chcesz przechowywać jakieś dane to polecam użyć rodziny STM32L1XX. Posiada ona wbudowany EEPROM, podobnie jak atmegi. Jest łatwiejszy dostęp od strony programistycznej.
W F030 strona ma wielkość 1kB co oznacza, że zmieści się tylko 256 zmiennych Jak to obliczyłeś? Pewnie 1024/4 bajty = 256, ale tutaj tak to nie działa. Strona 1024 bajty to 1024 bajty, inaczej 512 półsłów. Zapis do stron pamięci w STM32F0 wymaga zapisywania półsłów, do jednej strony oczywiście można zapisać 512 półsłów. W poniższym przykładzie zapisuję...
Ustawienia zostają w wewnętrznym "EEPROM" - a raczej symulowanym bazującym na zapisie w pamięci FLASH. Producent dostarcza do tego bibliotekę, aczkolwiek jest ona zbyteczna - warto używać bezpośredniogo zapisu do FLASH za pomocą bibliotek peryferii. Zaoszczędzi się trochę miejsca jeśli to wymagane. Ale wracając do zegara, który odpowiada za włączanie...
I właśnie po to wymyślono typy takie jak uint16_t i inne z nagłówka stdint.h... 4\/3!!
-- EDIT -- W sumie założyłem, że te funkcje dotyczą emulowanego we flash eepromu wg pomysłu ST. W sumie jednak nie wiem co to za funkcje i co robią, ponieważ ich związek z tematem jest dosyć nikły... Tak więc nie jestem w stanie precyzyjnie odpowiedzieć na pytanie, a to co napisałem poniżej może być zupełną bzdurą. -- EDIT END -- Wygląda OK. memset()...
Tak jak pisze Freddie Chopin mozna ale to bedzie reczne rzezbienie i skladanie kodu tak by zostawic dziure... Ale to jest rzezba okropna i utrudni na pewno prace nad kodem. Takiego rzezbienia nawet w binarce jest jeszcze kilka opcji, ale to nie najlepsze rozwiazanie. Wystarczy zapełnić tą jedną czy dwie strony rzeczami które praktycznie nigdy nie zmieniają...
Czy budowałeś układ z komunikacją przez I2C na PCB? I czy opisane przez Ciebie problemy dalej występowały? Unikam I2C jak ognia w swoich konstrukcjach. Tak jak wspomniałem wcześniej, miałem przypadek wywalającego się I2C na płytce. Zakłócenie wygenerowane przez typowy przekaźnik 12V/230VAC 16A powodował absolutny zwis MCP23008... Myślisz, że to ogólnie...
Co do kompilatora to jest dla STM32, ściągałem jako dodatek do Raisonance. Do ARMów RIDE używa gcc, więc bez problemu możesz wykorzystać narzędzia ze stajni gnu-make do zarządzania kompilacją. W razie problemów możesz się wzorować na plikach makefile z WinAvr, wystarczy zmienić prefiks nazwy kompilatora, dodać skrypt linkera i wywalić rzeczy związane...
ale "na dzień dobry" nie działa w nim port USB (trzeba wymieniać rezystorki SMD Liczba pojedyncza, wymienia się JEDEN z 10k na 1,5k, a można nie wymieniać tylko dołożyć 4.7k na płytce stykowej i też będzie działało. Co jeszcze ciekawsze nie na każdym sprzęcie (w znaczeniu komputerze, porcie, hubie) problem się uwidoczni, u mnie działa z nieprawidłową...
Panowie, teraz pewna partia wprowadziła modę na rybę, nie wędkę - popłyńmy na myśli prezesa. Gotowiec: działają tak choćby karty SD, pamięci Flash czy EEPROMy - jak to się wtedy ma do Twojej koncepcji, bo tak się składa, że z punktu widzenia mastera coś musisz jednak nadać żeby cokolwiek odebrać... Nie ten procek, co go autor ma, ale ficzer przydatny,...
Możliwości STM32G030J6M6 są zadziwiające. https://obrazki.elektroda.pl/4642596500_... Schemat wygląda tak: https://obrazki.elektroda.pl/7607198900_... Efekt pracy można zobaczyć na filmie: https://filmy.elektroda.pl/6_1580907289.... Oczywiście nie należy spodziewać się dźwięku jakości Hi-Fi, samplowanie 8-bit 8kHz wnosi...
GND i GND_I to nie to samo podobnie jak Vcc i +5V. Ok, masz rację. To popraw schemat i wyprowadź te napięcia na listwę od strony MCU. Bo tak można przez nieuwagę je zostawić niepodłączone. Cztery linie złącza J4 przyłączone są do ADuM1251, co tu poprawiać? Co jest nieczytelne? Co można pominąć przy podłączaniu? Możesz przez UART skonfigurować VID,...
[syntax=c]//-=-=-=-=-=-=-=-=-=-=-=-=-=-=... // Task FreeRTOS - obsluga interfejsu sieciowego //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=... void vTaskEthernet(void * pvParameters) { /* uIP */ int i; struct uip_eth_addr mac_addr; //MAC Address struct...
mogę podesłać bin odczytany z prock Jeśli procek jest zabezpieczony, to odczytasz śmieci. Nikt przy zdrowych zmysłach nie sprzedaje urządzeń niezabezpieczonych przed kradzieżą ! ;-) Odczytanie programu z procesora, (nawet gdyby udało się go w jakiś sposób(?) odczytać) nic tu nie pomoże. Wszystkie maszyny z tego modelu i serii produkcyjnej mają dokładnie...
Osobiście nie zastanawiałem się nad tym długo, szukałem zestawu który ma chyba wszystko na pokładzie: Ethernet, Can, RS232, USB-RS, 485, pamięci Flash, Sram, Kartę muzyczną, Usb Host OTG, LCD + dotyk, złącze na karty SD i wiele innych... W polsce ktoś sprzedaje RedDragon za ~350zł ja zamówiłem to w chinach przez ebay i zapłaciłem z presyłką ~180zł uważam...
Jeżeli w aplikacji występuje procedura czy to zapisu do EEPROM czy do FLASH a nawet do RAM (tutaj raczej chodziłoby o zewnetrzy ram z własnym zasilaniem zeby sprawdzic) ze 100% pewnością można powiedziec że w przydku wystąpienia stanów nieustalonych bez zabezpieczenia sie BOD-em program prędzej czy później skoczy do tej procedury i zanim sie procesor...
Cześć Jeden bajt adresu pamięci (char maddr) wystarczył by w układach 24C01 czy 24C02. Przy 24C04 - 24C512 do adresacji pamięci potrzebne są 2 bajty (uint16_t maddr) . No i mam nadzieję, że nie polegasz tylko na pullup-ach mikrokontrolera: //Enable pullup for pb8 and pb9 GPIOB->PUPDR |= (1U<<16); GPIOB->PUPDR &=~ (1U<<17);...
Witam, w moim projekcie muszę zapisywać informację we wspomnianej pamięci FRAM (link do https://obrazki.elektroda.pl/4945033000_... Za pierwszą część odpowiada polecenie: HAL_I2C_Mem_Write(&i2c, 0xa0, 0x10, 1, (uint8_t*)&test, sizeof(test), HAL_MAX_DELAY); Za drugą część odpowiada polecenie: HAL_I2C_Mem_Read(&i2c, 0xa0, 0x10, 1, (uint8_t*)&result,...
Bzdura. Do lock/fuse/itp są zupełnie inne komendy. Programowanie tego wygląda kompletnie inaczej niż flasha. Nie jest to żaden "oddzielny adres". Chyba nie do końca masz rację. Zrobiłem taki eksperyment. Wziąłem STM32L152RE (bo ma EEPROM) i spreparowałem jeden plik hex z trzema obszarami. Flash (od 0x08000000, blink jakiś), EEPROM (od 0x08080000, tekst...
LPC11E i parę innych serii. W rodzinie STM32F też się parę serii znajdzie. Można też użyć zewnętrznej pamięci na I2C lub SPI za grosze - to po pierwsze. A po drugie: Pamięć Flash w STM32 może być programowana pojednyczymi słowami, więc nie ma żadnych problemów w użyciu jej do przechowywania często zmienianych danych. Jesta na to parę sposobów, w zależności...
Już wszystko jasne. Przyznaje, jestem ciamajda! eeprom.h [syntax=c] /* EEPROM start address in Flash */ #define EEPROM_START_ADDRESS ((uint32_t)0x08002000) /* EEPROM emulation start address: from sector2, after 8KByte of used Flash memory */ [/syntax] Ludzie z STMu radośnie założyli, że skoro chce emulować eeprom to na pewno będę chciał zapisywać wartości...
WIELKIE dzięki:) Format mozna sobie dostosować juz samemu, wykorzystać fragmenty, ciekawe pomysły szybkiego wyliczania (np. roku przystepnego). Wczoraj straciłem cały dzień na uruchomienie I2C. Nawet nie pisałem tu, zeby nie zawracać głowy. Robiłem to wiele razy w asm bez żadnych problemów, a wczoraj normalnie nic - nie idzie i już. Okazało się że nie...
za 200$ masz zawartość każdego AVRa razem z fusami i eepromem Jeśli procesor jest lepiej zbudowany tzn. warstwa flash jest na wierzchu a lockbity są głęboko zakopane to trudno będzie je brutalnie skasować nie uszkadzając pamięci programu. Tak jest ponoć w STM32 (zapytaj inżynierów aplikacyjnych) Nie ma zabezpieczeń nie do złamania. Rzecz w tym by bardziej...
Potrzebuję w moim projekcie zapisać do Flash w razie gdy by zabrakło prądu tablicę zmiennych: [syntax=c]uint8_t zamienna[20][/syntax]. Zapis najlepiej gdy by na końcu pamięci Flash, by nie kolidowało nic. Próbuję to zrobić przerabiając bibliotekę EEPROM od ST jak i na podstawie notki o emulacji, ale taki syf mi wyszedł, że przy próbie zapisu uC się...
stm32 eeprom stm32 projekt eeprom stm32 wbudowany eeprom
lodówka mrozi mocno przyczyna laptop gasnie chwili karta zielonka
klawiatura wpisuje podwójne znaki klawiatura wpisuje podwójne znaki
Wpływ mat wygłuszających z folią aluminiową na TPMS Szary ekran w tablecie Lenovo M11 - co robić?