PCF8574 an Atmega 168p

OP #2351812
Lesenswert?
• ▲
▼
Hi

da ich schon einige beiträge hier gelesen habe und ich trotzdem nicht 
voran komme, mache ich nun nochmal einen eigenen beitrag zu diesem thema 
auf. da ich neu im bereich i2c-bus bin wollte ich als kleine übung leds 
über den pcf8574 ansprechen. dafür habe ich mir die pcf8574.c 
runtergeladen und etwas angepasst. nur leider bekomme ich die leds in 
keinster weise davon überzeugt anzugehen. ich habe im anhang meinen 
c-code dafür mit hochgeladen. ich hoffe ihr könnt mir einen tipp geben 
was ich falsch mache oder wo ein fehler in meinem programm sein könnte.
Angehängte Dateien:
Gast #2351820
Lesenswert?
• ▲
▼
Frage zur nicht gezeigten Hardware/Schaltung:
Adresse (0 im Code) am PCF8574 ist richtig eingestellt ()?

In
unsigned char pcf8574_send_add_rw (unsigned char address, unsigned char 
rw)

hast du

  /*übergebene adresse um 1 nach links shiften*/
  addr_byte = address << 1;

OK.

  /*setze des RW-bits*/
  addr_byte |= rw;

OK.

  /*0b0100xxx0 --> adresse des Expander*/
  addr_byte |= 0b01000000;

Zerstört dir die beiden vorhergehenden Aktionen
OP #2352474
Lesenswert?
• ▲
▼
ich habe jetzt rausgefunden, dass das programm bereits be der ersten 
while-schleife hängen bleibt.also bei

  /*warten bis die startbedingung gesendet wurde --> ACK*/
  while (!(TWCR & (1<<TWINT)));

anscheinend sendet der pcf8574 kein ack-signal. nur weiß ich leider 
nicht warum. ich habe 10kohm pullup widerstände angeschlossen. da das 
oft die fehlerquelle bei anderen war. nur leider bringt das auch keine 
verbesserung.
kann mir irgend jemand helfen??

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.