wlacz datasheeta i poszukaj w nim slowka EESAVE 4\/3!!
mozliwe !! tez mialem cos podobnego problem zalatwil dopiero uklad resetu ds1813. gdyz podczas gdy napiecie zasilania spada ponizej minimalnego procek "idzie w krzaki" i dokonuje niekontrolowanych wpisow do eeprom.
a spróbuj, czy puści tak: EECR=(1<<EEMWE); EECR=((1<<EEMWE)|(... a tak na marginesie, czemu 2x inkrementujesz WriteAddress ??
Jeśli symulator zapisał pierwszą komórkę powinien zapisać kolejne , ciężko to zobaczyć przy pracy krokowej bo zapis eeprom trwa od 3,4ms do 8,5ms w rzeczywistości ale w symulatorze należy to odnieść do ilości cykli mikrokontrolera . Biorąc pod uwagę że symulator programowy możliwie wiernie naśladuje mikrokontroler możliwość zapisu kolejnej komórki wystąpi...
Z komparatorem też może wystarczyć jeden pin, jeśli procesor ma możliwość programowego podłączenia drugiego pod Vcc procesora. Można też zrobić tak jak pisze kol. (at)pawlik118 , tylko trzeba pamiętać, że próg przełączenia stanu pinu jest dosyć płynny i zależy m.in. od egzemplarza MCU, temperatury itd. Niemniej da się tak zrobić.
Tak, wszystko się zgadza. Jeśli łączyłbyś potem np. 2 kości to wtedy w jednej dajesz oba piny do masy, a w drugiej jeden do VCC i masz 2 pamięci pod 2 różnymi adresami. Można w ten sposób połączyć do 4 pamięci typu at24c04
Nie wiąże się ;)
W 21 linii pliku makefile usuń słowo "eeprom", czyli: zamiast: all: $(PRG).elf lst text eeprom ma być: all: $(PRG).elf lst text
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...
8 znakow SN da sie bez problemu zapisac w 4 bajtach + 1 bajt na dodatkowa dane, czyli 5 bajtow na kazdy "rekord". I teraz: 500 * 5 = 2500 bajtow. Pamiec 24c32 ma pojemnosc 4096 bajtow a 24c64 - 8192 bajty co pozwala w Twoim przypadku zapisac ~1638 "rekordow" czyli az nadto. Pamieci te sa tanie i latwo dostepne. Zatem karta SD jest w tym przypadku raczej...
Zobacz na jakim porcie masz ustawione hardwarowo SPI, podejrzewał ze na którys wyprowadzeniach portu B i i to jest powodem błedniej pracy wyświetlacza.Sam napisałem (własciwie to pisze bo ciągle coś zmieniam) podobny program tylko na 51 równeirz w BAscomei dodał bym tu jeszcze zapis na EEPROM aktualnej wartości wzmocniania zeby po wyłaczeniu zasilania...
Czyli tak - dajesz Atmelka zależnie od potrzeb ATTiny2313, ATMega8 lub ATMega16 /8515/8535 itp...(portów hohohoho), do PC łączysz się przez: 1. SPI/USI<>LPT (wersja nie wymagająca dodatkowych elementów), PC pracuje jako MASTER, ATMEL jako SLAVE (ten układ składa się TYLKO z procesora, jakiegoś kondensatorka odsprzęgającego zasilanie) 2. UART<>RS232...
Przy kompilacji jeśli próbuję skorzystać z eeprom_update_block() kompilator wywala undefined reference to `__eeupd_block_m16' niestety google nic o tym nie mówi, oczywiście biblioteka avr/eeprom.h jest załączona do źródeł. Częściowy kod programu: [syntax=c] struct time { uint8_t h; uint8_t m; uint8_t s; }; struct time closetime EEMEM={0, 0, 0}; struct...
dziala,panowie i panie... 1.avr studio kompilowal mi hex z innego programu (przeoczenie :P) 2. eeprom_is_ready() wystawia 1 a nie 0 kiedy pamiec jest gotowa... #include <avr/eeprom.h> eeprom_write_byte(5,0x41); while(eeprom_is_ready()==0... unsigned char gg; gg=eeprom_read_byte(5); tak nawiasem mowiac ,w jakich wypadkach...
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...
Tak naprawdę tylko zmiana bitu z 1 na 0 jest objęta limitem, czyli zatkanie komórki. Zmiana z 0 na 1 nie obniża żywotności. W szczególnych przypadkach danych następujące kolejne 8 operacji ustawienia 1 na różnych bitach nie ma wpływu na żywotność EEPROM'a jeżeli się je oczywiście mądrze zrobi.
Tak, to jest normalne. Musisz zmienić ustawienia w FUSE BITACH, konkretnie chodzi o bit EESAVE.
http://obrazki.elektroda.net/71_12692978... Witam, Do niedawna byłem przeciwnikiem płytek testowych (zestawów uruchomieniowych) różnej maści. Zawsze wolałem sklecić sobie coś na szybko na płytce stykowej i już. Nie mniej jednak przy dużej ilości wpadających pomysłów do głowy (a mam ich ciągle bez liku jak na razie), w końcu braknie tych płytek stykowych,...
A ja napisałem takie, może się przydadzą. Co prawda są na ATmegę8, ale 16 chyba się nie różni. void EEPROM_write(unsigned int address, unsigned char data) { EEDR = data; EEARH = (unsigned char) (address >> 8); EEARL = (unsigned char) address; if ( SREG & 0x80) { cli(); EECR |= (1...
proponuję zastosować zarówno przed każdym zapisem i odczytem jak i po zapisie/odczycie eepromu makro eeprom_busy_wait() które jest tym samym co while(eeprom_is_ready()==0)
Przyłącze się do tematu żeby nie zakładać nowego. Mam prośbę. Jestem raczej raczkującym programistą. Wczoraj cały wieczór walczyłem z obsługą 24c16 przez ATMEGA16. Mam takie procedury. ldi R16, (1<<TWPS0) out TWSR, R16 ldi R16, 10 out TWBR, R16 TWISTART: ldi R16, (1<<TWEN) | (1<<TWSTA) | (1<<TWINT)...
jakiego programatora uzywasz
nie pomogło
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...
http://obrazki.elektroda.pl/8472920100_1... Witam! Jakiś czas temu zacząłem bawić się procesorami AVR. Jako programatora wykorzystywałem moduł FT232. Po jakimś czasie gdy zacząłem ów moduł wykorzystywać również do transmisji danych między procesorem a komputerem (UART) pomyślałem, że aby zmniejszyć kabelkologię (FT232 podłączony jako...
http://obrazki.elektroda.pl/3623921600_1... Witam Wszystkich Zegar który Wam przedstawiam powstawał dosyć długo, przeważnie wieczorami. Zegar posiada: - Zegar na PCF8583. - Data - Budzik (programowy). - Obsługę pilotem RC5 - Wyposażony w diodę IR do włączenia lub wyłączenia światła o danej godzinie. - Tester zasilacza na LM358N. - Dwu...
http://obrazki.elektroda.pl/5636705900_1... https://filmy.elektroda.pl/37_1378532310... Termometr mikromocowy LCD ATMEGA16 Tym razem głównym celem projektu było sprawdzenie możliwości wykonania mikromocowego systemu pomiaru temperatury w oparciu o możliwie standardowe elementy, mówiąc w skrócie byłem ciekawy czy zwykły avr może być...
Tu jest oryginalny program do eepromu. Podstawiłem do swoiego i zapis działa. Chciałbym w drugą stronę odczytać i wyświetlić. Robię sterownik temperatury. Po włączeniu zasilania ma odczytać z eepromu zadaną temperaturę. Porównać z mierzoną i sterować zaworem trójdrożnym. Jak już wspomniałem pomiar temp. działa poprawnie. Nie wiem co to jest: eeprom_busy_wait();...
Wypluło coś takiego: C:\Users\Wojtas\Desktop\USBASP_avrdude\a... -c usbasp -p atmega16 -v -U lfuse:r:-:h -U hfuse:r:-:h avrdude: Version 5.3.1, compiled on Jan 1 2007 at 14:25:19 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ System wide configuration file is "C:\Users\Wojtas\Desktop\USBASP_avrdu de\avrdude\avrdude.conf" Using...
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...
Po pierwsze: Używasz wewnętrznej pamięci, więc pamiętaj o żywotności cyklów zapisu/odczytu. Jest zalecenie, aby czynności związane z wewnętrzną pamięcią nie wkładać do pętli. Po drugie: Zainteresuj się zewnętrznymi pamięciami na I2C. To są moje wycinki kodu do regulatora PID: To w nagłówku: $eeprom 'Informacja dla procesora o korzystaniu z pamięci EEPROM...
Też miałem o tym napisać ale dałem sobie spokój bo to nie na temat. U mnie często wychodzi około 1M cykli zapisu. Dodano po 1 Możesz zapisywać dane w kodzie Gray'a. Często kilkakrotnie zwiększa to maksymalną ilość zapisów bo każdy bit w bajcie jest zmieniany mniej więcej tak samo często. Ale oczywiście zależy to też jeszcze od charakteru zmian zapisywanych...
W ksiażce "ATmega w praktyce" Baranowskiego jest napisane, że EEPROM jest odporna wg gwarancji producenta na 100000 zapisów... Natomiast w dokumentacji od ATmega8 nie znalazłem( być może przeoczyłem ) taką informację.
mam atmega16 i chce zeby podlaczyc do niego Pamięć EEPROM 64kB .poprostu musze miec zewnetrzna..Jak zrobic zeby kontroler byl sterowany z tej zewnetrznej a nie z tej 16kb wewnatrz.... jakie polaczenie i co wogole..
Szukam gdzieś tablicy pl znaków, ale znaleźć nie mogę. sam zrob :P co do zapisu do eeprom tez mialem taki pomysl ale sie nie miesci do wew eeprom w atmega16 i 1 kod zajmuje mniej niz 8kb bo sie miesci do atmega8
Nie wiem czy przedmówcy o to chodziło ale program może zapisywać podczas pracy ciągle jakąś zmienna do eepromu i po jakimś czasie zwyczajnie eeprom kończy swoje życie.
Witam. Mam pewne urządzenie w którym użyłem procka Atmega16 i pamięci eeprom M24256. urządzenie ma dostęp do netu. Chciałbym robić aktualizację programu w procku w następujący sposób: 1. pobranie programu z netu do pamięci eeprom. 2. wysłanie odpowiedniej komendy powodującej przejście do bootloadera. 3. załadowanie nowego oprogramowania i reset. Jak...
Oj, niestety dalej tak mają choć faktycznie jest już nieco lepiej. Usunięty jest już błąd nadpisywania komórki zerowej, ale bez BOD'a dalej czasami EEPROM się krzaczy.
(at)mas24 Do tej pory wszystko masz w SRAM, więc możesz to używać jakkolwiek chcesz. Natomiast po skopiowaniu do EEPROM już nie. TFunkcja kol. (at)michalko12 oczywiście kopiuje wszystko do EEPROM, na lokalnej kopii w SRAM ciągle możesz pracować. BTW, o ile dobrze pamiętam działasz też na XMEGA? Tam masz fajnie, bo EEPROM można zmapować w obszar przestrzeni...
W nowszych Megach EEPROM ma własny timer niezależny od zegara systemowego. Pzdr. N.
Tam nie ma EPROMA. ATMEGA16 ma wewn. pamięć EEPROM i FLASH. Każda pompa ma swój przekaźnik sterowany jednym tranzystorem z portu ATMEGI, diody LED są sterowane z oddzielnych portów (nie są powiązane elektrycznie ze sterowaniem przekaźników).
Po co aż atmega16 do tego spokojnie jakiś ATtiny starczy. I ile Ty chesz tych ustawień zapisywać, że Ci wewnętrzny eeprom nie wystarczy? I co to za wentylator, że aż 14A mosfet potrzebny?
OK wszystko działa michalko12 na atmega32 ale nie z 16MHz a z 20MHz chociaż co jakiś czas coś zgubi ale wystarczy mi to co jest. emarcus twoją wstawkę też sprawdziłem ale niestety nie działa tak jak powinna, wstawka michalko12 działa i na razie mi to wystarczy do testów. Dziękuje wszystkim za pomoc a szczególnie michalko12. Dzięki, temat zamykam. Jak...
Nie pytaj czemu tylko co to jest :) poczytaj co to jest eeprom a co to jest flash a sam odpowiesz sobie na to pytanie, pozdrawiam :)
Czesc Proboje zrealizowac trasmisje miedzy Atmega16 a EEPROM at24C04, mam kilka watpliwosci: a) jak ustawic porty SCL i SDA jezeli mam je zewnetrzenie podciagniete przez rezystory do VCC? Ja ustawilem DDRC=(0<<DDC0)|(0<<DDC1) oraz PORTC=(1<<PD0)|(1<<PD1) b) jezeli ostatni bit adresu harwarowego tego EEPROMa jest bitem A8 adresu...
dzieki foxik :) program osiąga rozmiar ok 96% atmega16 dolozony został układ limitera ,w przypadku nastąpienia przesteru ,uC obniza poziom sygnału na wejsciu za pomocą PGa2310 :) uklad komend z rc5 mozna dowolnie konfigurowac ,zaleznie od potrzeb (na pcb zwora programowania ) dołozony został układ przełacznika na przekaznikach dla Trybu pracy brige/stereo/parallel...
Jak dla mnie EvB 4.3 v2 byłoby niemal idealne (ze względu na peryferia) gdyby nie to że RTC, EEPROM i inne są na "sztywno" podłączone do uC
czyli zgrywać dane na eeprom a następnie podłączając pod zasugerowany konwerter i2c na USB sczytywać na komputer?? tak ?? Także problem tkwi w napisaniu sekwencji zapisu na eeprom i zbudowanie konwertera do sczytywania na komputer??
No właśnie, stosowanie superdokładnych rezystorów jest bez znaczenia, jeśli nie zastosuje zewnętrznego napięcia referencyjnego. Z drugiej strony kalibrację można zrobić programowo i zapisać wynik w EEPROM przy pierwszym uruchomieniu. Wyjdzie taniej i prościej.
Tego nie wiem, ale w sumie to nie sądzę. Po to był blokowany, żeby nie można było go odczytać. Źródło ma producent i dla niego odblokowywanie nie jest istotne, bo może zapisać sobie nowy. Tu już raczej pojawia się kwestia włamania do układu czyli stosowanie różnych technik, które pozwolą na obejście zabezpieczenia. Możesz próbować chłodzić układ, odczytywać...
atmega16 eeprom atmega16 zapis eeprom atmega16 ds1820
sortowanie programów dekoder identyfikator komputera vestel 17ips72
prosty tester kwarcu mikrokomputer cobra1
Passat B6 2.0 TDI - Check Engine i przerywanie silnika Błąd F, 1, 4 na płycie Teka IZF 99 700 BK MST