Tak, to dobry tok myślenia. MSB adresu 0x100 będzie na pozycji P0.
Zajrzyj np. tu: http://katalogi.iele.polsl.gliwice.pl/d....
Sprawdź w datasheet tego eepromu czy czasem adres nie ma być wysyłany w postaci 2 bajtów :arrow: np i2c_send(eeprom_addr, memry_addr_L); i2c_send(eeprom_addr, memry_addr_H); Oczywiście funkcja jest wymyślona ale mam nadzieje że przedstawia ideę :) P.S Jeżeli nie to może napisz programowy I2C :idea:
Witam, dzisiaj zabrałem się za zabawę z pamięcią EEPROM. Pierwszy z problemów jaki napotkałem to adresowanie pamięci EEPROM. Znalazłem w internecie 2 polecenia które mnie interesują: eeprom_write_byte (adres, zmienna); x = eeprom_read_byte (adres); Problem w tym, że jak zrobię tak jak podano w tym wątku: http://www.elektroda.pl/rtvforum/topic18...
Od czego zależy adres EEPROM i jak go ustawić
Jak z etykiety eeprom wydobyć liczbową wartość adresu i przypisać ją do zmiennej? Można zadeklarować prawidłowo zmienną eeram W ten sposób Dim Adres_er(size_t_mac) As Eram Byte At Adres_p_mac Poprzez komende AT znam adres, po jaki będzie się odwoływać zmienna eeram w pamięci. Następnie Deklaruje, jakie wartości powinny być zapisane w eeram...
Witam. Chcę aby w epromie powtarzac kilka razy dany adres np. 5 razy adresy po kolei od 0 do 30, potem 5 razy od 31 do 50 itd... Trzeba użyc jakiegoś procesora?
Bascom Atmega Jak zapisać domyślne wartości w eepromie pod wskazanym adresem? Tworzenie zmiennych w kodzie, które mogą wskazywać, pod jaki adres ma ona wskazywać zajmuje miejsce w kodzie programu. Jeżeli zadeklarujemy to w ten sposób to wszystko jest zapisane w pliku epp i nie zajmuje miejsca w kodzie programu. Ale jak wskazać że przykładowo etykieta...
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...
Witajcie. Avrgcc i plik nagłówkowy eeprom.h. Nie znalazłem prostego sposobu. Czy da się umieścić zmienne w pamięci EEPROM pod konkretnym adresem nie zostawiając pola dla linkera? Potrzebuję tablicę uint16_t Tablica[16] EEMEM umieścić (a potem odczytywać) od pierwszej komórki pamięci EEPROM (czy jakiejkolwiek innej). Da się to zrobić prosto bez pisania...
Witam, jak umieścić dane w eepromie (generowanie pliku eep/hex) w pod określonymi adresami: Typowo można wykonać coś takiego: #define EEPROM __attribute__ ((section (".eeprom"))) unsigned char tablica_w_eepromie[4] EEPROM = { 0, 0, 0, 0}; ale problem polega na tym że muszę mieć dostęp do tej tablicy...
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
sprawdz tutaj http://www.easy-soft.pl/zasoby/opis-1-wi...
AVR nie posiadają rozkazu, którym by mozna bezpośrednio odczytać wewnętrzny EEPROM. Służą do tego macra (sekwencje rozkazowe). Zostaje chyba tylko pośrednio przypisać zmiennej konkretny adres w EEPROM-ie i względem niego adresować pozostałą część umownej tablicy.
http://obrazki.elektroda.pl/3622659500_1... Witam, chciałbym przedstawić swoją prototypową konstrukcję dotyczącą 1wire i słynnych czujników DS18, jak każdy układ powstał z potrzeby. Ten projekt jest Aktualizacją obecne używanego starego dosyć układu AVT AVT5330(8 x DS18) opartego na Attiny2313 - Link do dokumentacji: crontab -e i na...
uint8_t EEMEM uk_mem 1. W tablicy zapisuje wartości hex w formacie '0x00' do '0x0f'. Może lepiej będzie zapisywać je w formacie int 0-15, bo zajmie to mniej miejsca w pamięci? Co to są "wartości hex w formacie '0x00' do '0x0f'"? Łańcuchy znakowe, czy liczby 0 - 15? 2. Zmienna 'czujnik_mem' mówi czy w układ będzie włączony czujnik i przyjmuje wartości...
EEPROM pracuje przy takim zakresie napięć jak MCU. Skoro przy BOD na 3V i zasilaniu procka 3,3V masz resety to znaczy, że coś jest nie tak z zasilaniem. Masz wszystkie wymagane kondensatory filtrujące przy MCU? Odczyt z EEPROM jest szybki, tak jak z innych rodzajów pamięci, mapowanie znacznie przyśpiesza zapis (zapisujesz od razu blok 32 bajty, a nie...
A0 w PCF także do masy. ... A pytałem czy adresy poprawnie ustawione :roll: Skoro oba układy mają ten sam adres to jak niby chcesz je adresować poprawnie?... Pozdrawiam, GSM
Pierwsze 60 bajtów SRAM w ATmega8 to przestrzeń I/O i można ją też adresować za pomocą STS dodając 0x20... ;)
chodzi szczególnie o warstwe programową bo myśle że należało by podłaczyc 2(3?) nie podłaczone nogi jednego z układów 4094 jako jedne z lini adresowych. Jakby popatrzeć w kod, to wystarczy żeby zmienić rozmiary bufora i zakres adresów. Zauważ że procedura write2eeprom(x:byte;dptr:word) najpierw ustawia najstarszy bit ( {litting LED} ) a następnie wysyła...
Nie bardzo potrawię sprawdzić to co napisał stozu Pinów A0 A1 i A2 24c16 w eepromie nie można samemu ustawiac, bo układ używa ich do przełączania sobie storn pamięci, poza tym ten eeprom ma osiem stron pamieci po 256 bajtów. bo dopiero zacząłem zabawę z I2C (i to na początek w Bascom). Na pierwszy rzut oka coś tu wygląda bez sensu. Skoro strony są adresowalne...
rj1307 napisał: I drugie pytanie, jeśli dobrze zrozumiałem, nie mogę adresować xram'u od 0 tylko od adresu powyżej końca pamięci wewnętrznej mikrokontolera. Jak więc zapisać pełne 64kB? Bezpośrednio sie nie da. W kontrolerze trzeba ustawić adresowanie 32 kB. Pamięć trzeba podzielić na dwa obszary po 32kB. Linią adresową A15 (nie musi to być PC7) wybieramy...
Jak wszystkie dataflashe od Atmela - czytasz bezpośrednio z matrycy, możesz adresować każdy bajt niezależnie. Zapisujesz za to stronami, ale do tego masz bufory. Możesz załadować zawartość strony do bufora, zmodyfikować dowolną ilość bajtów, a następnie zapisać stronę do matrycy.
Siemka! Apropos wypowiedzi Zumka. Tak będzie jak mówisz jeżeli nie będzie się podłączało kolejnych czujników to będzie zapisywany wciąż ten sam:) ale można dopisać jeden warunek z badaniem wykrytego kolejnego numeru czy nie jest taki sam jak jakikolwiek zapisany poprzednio i po kłopocie :). To jest tylko wyrwana z kontekstu całego programu procedurka,...
Pamiętam że kiedyś czytałem jakiegoś pdf'a ze stajni Atmela i napisane było aby nie adresować bajtu pod adresem 00. Mogą występować błędy zapisu i odczytu podczas resetowania. Ale Ty napisałeś że 00 i 01 tak więc nie wiem :D Dokumentacje miałem jakiś czas temu i nie pamiętam czy dotyczyła całej gamy mikrokontrolerów Atmela czy któregoś wybranego.
no niestety znaleziony przez mnie datasheet tych pamięci (at24cxx, w tym at24c16) mówi co innego: http://dhost.info/ky3orr/funkcje/downloa... proszę spojrzeć na stronę 8 - wyraźnie przy wersji 16 piny są NC a 3 najmłodsze bity adresu to adres strony (pomijając bit R/W) zaś kolega znalazł datasheet kości z...
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...
Sumując ,aby adresować całą przestrzeń pamięci e2prom 24c32 potrzebuję 12bit adresu 2^12 =4096 bajtów . Czyli przestrzeń adres komórek wynoś od 0 do 4095 i w trybie pojedynczego zapisu bajtu danych podaje numer komórki tego zakresu . Przy zapisie stronami po 32 bajty adres jest inkrementowany w obrębie strony. Panie Andrzeju wspomniał Pan o adresowaniu...
Czy nie jesteś czasem z tych co chcą wyświetlać animacje na LCD :?: ;-) Teraz poważnie. W AT89s8252 bezpośrednio adresuje się tylko pierwsze 128 bajtów, jeżeli zaadresujesz bezpośrednio górne 128 bajtów, to działasz na SFRach, żeby dostać się do RAMu powyżej 07Fh musisz adresować pośrednio przez (at)R0 -(at)R7. Czy jesteś pewien, że twój kompilator...
Witam!! Stęskniliście się za marudą ?? ;) Dzisiaj nie miałem za dużo czasu, ale coś tam dorzuciłem do programu. Dorobiłem przycisk, po wciśnięciu którego ma wykonać zapis do pamięci. Oczywiście nie działa. Powiedzcie mi, proszę, jak adresować zapis poszczególnych komórek <prosi> Tutaj cały kod: $regfile = "m8def.dat" $crystal = 1000000...
Witam! Najpierw tytułem wstępu: Kompilator - program tłumaczący kod zrozumiały (język wyższego poziomu np C, Delphi itd) dla człowieka na kod zrozumiały dla maszyny, czyli binarny lub na język niższego poziomu np asembler. - asembler jest programem tłumaczącym kod napisany w języku niższego poziomu na język wewnątrzny maszyny czyli jw - binarny, zrozumiały...
Nie sądzę abyś znalazł po polsku - niestety świat elektroniki to przede wszystkim angielski. Ale możesz poczytać to: http://radzio.dxp.pl/eeprom/24c32-24c512... a dane znaleźć w datasheet: http://www.atmel.com/dyn/resources/prod_... + tłumacz Google: Datasheet przetłumaczony
Próbując dostać się do drugiej połówki pamięci zrobiłem taka poprawkę ustawiającą "Block select bits" czyli zamieniłem #define EEPROM_BUS_ADDRESS 0xA0 na #define EEPROM_BUS_ADDRESS 0xA8 ale to nie działa.:cry: To jest poprawny sposób adresowania całej pamięci. Natomiast jeśli EEPROM_BUS_ADDRESS jest stałą programu, a nie zmienną, to adresowany jest...
3b. Z wykorzystaniem FSR nie ale w ogóle to tak. EEPROM się adresuje tylko w taki sposób, wpisując adres do rejestru EEADDR. A przed wpisaniem można go przecież zmodyfikować. 3c. Z wykorzystaniem FSR nie ale w ogóle to tak. Bo tak samo jak EEPROM, dane na karcie adresuje się podając karcie adres a skoro tak to można go zarówno pobrać jako stały, albo...
Hmm..... To w związku z tym jak się odnosić do wyższych adresów w pamięci skoro 256kB EEPROM podzielony jest na 8 sektorów z czego każdy sektor ma 32768 B; bo przecież adres jaki podajemy w kodzie źródłowym programu jest 15 bitowy (1B + 7b), stąd (111111111111111)bin = (32767)dec = (0x7FFF)hex, czyli maksymalny adres jaki można napisać używając 15 bitów...
Raczej czytaj ja jako 24E16 a jezeli nie masz takiej to jako 24C16 nie 24C32 bo jest wtedy inaczej zczytywana (roznice sa w adresowaniu pamieci). i bedziesz mial bledy.
hx1F czyli 512 bytow . Jak do tego dojsc ? 1024 x4= 4096 /8 =512 - zamieniam na hex i mam hx1F (512 to hx20 ale adresujesz od hx00 wiec hx1F) poprawilem :) dodajac hx :)
Tak, to zadziała z wersją USBee 8kanałów, a po wymiane eeprom na adresowany bajtem też z Saleae.
Witam Chcialbym do mojego projektu na lcd 128x64 dorzucic troche grafiki zaluzmy 60 klatek 128x64 (128*64/8*60 = 61440B ~61KB po kompresji RLE nawet mniej a do dyspozycji jest 64 KB 24LC512 na I2C) Problem pojawia sie powyzej 36 grafiki jakies 32K wyskakuje komunikat "Label not found" czyli nie znaleziono etykiety. Czy ktos mial podobly problem? Podejrzewam...
Chodziło mi o wykorzystanie bootloadera jako programu do wgrywania samej pamięci mikrokontrolera (firmware) oraz dodatkowo "pomostu" służącego do programowania zewnętrznej pamięci podłączonej do uC dowolnym interfejsem - eliminuje to potrzebę podpinania kilku programatorów do kilku złącz, oraz w elegancki sposób pozwala na odczyt zawartości EEPROMu...
Podczas programowania warto trzymać się starych, sprawdzonych standardów. Np. Intel HEX. Ten standard ma rozwiązane już te problemy o których piszecie, np. jak wieki bufor, kedy rozpocząć zapis eepromu, adresowanie + jeszcze kontrole poprawność danych CRC.
A czy umiesz mi wytłumaczyć dlaczego potrzebujesz właśnie flash zamiast eeprom (oprócz tego że to jest trendy lub groovy)? Kup taką która ci wystarczy, Tak czy tak od 24c32 wszystkie większe sa adresowane tak samo wiec jaka byś potem nie wstawił to zadziałą. Oprócz tego jest jeszcze dataflash.
Witam mam radyjko do naprawy tylko poprzednik wydarł eeprom 24c01 wstepnie adresowany:(( potrzbuje bina do tego modelu może być z kodem:((
Warto zastanowić się jak częste będzie odświeżanie wyświetlaczy i w jakim stopniu (całość zawartości/dane o aktualizacjach) i co za tym idzie jaka prędkość transmisji oraz częstotliwość jej powtórzeń. Adresowanie np 1-255 -> dane/komenda wysłane do określonego modułu (adres zworkami lub programowany w eeprom) Adresowanie na 0 -> dane/komenda do wszystkich...
a jeszcze moge dodac jak to zapisac np do komórki pamieci nr100 w eepromie a potem to odczytac z tejze komórki czyli w skrócie adresowanie ? z góry wielkie dzieki No co Ty , żartujesz :?: eeprom int *eeptr; void main(void) { char a; a=0x11; eeptr=100; *eeptr=0x33; a=*eeptr; for(;;); } Piotrek
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...
na dzien dobry to EEWRITE na poczatku nie ma startu na magistrali a na koncu stopu. 2- po wysłaniu danych do zapisu nie czekasz min 10ms aby dana zostal zapamietana. pozdrawiam. p.s. odczyt wyglada na prawidlowy.
Jest to słowo :) określające konkretny adres w pamięci. Jest ono zależne od budowy i sposobu adresowania pamięci. Najczęściej są to słowa 2 x 8 bitów. W dokumentacji pamięci masz dokładnie napisane co które bity oznaczają.
poczytaj sobie o strukturze wewnętrznej AVRków - jak są adresowane i jakie są możliwości dostępu czy to do pamięci EEPROM, RAM oraz FLASH - to dowiesz dlaczego nie można użyć zewnętrznego EPROMA o którym piszesz jako rodzaju zewnętrznej pamięci programu bo o to zapewne ci chodzi. To jest całkowicie bez sensu - jeśli potrzebujesz więcej pamięci programu...
Witam. Chciałem pobawić sie w symulacje EEpromow np. 24cxx dostępnych w programie Proteus 7. Zgodnie z notami katalogowymi układów, posiadają adres w postaci: 1 A2 A1 A0 B2 B1 B0 R/W, gdzie A2,A1,A0 sa ta linie definiujące adres poprze odpowiednie podłączenie do Vdd i Vss. W programie pamięci te wyprowadzone maja tylko linie SDA SCL. Moje pytanie do...
Czy to znaczy, że zmienne statyczne czyli zadeklarowane ze słowem static i zmienne globalne znajdują się w pamięci FLASH i są później kopiowane do RAM? Dotyczy to tylko zmiennych globalnych (statycznych w scope funkcji), które są zainicjalizowane. Zmienne globalne niezanicjalizowane są umieszczane w sekcji .bss i inicjalizowane wartością 0. Gdybym...
Mam pytanie. czy ten eeprom można zastąpić np 24C16. Nie znalazłem go w katalogach i mam wątpliwości czy to możliwe i czy adresowanie jest takie samo.
eeprom to nie jest pamięć ram, po sekwencji wysyłania danych zapis następuje po otrzymaniu znaku stopu i trwa około 10ms.. musisz wstawić opóźnienie 10ms pomiędzy stopem jednego zapisu a startem kolejnego.
Potrzebuje to do zapisania większej liczby od 255 w EEPROM.. https://gist.github.com/ledlogic/a6d901f... Liczba zajmuje 4 bajty w eeprom a wiec nalezy to wziac pod uwage przy adresowaniu podczas zapisywania kolejnych wartości w eeprom. Pozdr
moduł RTC jest podłączony dobrze i funkcjonował dobrze zanim nie zacząłem bawić się eepromem. eeprom ma niepotrzebnie wyprowadzone końcówki do adresowania. Prawdopodobnie jak zapisywałem cała pamięć eeprom musiało coś się wpisać do RTC i pomieszało mu... może dlatego teraz to nie działa (to jest jedna z wersji)...
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,...
Eeprom 1k,2k,4k,8k,16k adresujemy pojedynczym bajtem.Szczegóły znajdziesz w manualu na stronie Atmela. Wesołych Świąt!
adresować eeprom adresować modbus adresować układ
pendrive zabezpieczyć zelmer dioda odkurzacz stawiać router
naprawa spawarki inwertorowej sprzedam programator pralki samsung
Samsung wieża CD – komunikat INVALID, nie czyta płyt, napęd, laser, kondensator Kod A11 1000 w piecu Junkers - konfiguracja systemu