Witam, #include <stdint.h> #include <avr/eeprom.h> static EEMEM uint8_t zmienna_w_eepromie = 'a'; /* po zaprogramowaniu eepromu zmienna ma wartość 'a' */ int main(void) { eeprom_write_byte(&zmienna_w_eep... 'b'); } Pozdrawiam, Dr.Vee
Nie powiedział pan czy to jest poprawny zapis. 0---- 31 inkremntacja wysyłam adres 32 32----63 inkrementacja wysyłam adres 64 Tak jest poprawnie, pamiętając oczywiście o tym, że przed każdym wysłaniem adresu musi być START i adres pamięci. Panie Andrzeju wspomniał Pan o adresowaniu 0 do do 31 nie rozumiem skąd pan wziął 33 bajt To był tylko przykład,...
Mój sposób nr 1: -zakładasz w jednej lub dwóch komórkach wskaźnik do bieżącej struktury roboczej, składającej się z licznika zapisów (3 bajty) oraz rejestru przechowującego zmienną (o dowolnym rozmiarze), -następnie tworzysz funkcje do zapisu oraz odczytu zmiennej. Fun do odczytu ustala za pomoca wskaznika poczatek struktury w EEPROM, a nastepnie odczytuje...
O to Ci chodziło: http://www.captain.at/electronic-atmega-... ???
[syntax=c] (...) static EEMEM uint8_t histereza = 3; //zmienna do pamieci EEPROM int main(void) { (...) uint8_t histereza = eeprom_read_byte(&histereza); (...) [/syntax] Zgadnij dlaczego nie działa ? Podpowiedź - nazwy.
Nie czytałem dokładnie tematu, ale zapytam trochę z boku o to, czy jesteś świadomy: - czasu trwania operacji zapisu do EEPROM? - ograniczenia ilości zapisu jednej komórki EEPROM?
Wcześniejsze kwestie wyjaśnił już kol. (at)michalko12 . Mowiąc o tym, że funkcja z eeprom.h dokonuje kasowania przed zapisem powoływałem się na Twoją książkę (str.235 wytłuszczonym drukiem) oraz na https://www.nongnu.org/avr-libc/user-man... gdzie jest napisane: "All write functions force erase_and_write programming mode." Nowsze...
Nie prościej użyć EEPROM.put i EEPROM.get ? Możesz zapisywać struct z dowolnymi typami zmiennych. Pozdr
Druga sprawa. Skoro ma być reset np. BORF: flaga resetu przy obniżonym napięciu sieci, to czy można wcześniej zapisać do EEproma jakieś ważne dane? Zdecydowanie nie należy nic zapisywać do EEPROM przy obniżonym napięciu. Poza tym BOD nie wystawia żadnej flagi przerwania którą mógłbyś wykorzystać. On po prostu resetuje układ o ile jest włączony a następnie...
Można zapisywać dane do EEPROM w mikrokontrolerze, ale musisz wiedzieć, że jest to pamięć o bardzo dużej, ale jednak skończonej liczbie zapisów. Jeśli wystarczy Ci dokładność do minuty, to np. w programie robisz zapis co minutę aktualnie odliczonego czasu. W razie kolejnego restartu urządzenia odczytujesz tą wartość i przyjmujesz jako początkową. ......
Z EEPROM jest wiele zabawy. Najprościej nie zapisywać co 1-2m dystansu, jak miałeś w programie, czy co 1s, jak się zrobiło gdy przeniosłem Ci to do loop. Masz odmierzanie czasu tym nieszczęsnym delay 1000, to definiuje najmniejszą jednostkę czasu w tym programie. Naucz się millis() i usuniesz to ograniczenie. Ale tu też można coś wyrzeźbić, po tym delay...
Pamięć większa być może ale nie ta... HT27C512 to OTP czyli jednokrotnego zapisu, a Ty musisz podstawić pamięć dającą się kasować i zapisywać wielokrotnie... poszukaj EEPROM np. Winbonda 27Exxx lub 27Cxxx pozdr KN
1. Poza tym zapis EEPROM w przerwaniu to też niedobry pomysł - to kilka ms/zapis. Od tego EEPROM generuje swoje przerwania, żeby zapisy buforować i zapisywać do EEPROM niezależnie. 2. Poza tym mieszanie ISR i SIGNAL czyli starej i nowej obsługi przerwań tez nie jest zalecane. 3. Wysyłanie znaku przez USART w obsłudze przerwania też może nie być dobrym...
Cześć. Podczas pracy z tymi czujnikami, kiedy znajdują się w zakłóconym środowisku, co jakiś czas dojdzie jednak do jego zresetowania się i poda temperaturę +85C (domyślna zawartość rejestru po resecie zasilania). Wydaje się, że nie ma innego sposobu jak tylko sprawdzać czy odczyt wynosi +85 i po prostu go nie uwzględniać. Ale co wtedy kiedy akurat...
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, Po pierwsze w Bascomie możesz zadeklarować programowy bufor USARTA w dodatku z wieloma sygnałami sterującymi Twoją ramką a po drugie pamięć EEPROM możesz zapisywać stronami bodajże po 32 bajty co oczywiście nie zmienia faktu, iż zapis strony potrwa tyle co zapis bajtu, nie mniej. Pozdrawiam... robiw
Czy każde włączenie mikrokontrolera liczone jest jako odczyt tzn. czy jak włączę uC 10 000 razy pamięć FLASH zostanie uszkodzona? Nie, chodzi o programowanie pamięci, a konkretnie jej kasowanie (ten proces powoli uszkadza pamięci) przed ich ponownym zaprogramowaniem. 2.Po co zapisywać dane w pamięci EEPROM? Co to daje? Czy zamiast zapisywać dane w...
Zanim się zacznie zapisywać trzeba uruchomić szkic I2C scanner i sprawdzić, czy w ogóle pamięć jest wykrywana i na jakim adresie. Pytanie o schemat było pewnie dlatego, by sprawdzić, czy i jakich użyłeś rezystorów podciągających do VCC, powinny być z zakresu 2-5k.
return przydałby się na końcu. I zacznij stosować ISR() Matko boska! tadzik weź ty się ze 4 albo 6 razy zastanów jak coś podpowiesz - RETURN w procedurze obsługi przerwania w C ????? Chyba że ty piszesz swoje programy w Bascomie ze wstawkami w C albo odwrotnie. do autora - żadnego polecenia return w przerwaniu bo będziesz miał tylko jeszcze gorzej....
Aby zapisywać i odczytywać zmienne z wbudowanej pamięci EEPROM musisz zadeklarować jakąś zmienną w tej pamięci http://avr.elektroda.eu/node/3 W tej chwili zapisujesz i odczytujesz jakąś przypadkową zmienną w pamięci SRAM
Witam, zakładam że rzeczywiście zapisujesz coś do EEPROMa. Temat był już poruszany, ponieważ ATmega przy wyłączaniu/załączaniu zasilania ( w szczególności jeśli napięcie wolno narasta/opada - wolno dla kontrolera!! oczywiście ) jesli nie są spełnione określone warunki potrafi ( i robi to często) zapisywać przypadkowe dane do pamięci EEPROM. Poświęcony...
mam nadzieję tylko, że początkujący kolega henryxxl zdaje sobie sprawę, że użycie zewnętrznej pamięci EEPROM - nie oznacza, że będzie można w niej zapisywać kodu programu - jedynie tylko jakieś tam dane do odczytu/zapisu (myślę, że to jest oczywiste - tak tylko się upewniam) .... natomiast z ciekawości - do czego ci aż tyle pamięci EEPROM - skoro jest...
No właśnie jeśli w programie przed pętlą główną nadam wartości zmiennym w eeprom np. zm_eeprom = "jakis tekst" to po resecie program wystartuje od nowa i zapisze z powrotem wartości początkowe w programie do eeprom ? posłuchaj - jeśli potrzebujesz zapisać domyślnie zm_eeprom = "jakis tekst" to robisz to tylko wtedy jeśli wszystkie komórki tej zmiennej...
Systematyzować? Chodzi o to że chcesz zapisywać dane cały czas do nowych komórek? Sprecyzuj co chcesz zrobić :D
Wrzuć cały kod. Dodano po 1 U Ciebie błąd jest w tym, że po odczycie poprawnego zapisu z EEPROM nie inicjujesz rejestrów PORTD i DDRD, tylko od razu przechodzisz do testowania wejść, przez co porty są nie zainicjowane dopóki nie naciśniesz jakiegoś przycisku. Na dodatek nie odświeżałeś wartości r19 po zapisie nowej wartości do EEPROM. W układzie należy...
no ale teraz problem u Ciebie jest taki że Twoja pamięć już jest prawdopodobnie uszkodzona. Jej żywotność gwarantowana to 100 000 cykli zapisu. Szacuje że Twój program główny to jakieś 1000 cykli (zawyżam wartość) uC. Jeżeli taktujesz uC z 8MHz, to zabijesz pamięć po 12,5s. Takie rzeczy jak potrzebujesz robi się na pamięci RAM z podtrzymaniem bateryjnym...
Ale zewnętrzną pamięć danych typu EEPROM (w ogóle pamięci typu EEPROM programuje się używając programatorów) programuje się programatorem i możliwy jest tylko jej odczyt w trakcie działania programu, bo jej zapis wymaga programatora. czy mam rację? Nie masz , a na dokładkę "nie znasz" swojego procka :( To co napisałeś powyżej , tyczy się raczej pamięci...
Gdzie z masełkiem :] Mysle ze dżem i bita śmietana, albo wogole jakos na słodko (galaretki, budynie i te sprawy) :D np. moja dziewczyna uważa że najlepsze są z miodem... No różne są gusty :D ---------- eeprom i flash to dwie różne rzeczy i wspólne to maja tylko to ze są nieulotne. Flash wymazuje sie blokami/sektorami ale mozna zapisywać pojedyncze bajty,...
Są oczywiście takie moduły zespolone z pamięcią. Mozna tam zapisywać i czytac po bajcie, ale można też sekwencyjnie całe łańcuchy i tablice nawet serializatorem. Dwie pierwsze funkcje podpowiem. Wygląda na to ze działaja ;) Możnaby dodać jakieś zabezpieczenia na wypadek braku komunikacji. https://obrazki.elektroda.pl/8549538400_...
Można napisać program, który nie ma żadnego sensu i Eclipse nic nie zgłosi, on nie ocenia poprawności algorytmu tylko czy składnia jest OK, nawiasy, średniki, itp. Na pewno uruchamiając program w main() powinieneś odczytywać zmienną zapisaną kiedyś tam, a po użyciu jakiegoś przycisku zapisywać nową wartość. Raczej nie widać tu użycia write, a read w...
Witam Chciałbym przez rs232 zapisywać zmienne z pliku txt do zewnętrznej pamięci eeprom np. 24Cxx z których będzie korzystał mikrokontroler atmega128. Od czego zacząć? Czy to będzie bardziej rozwiązanie polegające na programie w mikrokontrolerze zasysającym dane z txt i wczytującym je do eeproma czy zrezygnować z drogi mikrokontrolera i programować...
Dla programu przedstawionego przez autora tego wątku chyba jednak prościej, mniej kłopotliwie i bardziej energooszczędnie byłoby użycie najprostszych procedur proponowanych (o dziwno!!) przez producenta uK np: No ja bym się z tym mocno nie zgodził, dlatego, że funckje przygotowane w AVR GCC działają niezawodnie i zawsze - dzięki czemu nie ma miejsca...
Co do: Procesor32 napisał: Zapisujesz nazwy pod ten sam adres w EEprom Writeeeprom Q , 13 I odczytujesz też z tego samego adresu. Jeśli przeczytałbyś dokładnie post I po sprawie.Nie musisz pamiętać adresu pod który masz zapisywać i z pod którego odczytywać. Prosto i bez problemu. Jest to prosta metoda zapisu do EEProm, ale ma zasadniczą wadę. Użytkownik...
Zapis i odczyt ogarnąłem. Nie wiem czy jest to poprawnie, ale działa. [syntax=c]void EEPROM_write_values ( void ) { preset_address=((cnt_preset+(cnt_bank*4)... typedef union { struct { uint8_t buffer1: 3; uint8_t buffer2: 1; uint8_t buffer3: 1; }; uint8_t settings_buffer; } unia; unia settings; settings.buffer1=0; settings.buffer2=cl_le_status;...
Zrobić jedną tablicę jednowymiarową i zapisywać kolejno po sobie po 7 tych zmiennych, następnie odczytywać z "offsetem" tablica(x + y*offset) daje to pseudo 2 wymiarową tablicę. tablica(0 + 0*7) = tablica(0) tablica(1 + 0*7) = tablica(1) tablica(2 + 0*7) = tablica(2) .... tablica(0 + 1*7) = tablica(7) tablica(1 + 1*7) = tablica(8) itd....
Zrobić coś w rodzaju loggera i w drukarce się podpiąć do wyjścia interfejsu rfid i sczytywać dane z i do układu.
Z przeszło 4 godzinej lektury dowiedziałem się że programy skompilowane Asm,C lub Bascom'em można 'przenosić' do Mikrokontrolera, ale nie potrafię sobie wyobrazić jak ?, w jaki sposób ? spróbuj sobie wyobrazić mikrokontroler jako stacje dysków..układ taki posiada wszystko co jest potrzebne do wykonywania programu: - oczywiście najważniejsze: niedziałają...
Witam, 1. 400kHz I2C a 20MHz ISP. Ile razy szybszy jest odczyt (i ew zapis) pamięci DataFlash od I2c EEPROM? Po pierwsze: nie osiągniesz 20MHz transmisji do pamięci DataFlash bo największa dopuszczalna częstotliwość pracy ATmega128 to 16MHz, a do tego częstotliowść pracy magistrali SPI ( a nie ISP In Cicuit Programing - programownie w układzie ) jest...
Zapis do EEPROM jest realizowany różnie. Są EEPROMy w których kasowanie odbywa się stronami, natomiast zapis możliwy jest do pojedynczych komórek, są też EEPROMy posiadające wewnętrzny bufor SRAM, do którego odbywa się najpierw zapis, a potem z niego na stronę pamięci. W takim przypadku jeśli strona ma np. 128 bajtów, to inicjacja zapisu powoduje zapisanie...
Witam jestem raczkującym programistą 90S213 w BASCOMIE Jak narazie idzie mi niezle ale chcialbym zapisać pewne dane w wewnętrzej pamieci eprom (by po restarcie porcka moglbym korzystać z zapisanych danych) niestety niewiem jak to ugyść. Pewnie tu chodzi o rejestry EEDR POMOCY Z gory dziękuje
Jak można w 90c2313 lub podobnym Procku zapisywać do wewnętrznego epromu dane chodzi mi o krótki listing wyglądać to ma tak Fragment jak to ma działać Do Treść programu skoki do podprogramów ……….. ……….. ………. O ten fragment na dole proszę o wyjaśnienie ,nakierowanie lub podanie przykładowego kodu...
Jeśli chodzi o zapisywanie wartości konfiguracji do EEPROM (w celu zminimalizowania zużycia), dobrze jest zapisywać nowe dane tyko wtedy jeśli się różnią od tych wcześniej zapisanych. Często stosuję tę metodę w swoich urządzeniach. Zapis ustawiony jest na stały interwał. Np. Co pół minuty. Oczywiście ten sposób nadaje się raczej do rzadko zmieniających...
Witam. Czy po zapisaniu programu do flash i ustawieniu lockbitów mogę wgrać plik do eeprom'a (oczywiście znowu ustawiając lockbity)? Czy niestety będę musiał najpierw wyczyścić procek? Podobno można to zrobić inaczej (zabespieczyć pamięć flash nie zabespieczając eeprom'a) przy pomocy jakiegoś bootloadera - może komuś obiło się kiedyś o uszy coś o takim...
I jeszcze jedno czy mógłby ktoś po ludzku wyjasnić co oznacza "pamięć o dostępie swobodnym" To znaczy, że masz dowolną kolejność dostępu do danych (np. możesz czytać kolejno spod adresów 1, 6, 2, 9, 10, 3 , a nie tylko kolejne 1,2,3,4,5 lub 8,9,10,11). Nazwa powstała dla odróżniena takiej pamięci od pamięci z dostępem sekwencyjnym (np. pamięci taśmowe...
Carminat SH1big display szukam pliku do eepromu Intel E28F640. Nawigacja nie jest zły język rekordu. Dziękuję
witam wszystkich . problem mój polega na tym że z nieznanych przyczyn w moim urządzeniu kasuje się zawartość pamięci eeprom . urządzenie zbudowane jest na tiny25 , stabilizowane 78L05 , filtrowane po stronie wtórnej c=470 nF i pracuje w samochodzie . po jakim czasie zawartość pamięci eeprom jest cała FF . to samo urządzenie jeśli odczytuje dane z flash...
Witam! Pytanie dotyczy zapisu do EEPROM'u pojedynczych bajtów. W datasheet'cie do ATmega32, w rozdziale 7.4.1 "EEPROM data memory" napisano: The ATmega32A contains 1024 bytes of data EEPROM memory. It is organized as a separate data space, in which single bytes can be read and written. The EEPROM has an endurance of at least 100,000 write/erase cycles....
Skasowanie bloku to flash a nie eeprom . Tak właśnie napisałem bo początkowo było tylko FLASH? bez reszty tekstu. Każdy taki scalak pamięci czy EEPROM czy FLASH ma wbudowaną pewna maszynkę stanów generującą cykle kasowania i zapisu. Mongolskie powieki mogą pisać co chcą nie na to norm (przynajmniej u nich) . To pokaż inne opisy scalaków np od TI czy...
Witam, mam baterię do Acer Ferrari 3400. ogniwa PanasonicCGR18650C szt.8 Otworzyłem obudowę i odczytałem z płytki jakie znajdują się tam układy: 1. bg2060A 2. 1414C (chyba to jest Motoroli M 404) 3. BE3344 - cztery układy chyba podpięte po każdą sekcję ogniw) Nie wiem czy ten układ 1414 to eeprom a jeśli tak to jak z niego pobrać bin dwa ogniwa (każdy...
http://obrazki.elektroda.pl/1951024400_1... W itam wszystkich forumowiczów Elektrody! :sm9: M oją kolejną konstrukcją prezentowaną na forum w dziale DIY jest Rejestrator Temperatury . D ziałanie rejestratora polega na zapisywaniu do pamięci EEPROM co określony czas wartości temperatury pobranej z cyfrowego czujnika DS1820. W pamięci...
Właśnie siedze nad podobnym programem tylko na ATMEGA 32 Ma to być notesik słówek zapisywanych w pamięcie EEPROM 24c64. Można to zrobić przechowując adresy początku słówka lub mniej oszczednie założyć, że słówko ma np. 15 liter i nie ma problemu z adresem słówek. Pozdrawiam PS. Ja wybrałem pierwszą opcje. Mój program narazie odczytuje tekst z kompa...
Podczas programowania kasowana jest pamięć flash oraz eeprom więc dane ulegają utracie. należało by zapisać pamięć eeprom do pliku przed programowaniem i podczas programowania ustawić programowanie pamięci flash+eeprom. zmiennej nietrzeba zmieniać na postać bcd. adresowanie - kolejne adresy narastające o rozmiar poprzedniej zmiennej. (a-bajt b-wyraz...
Witam! jak zaprogramowac Eeprom 28c64 przez komputer. Ustawiłem adres, dane i impuls na WE (1ms) i nic. Proszę o pomoc. Pozdrawiam!
Witam, mam pytanie odnośnie programatora AvrProg USB v2, pracującego pod BASCOM-em jako STK500, mianowicie kiedy klikam przycisk programowania, wyskakuje okienko konsoli, program jest wgrywany do uC, co kończy się powodzeniem - tylko czy zapisywana jest tylko pamięć FLASH, czy również pamięć EEPROM, ewentualnie - jak sprawić, aby dane do EEPROM też...
aby poszerzyć horyzonty zakupiłem programator xprog-t. stanąłem przed pierwszym zadaniem: radio gamma z new beetla czy trzeba wylutować 25160N aby odczytać i zapisać zawartość? czy można zrobić to w układzie stosując np klips (link)? czy programator ten na to pozwala? http://www.programatory.com.pl/sklep/ind...
-> Kubiaczek. Wkleiłem to żebyś widział schemat zapisu/odczytu. Skąt wiesz że nie działa ci zapis? może odczyt jest do kitu?. Jeśli twoja "dana odebrana w funkcji" to ACK, i nie odpowiada na sam adres to może masz zły adres?
W jaki najprostszy sposób odczytać i zapisać EEprom X 2816CP-20
Witam serdecznie Mam takie pytanie, jak zrealizować rejestracje temperatury na s7 1212c, chodzi mi coś podobnego jak w s7 200 data log, czyli zapisywanie do dodatkowej pamięci eeprom?(fajna opcja w s7 200, bo mogę sobie zapisywać do eepromu temp, oraz czas z RTC:) )
Witam Mam problem mianowicie mam pewne dane, które zapisywane sa do EEPROM-a ale niewiem jak je "rozszyfrować" z kąd mam wiedzieć co to za napis ? i jak stworzyć swój w takiej postaci? A może ja to źle rozumiem? Pomóżcie prosz, niewiem oco w tym chodzi. Załączam przykład. $eeprom być na początku pliku Napisa: 'LOGO Data 199 , 192 , 194 , 192 Pozdrawiam
ONLY WRITE THIS FILE TO 24C256 EEPROM OK, PROG OFF ..... 100% WORKING ... https://obrazki.elektroda.pl/9656644200_... https://obrazki.elektroda.pl/4065675100_... https://obrazki.elektroda.pl/2072286000_... https://obrazki.elektroda.pl/9805666000_... https://obrazki.elektroda.pl/9698396400_...
Cześć !!! Pomysł bardzo dobry i ciekawy. Ale propnuje przesiąść się na jakiś procesorek ze sprzętowym I2C np. Atmega8 lub któryś z grupy nowych procków Philipsa. Dlaczego. Komunikację Mikroprocesorów z i2C w trybie Slave najłatwiej jest zbudować, gdy masz możliwość obsługi protokołu w przerwaniu. Tzn. procek dalej się kręci , coś czyta czym się zajmuje...
Wyraźnie ci pisze "I2cwbite" czyli zapis jednego BAJTU.. w EEPROM'ie I2C komórka ma 8 bajtów.. jeśli chcesz zapisać jakąś zmienną która zajmuje więcej niż bajt to niema zmiłuj sie.. musisz podzielić na bajty... np takie coś: dim A as word A = 12345 '--------- I2cstart I2cwbyte adresw I2cwbyte adres_komórki i2cwbyte hi(A) I2cstop '--------- I2cstart...
https://obrazki.elektroda.pl/3882937500_... WiFiManager to biblioteka oferująca gotowy system parowania z naszym WiFi a jej konfiguracja to raptem kilka linijek kodu. Parowania dokonuje się w trybie AP (sieci WiFi emitowanej przez ESP) a potem, po podaniu namiarów na naszą sieć, system sam je zapamiętuje i korzysta z nich przy kolejnych...
zapisywać przebieg zapisywać dźwięk zapisywać kanał
kaseta lusterkiem transmiter video audio tłoki maluch
gramofon daniel 1100fs bester migomat
Akumulator do silnika 1.9 TDI: Wybór i parametry Fiat Ducato - przepalenie bezpiecznika po wymianie akumulatora