www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik I2C beim mega8535


Autor: Markus L. (lucky79)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Ich hab ein Problem bei der Kommunikation über den TWI-Port des
Mega8535. Also am Port ist eine RTC/Kalender (PFC8583) und ein
Temperatursensor (LD1775R).

Ich hab schon ein "Thermometer" auf einem mega8 in Assembler
realisiert und das hat mit Hardware TWI einwandfrei funktioniert.

Nun hab ich mir den WinAVR downgeloadet und mach grad meine ersten
Versuche in C. Das mit den Schleifen, LCD,... funktioniert ja schon
alles, nur dieser TWI macht mir zu schaffen!

Ich hab mal die Sourcen angehängt. Vielleicht kann mir ja jemand von
Euch einen Tipp geben.

Aja, die Hardware: ATmega8535 PDIP, läuft auf 16MHz mit externem
TTL-Oszillator. (Habs auch schon mit 4 und 8 MHz versucht), der Bus ist
mit externen 4k7 PullUps versehen (hab auch scon 10k versucht). Da
dieser Bus in der selben Konfiguration am mega8 schon mal funktioniert
hat, glaub ich nicht an ein Hardwareproblem.

Vielen Dank im Voraus!

Markus

Autor: Bernhard S. (bernhard)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Markus,

um ein Hardware-Problem auszuschließen, lass Dir doch durch einfache
LEDs die Pegel von SDA und SCL anzeigen.

Flimmern die LEDs, wenn Daten gesendet(empfangen) werden sollen?


Bei Software-Problemen kannst Du Dir problemlos einen Slave bauen, um
genau zu sehen, was Dein Master gerade versucht:

http://www.mikrocontroller.net/forum/read-4-246060.html


Bernhard

Autor: Markus L. (lucky79)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi!

Hab schon LEDs dran, jedoch über nen Transistor geschalten.
Die flackern so, wie's sein sollte, bau mir gerade einen LogikAnalyzer
für den LPT, damit ich mir mal die genauen Bitmuster auf dem Bus
anschaun kann...

Das mit dem Slave hab ich auch schon probiert, da kommt nur Mist raus!!
Manchmal ERROR, manchmal irgendwelche Bitmuster, die ich niemals auf den
Bus geschickt hab.

gruß

Markus

Autor: Bernhard S. (bernhard)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Das mit dem Slave hab ich auch schon probiert, da kommt nur Mist
>raus!!

Vielleicht wäre es sinnvoller, diesen Mist mal zu untersuchen?

Denn wenn dieser Hardware-Slave ein ERROR meldet, hat der Master etwas
nicht richtig gesendet, denn einfacher kann ein SLAVE nicht
programmiert werden, oder?

Bernhard

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.