I2C EEPROM kezelése

Hogyan programozzak AVR chipet? Programozók beállításai...
Bascom nyelvű programok...
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10191
Csatlakozott: 2005. december 9. péntek, 7:00

Hozzászólás Szerző: Robert »

3 byte-s a címzésed...
Az LSM, MSB és középső byte van jelen esetben:)
Avatar
norbi
Chipgyilok
Hozzászólások: 308
Csatlakozott: 2006. augusztus 3. csütörtök, 6:00

Hozzászólás Szerző: norbi »

A 3byte-os címzést úgy érted, hogy csak akkor váltsak 3-ra, amikor muszáj?

Mert teszteltem 3byte-tal is, 4gyel is, meg 2word-del is (2byte helyett), persze ezek folyamatosak voltak, vagyis az első adatbyte-kiolvasástól ezeket a címzéseket használtam.
De nem jó, csak a 2byte verzió.
Látszólag a 2word is ok, de 60kb felett lesz valami (még 64K előtt) és a bootloader nem ugrik a 0x0000 címre, lefagy a GOTO _RESET résznél.

Egyenlőre nem is gond, hogy nem megy, csak majd nemsokára, ha átlépem a 64K-kódméretet.

A szekvenciális olvasás lehetne talán a kiút....
Avatar
gerry
Chipgyilok
Hozzászólások: 252
Csatlakozott: 2005. október 11. kedd, 6:00

Hozzászólás Szerző: gerry »

Kellene egy kis segítség!

Az a problémám, hogy egy 4 kapcsolós (relés) programozható termosztátot csinálok és minden beállított hőmérsékleti értéket(xHI-xLo)az eepromba tárolok el. Ez 8db. hőmérséklet érték. Az eepromba mentett értékeket egy timer lefutása után olvasom ki az eepromból és vetem össze a szenzorok által mért értékekkel. Ettől teszem függővé, hogy melyik relé kapcsoljon be ill. ki.
A kézikönyvben az EEpromoknál olvasom ,hogy az Írás/olvasási ciklus korlátozot, minden kontrollernél más-más 1000-100000 között van. Akkor én most a 'readeeprom' utasítással elhasználok a 10000-ből 1-et és elöbb utóbb tönkre fog menni és nem lehet olvasni az eepromot?
Akkor hogyan kellene megoldani a kiolvasás nélküli összehasonlítást?
Avatar
norbi
Chipgyilok
Hozzászólások: 308
Csatlakozott: 2006. augusztus 3. csütörtök, 6:00

Hozzászólás Szerző: norbi »

Ha jól gondolom, Te az AVR belső eepromjára gondolsz, de ne aggódj, a limit nem az olvasásra, hanem az írásra vonatkozik. :wink:
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10191
Csatlakozott: 2005. december 9. péntek, 7:00

Hozzászólás Szerző: Robert »

Az írás korlátozott. Az olvasás tetszőleges....
Avatar
gerry
Chipgyilok
Hozzászólások: 252
Csatlakozott: 2005. október 11. kedd, 6:00

Hozzászólás Szerző: gerry »

norbi írta:Ha jól gondolom, Te az AVR belső eepromjára gondolsz, de ne aggódj, a limit nem az olvasásra, hanem az írásra vonatkozik. :wink:
Igen arra gondoltam, csak nem tudtam hova beírni. Köszi!
Avatar
Atesz
Tranzisztorgyógyász
Hozzászólások: 164
Csatlakozott: 2006. január 19. csütörtök, 7:00

Hozzászólás Szerző: Atesz »

Szükségem lenne egy olyan szoftverre és hardverre amivel I2C buszos EEpromot tudok írni és olvasni. Eddig is megoldottam csak borzasztó bonyolultan.
Van erre valami megoldás? Igazából van egy ami már fel van töltve , és azt kellene sokszorosítani.
Avatar
ampervadasz
Bitmanipulátor
Hozzászólások: 119
Csatlakozott: 2008. január 19. szombat, 7:00

Hozzászólás Szerző: ampervadasz »

Szervusz!

Az én első gondolatom az alábbi lenne!

2 foglalat az EEpromoknak (Master-Sleave) Mindkettő más-más címen. Egy egyszerű programmal kiolvasod az egyikből bytenként, majd írod a másikra. Egy For...Next ciklusban be tudod még azt is állítani, hogy hányszor olvasson-írjon (Memória méret). Ez csak elvi gondolat, de szerintem így a legegyszerűbb.

Ezzel a megoldással egyszerre akár 7 EEpromot is fel tudsz tölteni!
Avatar
kapu48
Elektronbűvölő
Hozzászólások: 3375
Csatlakozott: 2008. augusztus 29. péntek, 6:00

Hozzászólás Szerző: kapu48 »

Például:
Felraksz 1 panelra 5db. EEPROM foglalatot.
1 db. Lesz a mester. Ezt bekötöd fix címzésre. Pl.: B111

A maradék 4 db. Pedig a másolatoknak lesz. Ezek A2 = 0 címei egyformák.
4 * (A1 és A0) címeket bekötöd 1 kimeneti port 8 bites-re.
Íráskor mind a 4 cím egyforma legyen. Pl.: Port = B00000000
1*re irsz 4db. EEpromot.

Olvasás (Verifi) Pedig minden EEP máscímet kap. Pl.: Port = B11 10 01 00

Ha ellenőrzésnél 1 EEP. Tartalma nem stimmel azt még újra is írhatod.
Ha íráskor is marad a cím: Port = B11 10 01 00
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10191
Csatlakozott: 2005. december 9. péntek, 7:00

Hozzászólás Szerző: Robert »

PonyProg tudja. MinimalHW kell csak melle....
Avatar
Atesz
Tranzisztorgyógyász
Hozzászólások: 164
Csatlakozott: 2006. január 19. csütörtök, 7:00

Hozzászólás Szerző: Atesz »

Ampervadasz írta:2 foglalat az EEpromoknak (Master-Sleave) Mindkettő más-más címen. Egy egyszerű programmal kiolvasod az egyikből bytenként, majd írod a másikra.

Ilyenem van! :D
Kapu48 írta:Felraksz 1 panelra 5db. EEPROM foglalatot...
Ez jó ötlet! :)
Robert írta:PonyProg tudja. MinimalHW kell csak melle....
Igen, ezt tudni véltem. Mosógépes ismerős is ezt használja.
Hol találok a HW-hez kapcsolást?
Ez a megoldás tetszene a legjobban.
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10191
Csatlakozott: 2005. december 9. péntek, 7:00

Hozzászólás Szerző: Robert »

Avatar
vavi
Biztosítékgyilkos
Hozzászólások: 72
Csatlakozott: 2006. április 29. szombat, 6:00

Hozzászólás Szerző: vavi »

Én anno megépítettem magamnak ezt a kapcsolást, nagyon jól működik. De mindenképp külső tápról/elemről használd, stabilabb!
Avatar
Atesz
Tranzisztorgyógyász
Hozzászólások: 164
Csatlakozott: 2006. január 19. csütörtök, 7:00

Hozzászólás Szerző: Atesz »

Jól értelmezem, hogy ezt: http://www.lancos.com/e2p/siprog_base.png kell megépíteni, és a többi meg rádugdosható adapter?
Avatar
vavi
Biztosítékgyilkos
Hozzászólások: 72
Csatlakozott: 2006. április 29. szombat, 6:00

Hozzászólás Szerző: vavi »

Igen!

Mondjuk én nem építettem meg az egészet, hanem csak a 93Cxx és 24Cxx-es eeprom-okhoz tartozó részt.
Így néz ki:

Kép

A panel másik felén Motorola HC05, és HC11-es programozó van.
Válasz küldése