www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik i2c geht nicht nicht richtig


Autor: avrbeginner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi
ich hab vier dacs an einen i2c Bus des atmega16 angeschlossen.
nachdem der bus aufgrund der langen Leitungen nicht funktionierte
bin ich auf die glorreiche idee gekommen kondensatoren an den pins
der dacs gegen masse zu legen
die signale waren darauf hin einwand frei und der bus funktionierte
sehr gut
mittlerweile ist allerdings ein pin des my (SDA)kaputtgegangen.
wie löst ihr sowas?
mfg

Autor: The Devil (devil_86)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn der Datenpin kaputt ist, was gibt's da noch zu lösen?

Autor: Jörg X. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wenn der µC immer/nur Master ist, kann man auf Software-I2C umsteigen 
und einen andern Pin nehmen, aber natürlich nur wenn das einfacher ist 
als den kaputten µC zu ersetzen.
Wenn allerdings die Cs den Pin des Atmega überlasten und der deshalb 
kaputt gegangen ist, musst du die schaltung ändern.

hth. Jörg

Autor: avrbeginner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo ich habe das ganze nun software mässig gelösst
und das geht auch
ich möchte nur nicht die beiden neuen pins wieder schrotten

Autor: Thomas Otto (tarzanwiejane)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wenn ein langer Bus nicht funktioniert, dann geht man normalerweise mit 
der Geschwindigkeit runter. Bei I2C mal mit 100 oder 50 KHz probieren 
anstatt der 400.

cu Tarzanwiejane

Autor: avrbeginner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
und welche möglichkeit gibt es die signale vor ort zu entstören
ich hatte sehr starke überschwinger beim wechsen von high auf low
und umgekehrt

Autor: Thomas Otto (tarzanwiejane)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Starke Ueberschwinger? Wie gesagt - die sinken auch mit sinkender 
Frequenz/Flankensteilheit. Darf man fragen wie lang dein Bus ist und wie 
gross deine Pullup-Wiederstaende sind? Haste die 
Mikrocontroller-internen auch ausgeschaltet?

cu Tarzanwiejane

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ avrbeginner (Gast)

>und welche möglichkeit gibt es die signale vor ort zu entstören
>ich hatte sehr starke überschwinger beim wechsen von high auf low
>und umgekehrt

Da hast du entweder Mist gemessen oder was falsch angesteuert. I2C hat 
OPEN DRAIN IOs, die machen zumindest bei LOW-HIGH keine Überschwinger, 
weil sie ja nur vom relativ schwachen Pull-UP nach HIGH gezogen werden. 
HIGH LOW ist aktiv geschaltet, da könnte schon was klingeln. Aber bring 
doch erstmal ein paar Fakten auf den Tisch.

Wie langs sind deine I2C LEitungen?
Wieviel pico/nanoFarad hast du an SDA/SCL angeklemmt.

An I2C hängt man normalerweise keine zusätzlichen Cs!

MFG
Falk

Autor: avrbeginner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi hab externe pullup verwendet 4,7 k

1m ist das flachband kabel lang dazu kommt da noch leitungsverlegung
auf den beiden platinen
die ausgänge der dacs haben mit ner led geflacker
nachdem ich den C angeschlossen habe war das flackern weg.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ avrbeginner (Gast)

>hi hab externe pullup verwendet 4,7 k

Passt.

>1m ist das flachband kabel lang dazu kommt da noch leitungsverlegung
>auf den beiden platinen

Das ist kein Problem für I2C. Passt auch.

>die ausgänge der dacs haben mit ner led geflacker
>nachdem ich den C angeschlossen habe war das flackern weg.

Dann muss der Fehler woanders liegen.

MfG
Falk

Autor: Thomas Otto (tarzanwiejane)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@avrbeginner
4,7K ist Ok, 1m Flachband habe ich hier auch, sollte also kein Problem 
sein.

kontrollier mal ob du die internen Pullups ausgeschaltet hast.
Deine DACs sind auch einheitlich 5V wie der AVR und die Pullup-Referenz?

cu Tarzanwiejane

Autor: avrbeginner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi
an der hardware kann ich soweit nix ändern die internen pullups sind
deaktiviert
das einzige was ich gemacht habt war das ich 22p an die enden des busses
geklemmt han die dämpfen nun die überschwinger
mfg

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ avrbeginner (Gast)

>das einzige was ich gemacht habt war das ich 22p an die enden des busses

Das ist zwar nicht wirklich der richtige Weg, aber 22pF tun den IOs 
nicht weh. Davon gehn die nicht kaputt.

>geklemmt han die dämpfen nun die überschwinger

Welche Überschwinger. Wie hast du die gemessen?

MFG
Falk

Autor: avrbeginner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi
ich hatte zuvor an den SDL pin 100 nf dran wahrscheinlich ist er 
deswegen kaputtgegangen.(ich hatte keinen kleinersen)


mit so nen billig oszi von konrad das über den pc betrieben wird

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ avrbeginner (Gast)

>ich hatte zuvor an den SDL pin 100 nf dran wahrscheinlich ist er
>deswegen kaputtgegangen.(ich hatte keinen kleinersen)

AUA! Ruhe in Frieden, kleiner IO-Pin.

>mit so nen billig oszi von konrad das über den pc betrieben wird

Uhhh, da kann man wahrscheinlich gerade mal 50Hz Netzspannung von RS232 
unterscheiden.
Du misst mit hoher Wahrscheinlichkeit Mist.

MFG
Falk

Autor: avrbeginner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
jo
aber jetzt läuft es einwandfrei
die 22p stammen vom quarz anschluss ich bin halt jetzt auf den internen
rc oszillator umgestiegen

hi das oszi funktioniert schon
immer hin besser als nicht
mfg

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.