Forum: Mikrocontroller und Digitale Elektronik PIC + EEPROM mit i2c in C -> Leseproblem


von Stefan Z. (stefanz)


Lesenswert?

Hallo!
Bin Student und arbeite mich gerade in die PIC-Programmierung ein.
Entwicklungsumgebung: MPLAB 7.60
PIC: Microchip pic24hj256gp206
Debugger: Microchip MPLAB ICD2
Compiler: MPLAB C30

Brauche dringend Hilfe. Will Eeprom mit i2c beschreiben und später 
wieder auslesen. Schreiben funktioniert (vermutlich, kann aber nix 
lesen!). Beim Lesen bleibt das Empfangsregister I2CxRCV leer und die 
Funktion MasterReadI2Cx() hängt sich auf, weil da drin eine 
while-Schleife läuft, bis was empfangen wurde.

Möglicherweise funktioniert auch das Schreiben schon nicht.
Der Schreibschutz ist nicht aktiviert.

Hoffentlich kann mir jemand weiterhelfen.
Schonmal Danke im Voraus.

von Tobi (Gast)


Lesenswert?

Genau dasselbe Problem habe ich leider auch :(
Jemand ne Lösung dafür?

von Pete K. (pete77)


Lesenswert?

Du hast die Kondensatoren vergessen :-)

Bitte mehr Infos, so kann Dir hier keiner helfen.

von Michael R. (mexman) Benutzerseite


Lesenswert?

> Möglicherweise funktioniert auch das Schreiben schon nicht.

Daraus schliesse ich, dass Du keinen EEPROM-Programmer 
hast.....schade....(baue mal eine Armbanduhr mit Schraubendreher und 
Rohrzange -> Schlechtes Werkzeug)

Was hier hilft ist:
Multimeter, I2C Spezifikation und Einzelschrittbetrieb.
Kostet Zeit, hilt aber Wunder!

Ein Oszilloskop hilft auch weiter.

Hast Du eine dieser vier Voraussetzungen nicht, solltest Du das garnicht 
erst anfangen.


Gruss

Michael

von Master S. (snowman)


Lesenswert?

hast du ein I2C-EEPROM von ST? die haben nämlich ganz kleine 
unterschiede zu den I2C-EEPROMs von Microchip... falls ja, nimm eines 
von Microchip, dann bist du sicher, dass deren ihre routinen auch 
funktionieren.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.