Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C Quellcode formatieren: <code>Quellcode</code> BASIC Quellcode formatieren: <basic>Quellcode</basic> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! -> I > > Hallo, > > > > ich möchte auf einen externen EEPROM (Typ: 24FC512) mehrere Daten Speichern, > > leider funktioniert das nicht so, wie ich mir das vorstelle. > > > > Hier mal mein Programm, kann mir jeman sagen woran das liegt? > > Es werden immer nur die erste Zahl und 255 ausgegeben > > > > > > 'Datenspeicherung auf mehreren aufeinander folgende Speicherplätzen > > > > > > <basic> > > Sub main() > > > > Dim address As Word 'address bezeichnet den Speicherplatz > > Dim a As Byte ' i:Laufvariable > > Dim i As Integer ' a:Speicherwert > > Dim b (150) As Word ' b:ausgelesene Werte > > > > address=0x20 > > a=1 > > i=0 > > > > Do While i<150 > > > > I2C_Init(I2C_400kHz) > > I2C_Start() > > I2C_Write(0xA8) 'Adresse "1010" für ControlCode > > 'Adresse "100" für Bitselect > > I2C_Write(address>>8) 'Adresse "0" für lesen > > I2C_Write(address) 'interne Adresse > > I2C_Write(a) > > I2C_Stop( ) > > > > a++ > > address=address+1 > > i++ > > > > End While > > > > i=0 > > address=0x20 > > AbsDelay(100) > > > > > > Do While i<150 > > I2C_Start() > > I2C_Write(0xA8) > > I2C_Write(address>>8) > > I2C_Write(address) > > I2C_Start() > > I2C_Write(0xA9) > > b(i)=I2C_Read_ACK() > > I2C_Stop() > > Msg_WriteWord(b(i)) > > address++ > > i++ > > End While > > > > > > > > End Sub > > > > </basic> > > > > Gruß > > Hi, > > das I2C_Init() hat in der While Schleife nichts zu suchen, sondern sollte nur einmal > aufgerufen werden. Setze beim Schreiben mal ein Delay rein, vielleicht braucht sonst der > Chip trotz Interpreter zu lange beim Schreiben. Die "A8" entspricht den Chip Selects? > D.h. Du hast A2 am Chip auf VCC gelegt? > > Gruss Peter