PCF8583 am AVR Mega 32

Gast #427755
Lesenswert?
• ▲
▼
Hallo,
ich möchte über das IC mit I2C eine Uhrzeit lesen / schreiben. Ich weiss 
aber nicht, wie ich den Slave parametrieren und auslesen kann. Ich habe 
einen AVR 32 Mega und arbeite mit Programmer's Notepad. Die Hardware 
habe ich erstellt (www.fernando-heitor.de), nur mit der Adressierung 
habe ich Probleme.
Schonmal danke
Moderator Persönliche Seite #427789
Lesenswert?
• ▲
▼
Ziemlich allgemein gehalten, deine Frage.  Ohne genaue Beschreibung,
was bei dir denn nicht so recht klappt, wirst du kaum vernünftige
Hilfe bekommen.

Ich habe mal mit einem PCF8583 experimentiert, das Ergebnis hab' ich
aber nicht mehr.  Im Prinzip wird das Teil aber genauso wie ein
I²C-EEPROM angesprochen, und für den hast du bei der avr-libc ja das
twidemo dabei.  In der Tat habe ich damals die dort vorhandenen
Routinen benutzt, nur das main() war anders.
Gast #427997
Lesenswert?
• ▲
▼
Hallo,
ich habe das Programm angehangen. Die Leseadresse sollte laut Vorgabe 
0xA1 sein, die Schreibadresse 0xA0. Als Rückgabewert bekomme ich aber 
beim i2c_start(Devclockwrite+I2C_WRITE) eine "1" zurück, also erreiche 
ich den Teilnehmer nicht.
Ich habe SCA und SCL mit je 2,7KOhm Pull-up Widerständen versehen.
Schonmal danke
Angehängte Dateien:
Gast #428656
Lesenswert?
• ▲
▼
Hallo,
das Schreiben klappt jetzt mit Adresse 0xA0
(i2c_start(0xA0+I2C_WRITE);)
über die angegebene Leseadresse 0xA1 erreiche ich den Teilnehmer nicht.
(i2c_start(Devclockread+I2C_READ);)
woran könnte das liegen ?
Moderator Persönliche Seite #428901
Lesenswert?
• ▲
▼
Gurke wrote:

> über die angegebene Leseadresse 0xA1 erreiche ich den Teilnehmer nicht.
> (i2c_start(Devclockread+I2C_READ);)
> woran könnte das liegen ?

Daran, dass du Devclockread bereits zu 0xA1 definiert hast und dass du
I2C_READ nicht etwa einfach noch ver-oderst (|) sondern addierst (+)?

Du solltest dich wohl für eine von beiden Varianten entscheiden: das
R/¬W-Bit entweder mit ins #define nehmen oder separat hinzufügen (und
dann bitte mit "|").

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.