Witam, ilość odczytów nie ma znaczenia, mam układ gdzie 8 komórek 24C02 jest odczytywane cyklicznie co kilka milisekund w termometrze od ponad 7 lat i jeszcze nic się nie zmieniło. Nigdy nie spotkałem się z informacją o ilości cykli odczytu a jedynie zapisu do EEprom.
Masz podłączony kwarc 8.0 - 16.0 MHz? I kondensatory 12-22pF przy kwarcu? Częstotliwość kwarcu ustawiona w środowisku programistycznym? R Dodano po 1 kwarc 20MHz Dla tego kwarcu masz źle ustawione fuse-bity. Swoją drogą po co taki szybki kwarc? R Dodano po 2 Brak zaznaczenia bitu EESAVE powoduje, że przy każdym programowaniu mikrokontrolera pamięć EEPROM...
to może zainteresuj się jakimś uC z wbudowanym eepromem? np. atmega +fusbity blokujące odczyt eepromu przez programator
Masz podawane złe długości pól. Skoro odwołujesz się np. do pola okrążenia typu DANE_ZAWODNIKA to nie możesz robić sizeof(DANE_ZAWODNIKA) bo to nadpisze ci kolejne pola, powinno być sizeof ale pola okrążenia. Takich błędów masz więcej. Definicja: DANE_ZAWODNIKA numer_zawodnika_tab[sizeof(DANE_ZAWODNIK... też na oko jest bez sensu. Bo robisz tablicę...
Witam, potrzebuję co minutę zapisywać zmienną w pamięci EEPROM. Ile czasu "teoretycznie" pamięć będzie można użytkować? Czy ilość cykli zapisu jest taka sama do odczytu? Czy jeżeli wykonuję tylko zapis co minutę od ilość cykli odczytu również ulega zmniejszeniu ?
http://obrazki.elektroda.pl/2762225800_1... Jedyny taki przenośny programator układów AVR. Pomoże wszędzie tam, gdzie trzeba zaktualizować oprogramowanie, a układ docelowy znajduje się w trudno dostępnym miejscu i nie mamy możliwości (lub chęci) ciągać ze sobą laptopa i mnóstwa przewodów. Banalnie łatwa obsługa, niski koszt wykonania, super...
http://obrazki.elektroda.pl/3799930900_1... Jakiś czas temu pisałem, jak nagrywać gry z PC na PEGASUSA. Teraz pora podejść do tematu z drugiej strony – jak zgrać naszą ulubioną kolekcję kartrydży na komputer. Wiele osób może się dziwić, po co taki zabieg, zwłaszcza, że większość gier z tej konsoli krąży już po Internecie. Czasem...
Piszę program który w założeniu ma posiadać pamięć ustawień. Dokładniej jest w nim 11 zmiennych oraz 128 możliwości ich ustawień (128 banków pamięci dla tych 11 zmiennych). Każda zmienna jest 8bitowa. No i dostaje od kompilatora (WinAVR ) dziwne komunikaty: warning: pointer targets in passing argument 1 of 'eeprom_read_byte' differ in signedness W kodzie...
Sprawa wygląda następująco: Mam Atmegę8, którą programuję w C (avr-libc). Zapisuję 20 bajtów danych do pamięci eeprom za pomocą funkcji eeprom_write_byte pod określone adresy. Następnie, nie wyłączając zasilania, w dalszej części kodu odczytuję te dane przez eeprom_read_byte. Wyświetlam je, wszystko jest ok. Kolejno, wyłączam zasilanie, włączam ponownie,...
Witam, chciałbym wykorzystać pamięć EEPROM do zapisania jednej zmiennej. Ogólnie chodzi o to, że mam na płytce 5 diod LED i przycisk. Chciałbym aby po wciśnięciu zapały się kolejne diody, a po odłączeniu i ponownym podłączeniu zasilania powinny świecić się te same diody co przed odłączeniem. Stworzyłem sobie taki program ale nie działa. [syntax=c] #define...
Na razie próbuję to zrobić w tradycyjny, "Atmegowy" sposób, gdyż mam to już przećwiczone. Na razie procedurka sprawdza, czy w EEPROMie jest FF (lub FFFF dla 16 bitowych zmiennych) i ustawia wartości domyślne. Jednak po odczytaniu, wartości zmiennych nie sa na swoich miejscach. Wpisuję 5 danych typu uint8_t i 8-elementową tablicę uint_16 t. W której...
Wygląda na problem z zasilaniem, pamięć eeprom jest niestety dość czuła na tym punkcie. Próbowałeś włączyć Brown-out detection z ustawieniem na odpowiedni poziom napięcia?
http://obrazki.elektroda.pl/4553573800_1... Przy tworzeniu projektów z mikrokontrolerami, oprócz uniwersalnych płytek stykowych, często przydają się gotowe moduły testowe, które można szybko podłączyć. Można kupić takie w wielu sklepach, ale ich ceny są na ogół absurdalne, np. w Kamami sprzedają płytkę z ATmega128 za 109 zł! Poniżej...
No więc w ten sam sposób nie zapiszesz do zewnętrznej pamięci EEPROM. Po pierwsze, ona jakoś się komunikuje z procesorem, popularne interfejsy to SPI lub I2C. Taką zapewne pamięć masz. Więc musisz oprogramować komunikację z nią. Jak już będziesz miał komunikację z pamięcią to musisz napisać własne funkcje wyższego poziomu, realizujące zapis/odczyt struktur,...
No właśnie z instrukcji jakie udostępnia alnor wyraźnie jest napisane, żeby modyfikować komórki pamięci. Tutaj prawdopodobnie jest bardzo podobnie. https://obrazki.elektroda.pl/4699363600_... Dlatego uważam, że Airios który jest dostawcą nie zablokował możliwości odczytu oraz modyfikacji pamięci. W moim przypadku może być podobnie...
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...
Mam tyle zaległej pracy , że nie mam czasu dogłębniej tego opisać. Przecież kolega napisał wyraźnie, ze kiedy załaduje obrazek do Flash mikrokontrolera to mu się wyświetla. Możemy chyba temat podłączenia LCD pominąć? Sprawa ma kilka aspektów i dlatego pewnie nie jest pokazywana w co drugim tutorialu :P Po pierwsze trzeba zrozumieć że dołączenie obrazka...
Dam Ci jeszcze coś z czym sie możesz przespać (nie dosłownie) po prostu przemyśleć jak to obsłużyć :D hahahaha Podczas programowania procesora najczęściej pamięć Eeprom jest czyszczona i zapisywana wartościami &HFF dla każdej komórki. Wtedy kiedy dla każdej z ośmiu pozycji będziesz chciał wczytać zapamiętane wartości to wczyta dwa FFFF czyli 65535 Zadana...
Przesyłam garść konstruktywnej krytyki. Bisz stworzona aplikacja przy kompilacji programu tłumaczy go na język IL (czyli coś w rodzaju assemblera). Instrukcje w tej postaci trafiają do pamięci flash ATmegi. Pamięć flash podzieliłem na dwie sekcje (po 64kB). Jedną zajmuje oczywiście firmware, a do drugiej zapisywane są instrukcje programu. Firmware posiada...
http://obrazki.elektroda.net/43_12786005... Atmega fusebit doctor, jak sama nazwa mówi, to urządzenie do naprawienia nieumiejętnie przestawionych fusebitów w mikrokontrolerach z rodziny AVR. Największymi problemami jest ustawienie nieprawidłowego źródła zegarowego (fusebity CKSEL), wyłączenie programowania SPI (fusebit SPIEN), lub ustawienie pinu...
mimo że program który zapisuje pewne dane do eepromu działa poprawnie, to gdy chcę sobie odczytać stan tego wewnętrznego eepromu zawartego z ATmega 32, to wywala mi same FF.... CZemu nie mogę poprawnie odczytać zawartości EEPROMU za pomocą funkcji Read Data(EEPROM) bo takiej używam. Pojemność jaką odczytuję jest niezgodna... EEprom w procku ma 1 KB,...
Witam, Próbuję napisać program do wymiany danych z zewnętrznym EEPROMem 24LC16B. Zapis raczej działa - w podobny sposób udanie komunikuję się z przetwornikiem PCF8591. Natomiast podczas odczytu pamięć zwraca mi wysłany przeze mnie ctrl_byte (adres na magistrali) w trybie Current Address Read, lub 0xFF w trybie Random Read. Kod: [syntax=C]void eeprom_read(...
Witam! Mam problem z zaprogramowaniem kości 24c32. Jest ona podłączona do atmegi8 do lini sda i scl. Pozostałe linie eepromu są: a0, a1, a2, wp, vss do masy i vcc do plusa. Atmega odczytuje tylko 255 więc komunikacja chyba jest ale oczywiście pamięć pusta, a gdy próbuje coś wpisać to to samo.. Przykładowy program: 'początek i2cstart i2cwbyte 160 'adres...
Oto plik ze zmiennymi z których chce korzystać w programie głównym: #ifndef H_ZMIENNE_EEPROM_H #define H_ZMIENNE_EEPROM_H uint8_t smieci1 __attribute__((section("... = 0; uint8_t temp_zadana __attribute__((section("... = 28; uint8_t temp_zalaczenia_pompy __attribute__((section("...
Witam, 1. Nie podałeś jaki jest rozmiar pamięci EEPROM a od tego zależy sposób adresowania. Linie A0,A1,A2 masz podpięte do +5V (logiczna 1) czyli jeżeli masz pamięć mniejszą niż 24C16 to adres 0xA0 jest niewłaściwy. 2. Linia WP dla normalnego trybu pracy powinna być podpięta do GND (logiczne 0). 3. Aby zdiagnozować problemy na I2C po zakończeniu każdej...
Witam Postawiłem sobie za cel możliwość zapisania wartości pwm w zewnętrznej pamięci eeprom, w tym przypadku AT24C02 Procesor to Atmega 8, wewnętrzne taktowanie zegara 1MHz W załączeniu wkleiłem uproszczony program zapisu i odczytu wartości pwm. Za pomocą pwm steruję jasnością podświetlenia wyświetlacza LCD. Wiem, że można zapisywać te ustawienia w...
http://obrazki.elektroda.pl/1254071400_1... Witam. Jest to moja pierwsza taka poważna konstrukcja, więc proszę o wyrozumiałość. Sterownik powstał ponad rok temu, gdy miałem dużo wolnego czasu po złamaniu nogi. Pierwszą funkcją, jaką miał spełniać, był prosty alarm z powiadomieniem GSM. Po przeszukaniu internetu zdecydowałem się na procesor...
Dataflash ma SPI z fmax 40MHz, a atmega przy kwarcu 16MHz może mieć SPI z fmax 8MHz więc odczyt danych 8-bitowych będziesz miał trochę poniżej 1MHz (co 512 bajtów trzeba wysyłać jeszcze rozkazy odczytu/zapisu strony chociaż jak dobrze pamiętam jest tryb continous read). A tak wogóle to czy Ty czasem nie potrzebujesz RAM? A i 32IO to trochę mało żeby...
Witam, Przedstawiam poniżej program (kompilator AVRGCC+AVRStudio5), który przygotowałem jako testowy, jest to fragment większego projektu. Jego zadanie polega na odczycie kilku parametrów z pamięci EEPROM, sprawdzenie czy jest w określonym zakresie, jeśli nie jest to wprowadza wartość domyślną i zapisuje z powrotem do pamięci EEPROM. Program działa...
Witam Na szynie I2C podłączoną mam kość PCF8583 oraz pamięć 24C64. Wykonuję zapis do pamięci a następnie odczyt. Jednak podczas zapisu następuje przekłamanie danych. Np zapisuję wartość 35 do pamięci a w rzeczywistości zapisana zostaje wartość 32 lub 33. Gdy odłączę od szyny I2C PCF8583 problem znika. W czym więc leży problem? Bardzo proszę o jakieś...
Witajcie, Zaczynam dopiero programować AVR-y w C i pozwólcie że zadam takie banalne pytanie: Jak zapisywać poszczególne bajty w pamięci. Nie chodzi mi tu o zapis z poziomu programu, tylko wklepanie pliku .hex do pamięci przy pomocy Pony Prog-a. Np coś takiego: Adres: dane: 00 0xA4 01 0x45 02 0x02 03 0xA4 ... i tak dalej do pewnego adresu. W...
Dziękuje za odpowiedzi. Muszę przyznać że zainteresował mnie temat kart SD/MMC. Trochę już sobie poczytałem i mam pytania: Wiem że nie da się zapisać pojedynczego bajtu tylko paczkę 512. W moim przypadku będę tylko odczytywał dane więc czy musze odczytać całe 512 czy mogę tylko jeden wybrany z paczki. Jak z czasem odczytu? Nie będzie to wolno działać...
Witam! Ostatnio musiałem przerzucić projekt z atmega8 na atmega168 (więcej sprzętu i pamięci) ... i zaczęły się problemy. Chyba kilkanaście razy sprawdzałem cz poprawnie skonfigurowałem wszystkie rejestry i dalej nic, program lubi się czasami wysypać, lub nie działa wg. oczekiwań, gdy na atmega8 działa ok. Podejrzewałem że wina może tkwi po stronie...
Witam . Napisałem ( prawie) sobie na ww procesor program w asm i bascomie który ma robić za zamek otwierany kartą . W bascomie wszystko działa w 100 % według założenia jednak w asm mam taki problem że układ sam zmienia swoje taktowanie (ponad 2x) przez co wszystkie funkcje czasowe nie pracują jak powinny . Nie było by w tym nic niezwykłego ( ustawiony...
Robisz odczyt oddzielnie dla pamięci flash i oddzielnie dla eeprom? W programie masz 2 przyciski read do oddzielnego odczytu każdej z pamięci i musisz tak zrobić. Najlepiej usuń pliki które w tej chwili odczytałeś, bo coś mi mówi, że ten pusty zrzut pamięci flash jest z tej pustej atmegi której nie mogłeś zaprogramować. Następnie odczytaj po kolei pamięć...
Mam jeszcze jedno pytanie, ta pamięć ma 64kbit a tam stron jest 32 i 256 komórek no i (strony)32*(komórki)256=8192 i to nie jest 64kbit(65536), czy tej pamięci jest tylko 8192 czy gdzieś jest reszta? Używam tego kodu. Sub Zapis(byval Strona1 As Byte , Byval Adres1 As Byte , Byval Zapiszf As Byte) I2cstart 'start I2cwbyte 160 I2cwbyte Strona1...
Witam ponownie, dziękuję za odpowiedzi. (at)megao Sprawdziłem z ciekawości dzisiaj zapisywanie EEPROMu z poziomu programu dla AVRa (z racji, że cierpię na chroniczny brak czasu zrobiłem to dopiero teraz). EEPROM działa poprawnie (tj. zapisana liczba zostaje w EEPROMie). Przykładowo, wiem, że pierwszy bajt (często sporny bajt o adresie 0 z którym sporadycznie...
Jednak moja wersja sejfu nie posiada motywu z pastylką Model Magna 800 otwiera się za pomocą klawiatury pinpad, modele serii Titan są na kartę, Quantor na pinezkę. Pastylkę iButton, czyli ten ich Masterkey, przykłada się do maszynki EOT 300 lub BiMaxa, a maszynkę łączy kablem z sejfem (gniazdo na płytce pinpada). https://obrazki.elektroda.pl/9335554200_...
Witam, mam taki problem podłączyłem sobie równolegle na I2C zegar czasu rzeczywistego PCF8583 oraz eeprom 24C16. eeprom ma adres pierwszej strony 160 dla zapisu, dla odczytu 161, kolejne strony to 162/163, 164/165 itd. - łącznie 8 stron pamięci. rtc ma też adres 160/161 ewentualnie 162/163. Początkowo nie zauważyłem, bo jeden adres miałem zapisany szestnastkowo...
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...
EEPROM to dodatkowa pamięć służąca do przechowywania danych przez program. Jeżeli w kodzie nic do niej nie zapisujesz ani z niej nie odczytujesz, jest bez znaczenia. Ta opcja definiuje, czy zawartość pamięci EEPROM będzie zachowana, czy skasowana podczas wgrywania programu. Przy wgrywaniu przez bootloader (UART/USB) zawsze jest zachowywana.
http://obrazki.elektroda.net/97_12728985... Witam. Przedstawiam projekt Tunera FM z dekoderem RDS. Konstrukcja powstała jako potrzeba zastąpienia wysłużonego sprzętu Diory. Tuner jest pierwszym elementem zestawu jaki zamierzam wykonać, następnym elementem będzie wzmacniacz. Z uwagi na brak czasu projekt powstawał przez około 1,5 roku. Dekoder...
W zasadzie skopiowałem przykładowy kod z noty, nie działa mi zapis do wewnętrznego EEPROM'a, odczytuje ciągle 0xFF. Piszę w C, AVRStudio4, procek kręci się na 12MHz, nie mam włączonej żadnej optymalizacji (-00), nie wykorzystuje bibliotek, programuje mkAVRcalculator. Fuse bit's: LOW = 0xFF, HIGH = 0xD9, Extended = 0xFF, lock byte = 0x3F. [syntax=c]...
Da sie to zrobić? Bo robie projekt na atmega8515 (mam ich kilka więc nie będe kupował nowego) a on nie ma TWI a potrzebuje dołączyć pamięć EEPROM Jak to zrobić pod bascomem o ile sie da Witam wszystkich. Ostatnio spotkałem sie z podobnym problemem. Musiałem odczytać i zapisać zawartość 24c08 (1024 bajty). Niestety :( programy przykładowe załączone...
Usunięcie lockbitów czyści całą pamięć. Flash i eprom.
Sądzę, że jest to bardzo bardzo duża ilość. W końcu procesor musi odczytywać pamięć wielką ilość razy podczas normalnej pracy i nie ma z tym problemów.
Przedewszystkim pamięć 24c08 to są 4 pamięci 24c02 w jednej obudowie. Maksymalny adres w pamięci to jeden bajt(255 max) a nie jak u ciebie 335. zmień typ zmiennej adr na byte i adresuj maksymalnie do 255. proponuje wstawić krótkie opóźnienie tak aby pamięć miała chociaż szansę się wykazać. ponieważ tam pamięć jest podzielona na cztery podstrony(każda...
Gdybym opisał program wszystko stałoby się oczywiste :D Użycie IF ELSE bez END IF zawsze warte jest omówienia bo potem nikt nie może się doliczyć END IF :D Chodzi o to że jeśli tylko jedna instrukcja jest od jakiegoś warunku zależna to można ją zapisać w jednej linii. Jeśli z powodu jakiegoś warunku musza juz być zmienione dwie zmienne lub wykonać się...
Oki pomylilem sie chodzilo mi o pin WP czyli write protect. Jest tez jeden problem otoz programem do zczytywania adresow magistrali odczytywal mi kilka adresow a nie jeden jak pin A2 wisial w powietrzu a po podpieciu go do plusa adres zmienial sie na jeden 168. Wczesniej zczytal mi adresy 160, 162, 164, 166, jednak adres 162 gryzlby sie z adresem PCF8583....
Dzięki, testy na Arduino potwierdzają, że funkcja EEPROM.put() faktycznie czeka aż zapis się zakończy i trwa to ~3,35ms na bajt. Pozostając jeszcze w temacie EEPROM-u, jak to jest z tą ilością cykli zapisu do pamięci? Zauważyłem, że większość uC ma tą wytrzymałość deklarowaną na 100k zapisów, niektóre (np. Atmega88) tylko 50k, ale czy ktoś to w ogóle...
Co ciekawe, błąd TWI pojawia się tylko przy zapisie do AT24c1024, co ciekawsze - po wystąpieniu błędu i zresetowaniu TWI w atmedze pamięć ta dalej trwa w "zawieszeniu", wystarczy jednak odczytać inny układ na magistrali (np. odczytać czas z PCF8583) i pamięć wraca do życia. Prawdopodobnie robi to warunek STOP.
Witam. Mam układ (Master), który na podstawie konfiguracji zapisywanej w 8kBajtach pamięci EEPROM (AT24C64) odczytuje dane z ok 100 układów (Slave) rozproszonych w sieci RS485. Układ działa ok i nie ma z nim problemów jednak chciałem przyspieszyć jego działanie, bo ok 90% czasu zajmuje odczyt konfiguracji z pamięci. Układ master jest oparty o AT89C2051....
Jest taka instrukcją I2CINIT - sprawdź ją w Helpie. Czy masz podpięte rezystory 4K7 pod sda i scl ? Sprawdź jak zachowa sie pamięć jak odczytasz tylko 1 bajt, może problem polega a tym że robisz 2 zapisy i 2 odczyty od razu. Czy nie masz pomylonego sda i scl - częsty błąd?
Dawno nie programowałem, i z tego co pamietałem jeszcze z C++ nie miało to znaczenia w którym miejscu znajdowały się funkcje. Pamięć płata nam różne figle. W reklamach polecają ginkofar. Albert
Witam. Posiadam tylko programator USBasp przez który nie mogę odczytać tokenu karty RFID. Pomyślałem więc, że zapiszę ten token do pamięci EEPROM, a potem odczytam tą pamięć przez programator. Problem w tym, że coś mi nie wychodzi.. Kod który odczytuje token rfid przyłożonej do czytkina karty i zapisuje pod zmienną: :20000000000000000300000000000000000...
...Czy moje rozumowanie jest poprawne? Nie do końca. Jeżeli piny A1=A2=0, to pamięć ta przy zapisie, będzie "widziana" pod adresami 0xA0 i/lub 0xA2.
Wiem wiem, pamięć wewnętrzna - ogólnie chodzi tu o naukę. W docelowym układzie będzie zewnętrzna, choć zapisy będą realizowane 1 dziennie. a swoja drogą jaka jest żywotność eepromu wewnętrzengo? Co do kodu, posiedziałem i pogłówkowalem i powstało coś takiego. oczywiście to przykład który teoretycznie można rozbudować do spokojnie 8-10 WY '8 MHz/256/31250...
bo niszczysz pamięć niepotrzebnie. Rozwiązanie jest prostsze niż myślisz, zwłaszcza gdy - jak mówisz wartość zmiennej to max 48. Zrób funkcję do odczytu tych zmiennych: uint8_t eeprom_get_var(...) { uint8_t var; var = eeprom_read_byte(...); if(var > 48) var = 0; return var; } I problem nie istnieje. 4\/3!!
Bardzo dziękuje za informację. ...... A gdzie może tkwić problem, że po dołączeniu zasilania od procesora ta pamięć jest zerowana. Prawdopodobnie ta 'pamiec' nie zostala faktycznie wpisana do okreslonej lokacji, zatem wiec odczyt jej jest "oryginalnie" zerowy. e marcus
Szesnastkowo FF, lub - jeśli wolisz 0xFF Pamięć EEPROM jeśli jest pusta zawiera właśnie taką wartość. FFh to takie przyzwyczajenie - przepraszam, jeśli wprowadziłem w błąd...
Witam mam program obsługujący pamięć AT24C64D, nie udało mi się zrobić to sprzętowo więc trzeba było programowo. Udało się wysłać do pamięci jeden bajt i odczytać na wyświetlaczu wszystko wygląda tak jak powinno. Teraz chcę utworzyć funkcję Zapisu i odczytu: void EEPROM_zapis(unsigned char adres, unsigned char dane) unsigned char EEPROM_odczyt(unsigned...
Pod warunkiem że nie ustawiłeś lock bitów możesz wykonać polecenie: avrdude-p m8 -c stk500v2 -P avrdoper -u -U flash:r:read.hex:i -U eeprom:r:read.eep:i Będziesz mógł powielić urządzenie, ale o zmianach raczej zapomnij, no chyba że jesteś hardcorem :D Pozdrawiam
Pamięć jest nieulotna, czyli informacja nie zniknie po wyłączeniu zasilania. Natomiast pamięć ta jest zapisywana i odczytywana z poziomu programu, (program pisze i czyta) natomiast dane do zapisu możesz przesłac po RS-ie ale te dane odbierze program i dopiero on może je zapisać lub odczytać i wysłać.
Ciekawe rozwiazanie ale liczy sie w mojej pracy miejsce. Zrobie chyba jednego eeproma (dostep prosty - malo roboty) i polacze z kompem przez ft232 na czas zgrywania danych. Kiedys podlaczylem mmc i zapisywalem dane i odczytywalem ale juz fata nie mielem sily robic :)
Jak mam pokazać, to jest już duży program (zajmuje prawie całą pamięć 32-tki) w całej swojej objętości zmienia te rejestry a w głównej pętli sprawdza kolejny rejestr czy nastąpiła w nim zmiana zmiana i jeśli tak to zapisuje do EEPROM-u. Pytałem o konkretny jego fragment. Skoro zajmuje Ci to 4s to znaczy, że masz błędny algorytm, bo nie sądzę, by był...
re. Odczyt pojedynczego bajtu dałem jak z noty katalogowej i co ciekawe - ruszyło - co prawda póki co sprawdziłem tylko w symulatorze, ale z rana sprawdzę jak uP to potraktuje. Mam jednakże pytanko. Przeglądając forum natknąłem się na informację, że można by stworzyć tablicę w EEPROM i komunikować się jak do zwykłej tablicy. Kod jest taki na to: #define...
Po pierwsze to zajrzyj do pdf'a odbiornika IR, bo na Twoim schemacie brakuje konda i rezystora przy podłączeniu TSOP'a. http://pdf1.alldatasheet.com/datasheet-p... Ma być w programie: Wygaszacz (godzina + temperatura), - Czasomierz najprościej na programowym RTC: str. 244 w książce Wiązni, zaś temperatura - str. 293. Wszystko...
5. Jeśli chodzi o mikrostyki. Czy jeśli zastosuje taki układ jak na poniższym rysunku to będzie ok? Trzyma on wejście w stanie wysokim a po wciśnięciu przycisku generowany jest impuls (chwilowe przejście do stanu niskiego i powrót do wysokiego). Zastanawiam się tylko czy zdążę po otrzymaniu informacji o wystąpieniu przerwania (przejście ze stanu wysokiego...
Męczę się z tym już ponad tydzień i nie umiem sobie poradzić. Mam na płytce zaprogramowaną pamięć (są tam zapisane WAV'y) Flash EN29LV640T http://wstaw.org/m/2011/02/10/schemat_pn... #define F_CPU 4000000UL #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> #include <avr/eeprom.h> int main(void)...
Jakoś udało mi się zmusić do działania eeprom_write_word, po zczytaniu .eep dostaję wpisaną przez program liczbę w kolejności little endian, czyli to się zgadza, ale już z odczytem nie jest tak fajnie, daję: [syntax=c]cykle_w=eeprom_read_word(0xaa)... Potem przy pomocy itoa wysyłam zmienną int cykle_w na LCD, wpisana wartość testowa: [syntax=c]eeprom_write_word(0xaa,...
Witam!... Piszę ten post, ponieważ nie mogę poradzić sobie z (prostym pewnie da Was) problemem zapisu i odczytu plików graficznych *.bmp lub *.bgc do i z zewnętrznej pamięci EEPROM, np. 24LC256... Chce zapisać w niej kilkanaście obrazków np. 132x100 pikseli (wystarczą 256 kolorowe), potem odczytywać i wyświetlać na LCD... Odczyt/ zapis z pamięci Flash...
Pamięć 24C daje sięprogramowac bez problemu w ukłądzie, tylko pamiętaj że lutując ustawiasz jej adres {sprawdź w nocie katalogowej nóżki A0, A1 , A2.!} Co do gadania do mikroprocka daj sobie na razie spokój z wysyłaniem znaków . Poszukaj w domu pilota z kodem RC5 najlepiej jakiegoś Philipsa lub LG. I napisz program, który po naciśnięciu wybranego klawisza...
Zapis do EEPROM jest ok. Między innymi dlatego wpisuje tez te zera (pamięć EEPROM mikroprcesora zawiera same FF). Tutaj nie potrzebuję żadnego trybu pracy na razie bo czujnik ma zmierzyć temperaturę, a ja chce odczytać to co zapisze w pamięci. Przetwarzaniem tego dalej ma zając się komputer, więc rolę wyświetlacza będzie spełniał tu jego monitor. Czynności...
Nie mam jtaga. Ale zrobiłem pewny eksperyment: Stworzyłem zmienna statyczną od "liczby zapisów" (potem te zmienna mogę odczytać). Jeśli "paluchem" zewrę układ R20, vcc_det,vcc i gnd(czyli to co opisywałem wcześniej-zapis wtedy działa) to za każdym razem następuje 2 krotny zapis zmiennych, licznik pętli zapisu zwiększa się o 2, jest to pewnie wynikiem...
http://obrazki.elektroda.pl/9589280700_1... HPS 2014 Hybrydowy laboratoryjny zasilacz sieciowy. Parametry użytkowe zasilacza w skrócie: 1. Wykorzystanie tanich i łatwo dostępnych elementów. 2. Wydajność prądowa min 3A (dla niskich napięć może dochodzić do 5A). 3. Rozdzielczość DAC 12bit. (filtrowany PWM 4.9kHz) 4. Rozdzielczość ADC...
No właśnie tak jak poznałeś :) Nie ma innej możliwości. Zabezpieczenie działa także pod kątem odczytu lockbitów, czyli nie da się odczytać nawet ich. Aby je skasować (lockbity) należy wykonać chep erase, co jednocześnie kasuje pamięć FLASH: Lock Bits ... can be cleared by a chip erase command only. ... The Chip Erase will erase the Flash and EEPROM(1)...
Witam. Dzisiaj chciałbym Wam zaprezentowć moją najnowsza aplikację - NAvr. Jest to już wersja 2.0a. Program NAvr® v.2.0a służy do graficznej obsługi znanego nam wszystkim programu avrdude. Obsługuje masę różnych procesorów oraz programatorów. Co można zrobić za pomocą tego programu? 1. Wgrać z dysku plik *.hex do pamięci flash 2. Ściągnąć na dysk...
FLASH/EEPROM, bo będziemy potrzebować sporo pamięci. flash może nie wystarczyć, szczególnie po Polsku, gdzie gramatyka jest złożona. Raczej karta pamięci. Attiny do dajacych sie zrozumiec komunikatów głosowych - chciałbym to zobaczyc. Cortex bo kosztuje tyle co atmega a ma wszystkie wymagane mechanizmy i peryferia Przy dostępnych obecnie pamięciach...
Pod tym względem Bascom 8051 i AVR nie różni się wogóle, poza tym w helpie do bascoma AVR jest przykład jak zapisywać i odczytywać akurat 24C04, a skoro masz ten kurs to masz tam wszystko ładnie objaśnione, już dalej pod nos się podsunąć nie da...
Witam, Staram się napisać własny bootloader który ma odczytywać plik z karty SD. Ale nie mogę uporać się z problemem, jak wrzucić bootloader pod odpowiedni adres w pamięci. Na elektrodzie znalazłem że w AVRStudio (4.X) robi się to przez Project->Configuration Options-> Memory Setings i tam wpisuje: Memory Type: FLASH Name: .bootloader...
Witam serdecznie! Mam wielki problem z bascomem i magistralą i²c. Otóż kiedyś, gdy miałem bascoma 1.11.7.7 magistrala i²c działała bez problemów, teraz mam Bascoma 1.11.9.5 i nie mogę się skomunikować z żadnym układem i²c. Zegar i pamięć eeprom w ogóle nie odpowiadają, testowałem na 2 płytkach (jednej własnej konstrukcji, druga BASCOM...
Ja też dopiero zaczynam się uczyć programować pamięć eprom ale według mnie w tym kodzie jest błąd //odczyt z eeprom uprzednio zapisanej wartosci twistart(); twiwrite(0b10100000); twiwrite(2); twistart(); twiwrite(0b10100001); j = twiread(0); //O - NOACK twistop(); Tam gdzie masz podany adres pamięci...
Nie nie ma tam karty SD ;). Co do tego czy piszę kod niechlujnie, to może sam ocenisz. Co w programie się znajduje to: obsługa lcd (z bussy flag), 2 termometry ds18b20 na jednej linii z możliwością rozbudowy do znaczniejszych ilości ;), odczyt kodów RC5, zapis danych do wewnętrznego EEPROM'u, wchodzenie w stan uśpienia oraz dość rozbudowane menu, jak...
Witam, od 2 dni próbowałem zmusić do działania jedną napisanych przez siebie funkcji - odczyt danych z pliku tekstowego na nośniku SD/MMC sformatowanym w FAT32. Funkcja ma za zadania przypisanie do zmiennych wartości z pliku tekstowego. Do obsługi FAT32 wykorzystałem bibliotekę http://obrazki.elektroda.net/82_12517521... Tutaj status po kompilacji,...
Witam. Od pewnego czasu zacząłem się bawić w programowanie eepromu w atmedze i już napotkałem kilka nieprzyjemnych doświadczeń. Zacznę może od zapisywania pamięci eeprom. Mam kilka pytań z tym związanych, więc je ponumeruje :). 1. Jak to jest zapisałem do eepromu jakiś znak, potem go odczytałem. Żeby sprawdzić, czy wszystko gra wyświetliłem go na LCD....
Pamięć EEPROM po to jest żeby w niej zapisywać i z niej odczytywać dowolne swoje dane, które mają być przechowywane podczas wyłączenia zasilania. Musisz tylko wziąć pod uwagę, że pamięć EEPROM to nie RAM. Różnice nie polegają tylko na tym, że inaczej się ją obsługuje, że trzyma dane przy wyłączonym procku ale także to, że ma ograniczoną ilość zapisów....
No dobra - małe podsymowanie do czego doszliśmy z "Liściastym" (wielkie dzięki za pomoc i poświęcony czas!!!). Do programowania używaliśmy PonyProgVersion 2.02c Beta do ściągnięcia za strony http://www.LancOS.com, programowany procesor - Atmega16 umocowany w zestawie uruchomieniowym z Nowego Elektronika (programator STK200/STK300 - zestaw do montażu...
Witam Z listingu wynika, że dane są zapisywane do wewnętrznego eepromu procesora. Jest taka możliwość, tylko trzeba przerobić program. Należy dodać obsługę I2C i przepisać podprogramy do zapisu, odczytu i kasowania pamięci. Pozdrawiam
Witam. Problem mój polega na tym, że potrzebuję pewne dane umieścić w pamięci eeprom atmegi32. Do tej pory robiłem to w programi głownym za pomocą instrukcji : while(eeprom_is_ready()==0); eeprom_write_block((uint8_t*)text1,(uint... Pozwalało to na prawidłowy odczyt.Problem jest jednak że te dane dalej zajmują miejsce a chciałbym je na stałe...
Nie da się zabezpieczyć procka przed skasowaniem. Fuse bitami można zabezpieczyć pamięć procka przed odczytem, ale skasowanie EEPROM-u powoduje wyczyszczenie fuse bitów.
"opóźnienia związane z przetwarzaniem danych" chodziło mi o to że mikrokontroler zanim przygotuje te dane i je wyświetli minie trochę czasu. Ja w danej chwili nie potrzebuje idealnie dokładnego czasu, ale żeby po tygodniu nie rozjechał się o kilkanaście sekund, bo po roku będzie to opóźnienie kilku minut, a zamierzam zastosować dla PCF'a podtrzymanie...
Case`ów nie dotykaj. Napisz wszystkie a program określi które wyświetlić a które pominąc ;) Zapis tylko jednej zmiennej do Eeprom. Za to po przepisaniu z eeprom do SRAM możesz sprawdzać każdy bit z osobna. Na dodatek numer bitu może być zmienną czyli jeśli zmienna ma 16 bitów to drugą zmienną możesz określić o który bit Ci chodzi. Jeśli zmienna Menu...
Witam wie ktos moze jak dopisac w programie zapis do pamieci i ich odczyt chodzi mi dokladnie zeby mozna bylo zapisac do 4 ustawien czestotliwosci i je odczytac z pamieci jest to synteza ukf ma tylko jedna pamiec standardowo pozdrawiam $crystal = 4190000 'deklaracja rezonatora $regfile = "m8def.dat" 'wybór procesora Config Lcd = 20 * 4 Config Lcdpin...
Witam, Mam do Szanownych Kolegów pytanie: Czy odczyt danych z pamięci EEPROM wpływa na jej trwałość (jeśli tak, to w jakim stopniu), czy też pamięć ta zużywa się tylko poprzez zapis i kasowanie? W datasheecie producent podaje tylko informacje odnośnie ilości gwarantowanych cykli zapisu i kasowania (chyba, że coś źle poczytałem), tak jakby odczyt nie...
Witam. Zbudowałem urządzenie z wykorzystaniem atmega32 jest w nim ok 2kb kodu napisanego w bascom. Urządzenie wykonuje cykl pracy bazując na kilku zmiennych odczytanych z eeprom wewnętrznego. Maszyna posiada licznik cykli i za każdym razem przy 17 cyklu wyskakują na wyświetlaczu krzaki a po następnym atmega sie resetuje. Wykluczam tu zakłócenia - układ...
Programowanie i odczyt eepromów działa na przejściówce usb-com ,ale bardzo wolno. Gorzej jest z picami, bo ten sam programator (też parę oporników i chyba 4 diody) na sprzętowym com śmiga aż miło a na przejściówce dochodzi do połowy i wywala błąd. W każdym razie eeprom odczytasz i zapiszesz.
Dzięki wader_669 i emarcus , to mi wyjaśniło a właściwie skomplikowało rozwiązanie, dzielenie modulo 8 i reszta to nr bitu. czy możecie jesze podpowiedzieć , jak po każdym uruchomieniu w petli FOR/NEXT wpisać do eepromu 0 w bajty o adresie 1 (druga komórka pamięci) do 420?
W momencie zapisu (konkretniej w jednym jego kroku) trzeba wyłączyć przerwania, bo pamięć EEPROM wymaga ściśle określonej liczby cykli. Jest to opisane w datasheecie np. ATmega8. Nie wiem czy funkcje w Bascomie to realizują, ale można sobie napisać je samemu i to bez stosowania wstawek assemblerowych, Bascom umożliwia przecież operacje na rejestrach...
musze stworzyć tablicę uint8_t 16KB, kiedy mam tylko 2KB pamięci { uint8_t tab[128] = {0,...,127}; uint8_t i=0; while(i<128){ if(zbocze_opadające){PORTC=... } } {//tutaj zmniejszam zasięg zmiennej uint8_t tab[128] = {0,...,127}; uint8_t i=0; while(i<128){...
Witam. Jestem raczkujący jeśli chodzi o technikę Mikrokontrolerów. Od miesiąca posiadam zestaw EVB 4.3 z kursem AND-Tech. Zrobiłem prymitywne urządzenie do sterowania lampy. Potrzebuję je wzbogacić o funkcję zliczania czasu przebiegu tej lampy ( po to by wiedzieć ile już świeciła). Lampa ma ograniczony czas żywotności więc funkcja jest pożyteczna (pozwoli...
odczyt pamięć eeprom atmega odczyt eeprom odczyt eeprom atmega
peugeot bipper silnik grzanie laminatu przebieg pojazdu
podajnik bizhub raspberry projekty
Klawisze ton, rytm i funkcje w Casio CT-770 Identyfikacja radia Volkswagen Blaupunkt MFD