A külső eeprom használatával a bascom-avr-ban például a 24lc08 - hogyan kapcsolódjunk az avr-projektekhez

A Bascom-AVR külső EEPROM használatával a 24lc08 példával

A Microchip 24LC nómenklatúrában a betűindex után a numerikus érték a kilobitott memória mennyiségét jelöli. Tehát a 24LC08 kísérleti chip a 8 kilobit helyet tárolja az adat tárolására (vagy 1 kilobájtra).


Ez a chip különféle tokokban kapható: DIP, SOIC, TSOP, DFN. Az érintkezők pihentetése megmarad mindegyik nyolclábú házhoz.

A kapcsolatok ugyanazon elrendezésénél régebbi modellek chipjei vannak, így könnyen helyettesíthetők az erőforrások hiányában, anélkül, hogy megváltoztatnák a fórum tipológiáját.

A tű célja az alábbi:

SCL - az óraimpulzusok sorát

WP - írásvédelem. Ha a kimenethez logikai 0 van, memóriába írunk. Ha logikai egységet küldesz, akkor csak a memória olvasása lehetséges.

Vcc - a mikroáramkör tápellátása. A feszültség lehet 2,5 V-ról 5,5 V-ra.

Ahhoz, hogy a mikrokontroller chip csatlakozik hagyományait követve I2C protokoll, azaz a jel vonalak húzni a hálózati vezetéket ellenálláson keresztül 4,7k. A fel nem használt terminálok A0, A1, A2 lehet ültetni a földön (IC1 a Attiny2313 példa)

A külső eeprom használatával a bascom-avr-ban például a 24lc08 - hogyan kapcsolódjunk az avr-projektekhez

A külső eeprom használatával a bascom-avr-ban például a 24lc08 - hogyan kapcsolódjunk az avr-projektekhez

Ha egy bájtot ír a mikrochiphez, akkor tegye a következőket:

$ regfile = "2313def.dat"
$ crystal = 1000000

'állítsd be az scl és az sda csapokat
Confd Sda = Portb. 7 'I2C adat
Config Scl = Portb. 6 "I2C óra

$ regfile = "2313def.dat"
$ crystal = 1000000

'állítsd be az scl és az sda csapokat
Confd Sda = Portb. 7 'I2C adat
Config Scl = Portb. 6 "I2C óra

I2cwbyte HF0 '1 bájtot küld
I2cwbyte HF1 "2 bájtot küld
I2cwbyte HF2 "3 bájtot küld
I2cwbyte HF3 "4 bájtot küld
I2cwbyte HF4 "5 bájtot küld
I2cwbyte HF5 "6 bájtot küld
I2cwbyte HF6 "7 bájtot küld
I2cwbyte HF7 "8 bájtot küld
I2cwbyte HF8 "9 bájtot küld
I2cwbyte HF9 '10 bájtot küld
I2cwbyte HFA "11 bájtot küld
I2cwbyte HFB "12 bájtot küld
I2cwbyte HFC "13 bájtot küld
I2cwbyte HFD "14 bájtot küld
I2cwbyte HFE "küld 15 bájtot
I2cwbyte HFF "16 bájtot küld

I2cstop 'leállítja az i2c munkát


Itt a teljes első oldal 240-es számú számokkal (az F0 hexadecimális rendszerben) 255-re (FF) van írva.

Most nézzük meg, hogyan kell elolvasni a chipen rögzített adatokat. Egy byte elolvasásához a következőket kell tennie:

Az első blokk első cellájának olvasása így fog kinézni:

$ regfile = "2313def.dat"
$ crystal = 1000000

'állítsd be az scl és az sda csapokat
Confd Sda = Portb. 7 'I2C adat
Config Scl = Portb. 6 "I2C óra

'működik egy mikroáramkörrel

És most egy gyakorlati példa. Egy mikrokontroller csatlakozik DS18B20 hőmérséklet érzékelő, az aktuális hőmérsékletet és a hőmérséklet értéke, amely bekerült a memória chip 24LC08. hőmérséklet bejegyzés memória chip fordul a gomb megnyomásával PB2, az olvasás és a kimenetre a rögzített értékeket bekövetkezik a gomb megnyomásával PB1.

A külső eeprom használatával a bascom-avr-ban például a 24lc08 - hogyan kapcsolódjunk az avr-projektekhez

A 24 literes sorozat dokumentációja szerint 1 millió írási / törlési ciklus garantált. Van egy sor 25lc, már 10 millió ciklus.

Kedves napszak.

És mi ez a memória chipek forrása.
Olyan eszközt csinálok, amely minden pillanatban emlékezzen meg a nem felejtő memóriában (egy bizonyos naplózó) áramkimaradás esetén. A készülék 24 órás alapon működik. A mikrokontroller nem felejtő memóriájának használata nem lehetséges, ahogyan megértem, gyorsan működni fog. Meddig tart a 24LCXX?

Kapcsolódó cikkek