Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Re: EEPROM mit mehreren Zahlen beschreiben und auslesen Kategorie: Programmierung Basic (von PeterS - 19.01.2011 14:15)
Als Antwort auf EEPROM mit mehreren Zahlen beschreiben und auslesen von Speicherer - 19.01.2011 12:37

> 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
>
>
>
> 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
>
>

>
> 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


    Antwort schreiben


Antworten:

Re: EEPROM mit mehreren Zahlen beschreiben und auslesen (von Franz-Peter - 19.01.2011 15:00)