Tak, to dobry tok myślenia. MSB adresu 0x100 będzie na pozycji P0.
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...
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.
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
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...
Zajrzyj np. tu: http://katalogi.iele.polsl.gliwice.pl/d....
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...
Od czego zależy adres EEPROM i jak go ustawić
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...
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:
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...
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...
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...
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.
Witam mam radyjko do naprawy tylko poprzednik wydarł eeprom 24c01 wstepnie adresowany:(( potrzbuje bina do tego modelu może być z kodem:((
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.
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 :)
Ja w C piszę dopiero pół roku, ale w asm od wielu lat. Tam także w zależności od ilości użytego eepromu adresowałem albo bezpośrednio, albo wskaźnikiem. Ja natomiast używam asm i nigdy nie jadę na adresach, skoro kompilator to umożliwia przez etykiety.
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...
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.
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.
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...
sprawdz tutaj http://www.easy-soft.pl/zasoby/opis-1-wi...
Może się mylę w swoich dociekaniach co mikmas miał na myśli, ale mnie osobiście zdziwiło zapytanie o tani EEPROM skoro wersje i2c kosztują kilka polskich złotych. Gorzej cenowo wyglądają EEPROMy adresowane równolegle, stąd moje - może niezbyt trafne - wnioski. Z wymogu co do ilości pinów także wnioskuję, że chodzi bardziej o EEPROM/EPROM adresowaly...
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)...
Eeprom 1k,2k,4k,8k,16k adresujemy pojedynczym bajtem.Szczegóły znajdziesz w manualu na stronie Atmela. Wesołych Świąt!
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...
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
Małe pamięci (od 24c02) możesz zastępować większymi, ale tylko do 24c16. Te od 24c32 wzwyż są inaczej adresowane.
chyba nie rozumiem twojego problemu lub czegos nie zrozumiales w helpie: Zapisuje dane do wbudowanej pamięci EEPROM. Składnia: WRITEEEPROM zmienna , adres gdzie: zmiennazmienna, której wartość wpisana będzie do adresowanej komórki EEPROM, adresadres komórki pamięci EEPROM.
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...
A jak zaadresujesz 511 komórkę ?? W nocie napisane jest adresowanie 9-bitów. Czytaj dokładniej.
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.
Linie A0-A2 w 24c04 najlepiej jak w oyginale, oprocz układu musisz zmienic adresowanie, bo w 24c04 czesc adresu komorki EEPROM jest wysylana z adresem na I2C.. jesli adresowanie bedzie takie samo kosc bedzie zachowywac sie jak 24c02 /poprostu stracisz dostep do gornej 'polowki' Pozdrawiam.
Witam was w kolejnym cyklu, który tym razem będzie dedykowany osobom, które dopiero rozpoczęły lub chcą rozpocząć przygodę z mikrokontrolerami. Stąd też przedstawiam zupełnie podstawowe informacje, które mam nadzieję pomogą początkującym. W tym odcinku w 30 minut chciałbym odpowiedzieć na pytanie „Jak zacząć przygodę z mikrokontrolerami najprościej...
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ą.
Wiesz co! Zastanawiam się czy nauczyciele zawsze muszą starać się zrobić to metodą " czy można jeszcze gorzej ?". Adresy, liczniki, dekodery i dzikie węże a jakiś czas temu realizowano takie wybryki prawie w technice dyskretnej i stąd trzeba czerpać wzorce prostoty przy wykorzystywaniu współczesnych elementów. Owszem EEPROM bo łatwo dostępny i niezbyt...
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.
Masz dla tego mikrokontrolera błędy w adresowaniu rejestrów związanych z obsługą EEPROM dlatego ani nie zapisujesz ani nie odczytujesz z EEPROM. A w ogóle to asemblacja przebiegła bezbłędnie?
Witam, Przesiadłem się na WinAVR, w związku z tym mam pytanie. Czy posiada ktoś do tego programu jakiś opis (składnia, funkcje) szczególnie chodzi mi o obsługe portów, RS-232, adresowanie pamięci zewnętrznej oraz obslugę EEPROM. W jaki sposób dołożyć plik nagłówkowy z typem procesora. Będę wdzięczny za wszelkie materiały Pozdrawiam
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...
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,...
Sprawdź dokładnie adresowanie - odczyt i zapis. Problem na pewno leży gdzieś tam.
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...
Ona ma tylko 128 bajtów od 00 do 7F i nawet nie wykorzystuje sie przy adresowaniu najstarszego bitu więc może zrób na odwrót :D Próbowałeś adresowac tylko jednym bajtem?
Akurat wybrałeś bardzo niefortunnie eeprom 24c16. Ten akurat bity adresujące więcej niż jeden układ ma przeznaczone na adresowanie strony. Czyli linie A0,A1,A2 są przeznaczone na P0,P1,P2. 24c16 może być tylko jeden. Sugeruję jeśli Ci wystarczy 24c8 lub 24c32 (32k).
Wiem że kiedyś też z tym miałem zonka i głowiłem co jest nie tak. Rozwiązaniem było pozostawienie pierwszej komórki i adresowanie danych od adresu 01, jak pisałem wcześniej.
Panel dotykowy z 6 diodami sterowany po i2c na ATTINY44 Poniższy materiał przedstawia próbę ugryzienia tematu krytycznych zależności czasowych w asemblerze. Zadaniem było stworzenie stabilnie działającej aplikacji która obsłuży: komunikację z procesorem nadrzędnym w trybie slave i2c sterowanie multipleksowanymi diodami z 8bitowa regulacja jasności...
znaczy ze z pamieci SRAM dane same znikaja w trybie idle lub sleep? skoro piszesz w C, to co cie obchodzi w jaki sposob realizowane jest adresowanie posrednie? 4\/3!!
Nie-rozszerzony tryb adresowania Racja 24c32 też już mają tryb rozszerzony
Problem dotyczy wszystkich języków programowania i wszystkich mikrokontrolerów. Chodzi o uszkadzanie się zawartości pamięci eeprom kiedy program idzie w krzaki. Zauwzyłem, żę kiedy traktuję atmegę zakłoceniami emc potrafi o ona zacząć wykonywać inny fragment kodu (bascom), jakby skoczyła pod jakiś przypadkowy adres. objawia sie to czasem podwójnym pisaniem...
To jest dokładnie ten fragment ltc.asm : ;---------------------------------------... ; EEPROM initial value .eseg eeParms:.db0x18, 0x20, 0xF0; PWM base, P gain, D gain eeComVal:.byte12 ; Sensor compensation values Czyli 3 bajciki w EEPROM do zaprogramowania + 12 bajtów adresowanych przez którąś z procedurek....
Witam, narazie napisałem tylko tyle ;( $regfile = "m8def.dat" $crystal = 8000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Pinc.2 , Db5 = Pinc.3 , Db6 = Pinb.2 , Db7 = Pinb.2 , E = Pinc.1 , Rs = Pinc.0 Config Rc5 = Pind.2 Config 1wire = Pinb.0 Config Sda = Pinc.4 Config Scl = Pinc.5 'zapis i odczyt danych z eeprom Dim A As Byte Const...
A sprawdzałem to 3 razy... Adres &H160 Sukces :) Dodano po 17 Czyli jak teraz mam odczytać eeprom? Dodano po 3 $regfile = "m8def.dat" $crystal = 8000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portb.2 , Db7 = Portb.1 , E = Pinc.1 , Rs = Pinc.0 Config Sda = Portc.4 Config Scl = Portc.5 'zapis...
Przyznam że w elektronice cyfowej jestem praktycznie zielony więc nie za bardzo wiem co taki licznik robi. Czy on ma służyc jako pamięć czy jako układ odczytujący z eepromu. I czy podaniu mu prądu stanie się tak sobie wymarzyłem że dostane na kazdą z nóżek wyjsciowych po jendym bicie co w sumie da mi 4 cyfrową liczbę binarną? Dodano po 5 Bo tak naprawde...
z tymi pamieciami to jednak jest roznie-niekiedy to co wlozysz jednego producenta nie jest kompatybilne z pamiecia drugiego producenta choc nogi,adresowanie, i wielkosc ta sama-lepiej aby zostalo to....co producent przewidzial.
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...
tak , bascom avr radzi sobie z zapisem dwu lub więcej bajtowych danych, trzeba tylko pamiętać o zachowaniu odstępu w adresowaniu pamięci, dzięki za pomoc
Podłączając dwa układy 24c08 otrzymammy nie 24c16 ale tyle samo pamięci co 24c16 a gościowi właśnie o to nie chodziło. W nocie katalogowej 24Cxx jest dość dobrze opisany sposób adresowania pamięci.
Jeżeli USBEE działa a Saleae nie to znaczy, że układ EEPROM ma za dużą pojemność (chodzi o sposób adresowania, to taka niemiła cecha oprogramowania Saleae), wystarczy wpisać ww. bajty do pamięci 24xx00 .. 24xx08, dana kostka musi być przeznaczona do pracy przy napięciu 3,3 V i zegarze 400 kHz.
odnosnie fragmentow kodu - znajdziesz je na tym forum !!! odnosnie pinow A0 - A2 maja byc podpiete albo do GND albo do VCC - zaleznie od konstrukcji kodu <adresowania tej pamieci>
Układ 24C08 ma 1kB EEPROM pogrupowany w 4 strony po 256 bajtów każda. Adresujesz tak naprawdę 4 układy 24C02. To znaczy, że każdy z nich ma swój fizyczny adres na I2C. Zobacz dokładnie w nocie katalogowej 24C08. Adresujesz tak samo, jak i 24C02 - adres układu (jednej z czterech stron), potem 8 bitowy adres i możesz zapisywać. Podczas odczytu dokładnie...
Pierwsze 60 bajtów SRAM w ATmega8 to przestrzeń I/O i można ją też adresować za pomocą STS dodając 0x20... ;)
Czyli po kropce podajesz nr odczytywanego bitu, a możesz wyjaśnić dokładniej jak z zapisem jednego bitu? Nie. Praktycznie odczytujesz caly byte. Pamiec EEprom w AVR jest 8 bit szerokosci, czyli 1 byte. Nawet jezeli potrzebujesz wpisac do pamieci eeprom tylko jden bit, to i tak zabiera to jeden byte w pamieci. Nie ma mozliwosci adresowania tylko jednego...
Ja na twoim miejscu zacząłbym od nauki podstaw C, a potem ogarnięcia tego języka na AVR. To po pierwsze, a po kolejne: - do zliczania nie używaj float, wbrew pozorom to nie jest obojętne, czy będzie float, czy int. Poczytaj o tym jak float jest reprezentowany w pamięci, bo możesz się zdziwić, kiedy np. x+1 będzie ciągle równe x. - EEMEM nic nie zapisuje...
Ale tablicy nie ma pod adresem 0x120....(sprawdziłem podczas symulacji i nie ma tablicy pod 0x120) Adresuję ja na 0x240 (.org 0x240), w innej części tak samo adresuje dane w pamięci eeprom, którą mapuje pod adres 0x1000 i wszystko jest OK. Sprawdziłem podczas symulacji i nie ma tablicy pod 0x120, a nie chcę tej tablicy umieszczać w eepromie (pewnie...
eepromy 24c64 maja chyba inne adresowanie jak 24c02 wiec nie mają prawa działać. Zamiennie powinny działać tylko 24c04 i 24c08. Dzisiaj sprawdzę na dwóch 24c04 firmy ST. Z maxem raczej problemu nie ma bo po połączeniu linii k i l ze sobą vag-com rozpoznaje interfejs.
Wystarczy czytać ze zrozumieniem. Jeden z poprzedników napisał, że "może służyć np na dane, których zawartość ma być zachowana po wyłączeniu zasilania" więc głupio by było mieć dane których nie możemy zmienić w trakcie działania programu. Podsumowując. Pamięć EEProm zawartą w tym mikrokontrolerze możemy programować z pod poziomu programu jak i poprzez...
byte=(byte<<1)+1; A po co tutaj dodajesz jeszcze jeden do przesuwanego bajtu? Czy używasz I2CWrite też do adresowania kości i komórki pamięci? I jak masz rozwązane adresowanie?
Witam, spójrz na sposoby komunikacji, a dokładniej adresowanie komórek, nie są do końca zgodne. Jeśli to gotowy układ, to będą problemy, jeśli piszesz sam program, to dostosujesz kod do danego układu. Co do oznaczeń, to nie pamiętam, musisz poszukać w datasheet. Pozdrawiam
To wszystko wiem ta pamięć z bateryjką to właśnie eeprom i tak jak ci mówiłem jest inaczej adresowana. Oprócz jezyka, w kości eprom jest cały program min od obsługi panelu i zawierający odnośniki do nastaw w eepromie. Ze względu na róznice w połączeniach elektrycznych w panelach obu marek nie da się zastosować programu Toshiby w kopiarce lanier i to...
Ustaw sobie high na 0 i adresuj tylko 256 bajtów, jak dla Ciebie 8k to za dużo ;-)
A masz inicjację I2C ? Fredy tzn chodzi Ci o: '********************* Konfiguracja magistrali I2C Config I2cdelay = 5 ' domyślnie tryb Slow Config Sda = Portc.1 Config Scl = Portc.0 to mam bo robiłem już zegar z PCF8583 asembler Początkowo próbowałem robić to tak: [syntax=asm] Sub Zapis_eeprom: I2cstart 'warunek startu I2cwbyte Adres_z 'wyślij adres...
a jak sie adresuje dwie różne zmienne do wewnętrznego eepromu? Writeeeprom Command1 , 0 Writeeeprom S1 , ???
Dzięki wielkie mirekk36. Tyle nerwów przez nieznajomość składni :( . Wydawało mi się, że kopiowałem kod z PDF'a. A swoją drogą to trochę brak konsekwencji ze strony Atmela, sbr i cbr adresuje się przecież przez maskę.
eeprom_write_byte(&1, liczba_LED Co to za dziwadło :O to &1 ?? Nie wiem jak się adresuje w tej funkcji ale jeżeli adresuje się od zera to adresując pierwszą komórkę piszesz tak: eeprom_write_byte(1, liczba_LED
To 24E16 w obudowie SOIC8. A wiecej to w PDfie , polecam poczytać czym się rózni od 24C16. A napewno nie odczyta 24E16 ani 24C16 jako 24C32. W pamiątkach I2C powyżej 24C16 jest inne adresowanie i faktycznie można uszkodzić zawartość czytając ją w taki sposób. SławeK
crazy_phisic: Są jakieś ograniczenia w adresowaniu kart SD(to przecież nie jest zewnętrzny RAM, ani EEprom)? To z bootloaderem jest ciekawe, bo można sobie wybrać jaki program ma być załadowany do uC, ale czy da się takie coś zrobić w badziewnym języku jakim jest BASCOM?
Są dwie metody przełączania pamięci: - pierwsza polega na montażu na "grzbiecie" jednej pamięci drugiej, identycznej i przełączanie sygnałów OE lub CE za pomocą przełącznika mechanicznego lub demultipleksera i przełącznika. - druga, to zapisanie dwóch wersji oprogramowania do pamięci o pojemności 2x większej od pierwotnej, i przełączanie wersji za pomocą...
sterowanie jest standardowe a nawet prostrze niż np. do pamięci eeprom, nie trzeba tu adresować żadnej komórki sterowałem już kilkoma układami z rodziny TDA73xx, były to właśnie przedwzmacniacze między innymi tda7315 i najmniejszych problemów nie było dla przykładu regulacja głośności wygląda tak, kilka starszych bitów odpowiada za wybór funkcji potem...
Witam WP podłącz do GND. Co do adresowania tego układu... Zapraszam do lektury http://radzio.dxp.pl/eeprom/24c01-24c16.... http://www.gs.ru/soft/si/SS1-15/24c16.pd... http://chiptuner.ru/download/datasheet/a... Pozdrawiam
Bo w procesorach ARM mamy adresowanie ciągłe. Nie tak jak w AVR, że EEPROM zaczyna się od adresu 0, FLASH od adresu 0, rejestry od adresu 0 itd. Tu jest po prostu ciągła szyna adresowa 32-bit i mamy na niej umieszczone zakresy adresów odnoszące się do danych elementów. Np. (rzucam zmyślone dane) FLASH będzie miał adresy 0x00000000-0x00010000, potem...
Czytalem sobie tabelke z dostepnymi ukladami Atmela. mikrokontrolery te maja wbudowane w siebie pamieci. Staralem sie upewnic, ktora z nich do czego moge wykorzystac. Moje glowne watpliwosci polegaja na rozroznieniu FLASHa i EEPROMu. W końcu i Flash i eeprom nie umieraja, jak sie im odlaczy zasilanie, wiec mam wrazenie, ze w obu z nich mozna przechowywac...
Wychodze z zalozenia, ze konfiguracje monitor przetrzymuje w eepromie... nawet jak daloby sie odczytac zawartosc, zakladajac, ze IC jest dostepny na plycie, nadal nie wiadomo, jaka komorka w pamiecie jest odpowiedzialna za aktywowanie hasla, gdyby byla to pamiec podtrzymywana bateryjka mozna by zresetowac. A tak to juz trzeba analizatora protokolu I2C...
No to jeszcze pytanie pomocnicze - BoskiDialer : Adresowanie w moim kodzie jest OK, zarówno dla byte write, jak i page write ? Bo już sam nie wiem... ;)
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
Co jest źle? [syntax=basic4gl]$regfile = "m32def.dat" $crystal = 8000000 $hwstack = 64 $swstack = 64 $framesize = 32 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7 , E = Portc.3 , Rs = Portc.2 '********************* Konfiguracja magistrali I2C Config I2cdelay = 5 ' domyślnie tryb Slow Config Sda...
Można jeszcze na XR2206 ale można też użyć znacznie tańszej pętli fazowej (koszt do 2zł!) kod: CD4046. Wychodzi z tego piękny sinus regulowany napięciem czyli VCO od 0,1Hz do 6kHz. Sprostowanie: Oczywiście z CD4046 wychodzi nie sinus a prostokąt. Zrobiłem kiedyś taki generator sinusa ale tak: Regulacja częstotliwości za pomocą wspomnianej wyżej pętli...
markosik20 -> no nie jest jeszcze tak dopracowany jak twój zasilacz cyfrowy, na który jak się patrzy to normalnie szok ;) ... a odnośnie tego mojego modułu i RS485 - to oczywiście sprawę zostawiłem na koniec a tu jak zwykle zaczyna brakować miejsca w pamieci procka. Jednak koniecznie to dorobię kosztem innych gadżetów bo będzie to bardzo przydatne....
Ponownie odsyłam do pdf-a. W przykładowym na str1 - piny E0,E1 masz do masy? ..Write protect poprawnie ? ..MODE /WC ? ..jaki dokładnie nasz typ EEPROM, bo zawsze są subtelne różnice. Następnie to czy odczekujesz właściwy czas po zapisie - dla przykładowej str 6 tw=10ms fc=100kHz. Nie ustawiasz adresu A8 bit1 str.3 , bo niby jak skoro używasz 8-bitowego...
Tych maluchów określa bardzo prosto. Mianowicie mają one bity adresowania stron w adresie slave - wystarczy sprawdzić dla jakich adresów pamięć odpowiada na zapytanie.
Dobrze, że temat kondensatora mamy za sobą (długi czas zapisu przy większej eksploatacji pamięci) bo większość dyskusji nie była na temat tak jak zauważył Piotrus_999 , choć rozumiem i doceniam chęć pomocy w sposób inny niż jest to przewidziane w temacie i projekcie. Dziękuje rb401 za zaangażowanie w temat. Wracając do dyskusji nie będzie to tak ekstremalne...
Kolego McRancor tak sie składa że mam ten kurs, ja szukam informacji dla procesorów AVR. Dokładnie interesuje mnie sposób adresowania urządzeń pracujących na magistrali I2C, chciałem zacząć od epromów.
24C64 to pamięć eeprom a nie flash, a co do pytania, to pamięć się adresuje bajtowo i jeśli zaprojektujesz funkcje która przeliczy numer "paczki danych" na adres komórki (np 4 sąsiednich komórek) to możesz ją wykorzystać zarówno przy zapisie jak i odczycie. PS Tak naprawde to ja nie wiem w czym tkwi Twoja wątpliwosć.
'***************************************... 'Program zapisuje bajt Value do dziesięciu komórek pamięci 24c64 począwszy od komórki o adresie &H0000 '***************************************... 'Dla adresowania 24c64 potrzebujemy zmiennej...
Ostrożnie z tymi EEPROM-ami. W zależności od literki na końcu symbolu są one albo 8 bitowe lub 16 bitowe. Oczywiście chodzi o sposób adresowania.
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...
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,...
adresowanie eeprom adresowanie głowy adresowanie bitowe
led4004 manta schemat monitora flatron uszkodzi czujnik spaliny
hewalex sterownik hewalex sterownik
Topografia wyprowadzeń tyrystora BT258 Dzwonienie spod maski Mercedesa GLE przy uruchamianiu