sjors007
...
Hallo iedereen:D
ik heb even een vraagje over Externe Eeprom. voor een project wil ik dit graag gebruiken maar ik weet niet hoe het zit over de indeling van de externe eeprom
stel wanneer ik 24LC256 256K (32k*8) I2C EEPROM neem, dan heb ik dus 32000 adressen waarop ik een 8 bytes variabele kan plaatsen of niet?
en dan nog iets:P
wanneer ik zet:
BUSIN %10100001 , 1,[ VAR1 ,VAR2 ,VAR3 ,VAR4 ,VAR5 ,VAR6, VAR7 ]dan zal dus Var1 op adress 1 komen en Var2 op adress 2 enzovoort. klopt dit of niet?
en dan als laatst:P
ik heb al een RTC die ook werkt via Busin, kan ik deze eeprom gewoon rechtstreeks aansluiten op die RTC dus SDA aan de SDA van de RTC en andersom?
alleen moet je bij busin van de RTC een andere Controll hebben dan wanneer je de Eeprom gebruikt?
Op 25 februari 2010 18:30:57 schreef sjors007:
stel wanneer ik 24LC256 256K (32k*8) I2C EEPROM neem, dan heb ik dus 32000 adressen waarop ik een 8 bytes variabele kan plaatsen of niet?
Idd 32k keer 8 bits
wanneer ik zet:
BUSIN %10100001 , 1,[ VAR1 ,VAR2 ,VAR3 ,VAR4 ,VAR5 ,VAR6, VAR7 ]dan zal dus Var1 op adress 1 komen en Var2 op adress 2 enzovoort. klopt dit of niet?
Zo staat het in de manual toch? 
Er zijn verbeterde instructies voor I2C, I2Cin en I2Cout.
ik heb al een RTC die ook werkt via Busin, kan ik deze eeprom gewoon rechtstreeks aansluiten op die RTC dus SDA aan de SDA van de RTC en andersom?
alleen moet je bij busin van de RTC een andere Controll hebben dan wanneer je de Eeprom gebruikt?
Alle I2C IC's komen op 1 bus, daarbij moet je de SDA en SCL een pull-up weerstand geven, zie manual.
En juist adresseren, zie datasheets en manual.
sjors007
...
ja dat met die pullup weerstanden had ik al. maar dan kan ik gewoon een eeprom achter me RTC hangen:D
maar 32K betekend dat 32000 of 3200 plekken?:P
edit
om te schrijven naar de eeprom gebruik je:
busout %10100000
en om te lezen gebruik je:
busin %10100001
alleen wanneer ik in de datasheet kijk
http://www.datasheetcatalog.org/datasheet2/7/0yuw0yc3x0278cpz78zge08qi…
(Blz. 8)
dan zie ik dat Bit 5,6,7 voor Chip Select is (A2 A1 A0)
waar dient dit voor ik kan dat niet duidelijk uit de datasheet halen!
[Bericht gewijzigd door sjors007 op (56%)]
rew
four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/
met 32k wordt meestal 32768 pekken bedoeld. Waar je 3200 vandaan haalt is me helemaal een raadsel.
Je eeprom is een i2c geval. Op i2c moet je iets doen als <selecteer device><commando> . Al deze I2C eeproms reageren op adres 0xa0 ... 0xae, welke stel je in door A0, A1, A2 op de juiste waardes in te stellen.
Zo kan je dus max 8 van deze eeproms op 1 I2C bus zetten. (tegenwoordig zou je gewoon een grotere EEPROM kopen. Maar misschien wel handig als je intern in een apparaat een eeprom op je i2c bus wilt hebben, maar de gebruiker ook extern een module er aan kan hangen die ook z'n eigen i2c bus met eeprom heeft...
sjors007
...
omdat wanneer je met een weerstand heb 4K7 is het 4700:P dus daarom maar dan had ik het goed:D
ik maak toch alleen gebruik van busin en busout dus dan heb ik dat niet nodig maar gewoon
adress = 16000
busout %10100000, adress, [.......]maar bedankt:D
(opzich is dat wel een hoop:P)
Wouter van Ooijen
Wouter van Ooijen: VOTI webwinkel, docent HvU (Technische Informatica); C++ on mictrocontrollers blog
Op 27 februari 2010 17:24:51 schreef sjors007:
omdat wanneer je met een weerstand heb 4K7 is het 4700
Dan had er dus 3k2 gestaan. Afgezien van die lastige k die twee dingen kan betekenen. Onze schuld, hadden we maar nooit aan het 10-tallig stelsel moeten beginnen...