Forum: Mikrocontroller und Digitale Elektronik Übersprechen auf Flachbandkabel?


von Maruu (Gast)


Lesenswert?

Hallo,

ich hab eine Hauptplatine auf der ein PIC 16F876A ist.
Die Pins des PORTA vom PIC hab ich auf ne Sockelleiste geführt.
Weiterhin hab ich eine Sensorplatine an der 4 Inrarotsensoren
angeschlossen sind. die beiden Platinen werden über ein Flachbandkabel
verbunden. Jeder Sensor liefert dauernd eine Spannung zwischen 0,4 und
2,5 V. außerdem gehen über das Kabel noch eine Masse Leitung und eine
5V Leitung eine Leitung ist NC so das es insgesamt ein 6-Adriges
Flachbandkabel ist. Nun vermute ich das es irgendwo Übersprechen gibt
da sich mein Messwert des einen Infrarotsensors verändert wenn sich
einen benachbarten Sensorwert ändert.
Ich weiß nicht ob es was bringt wenn ich das AD-Wandeln am PIC
verlangsamme, da ja auf dem Flachbandkabel immer die Spannungen
anliegen egal ob ich den jeweiligen Sensor gerade AD-Wandle oder
nicht. Wo soll ich den Fehler suchen und was kann ich dagegen machen?

Gruß

Hannes

von Profi (Gast)


Lesenswert?

Es bringt sehr viel, wenn jede zweite Ader eine Masseader ist. Also ein
10-poliges Kabel.

Außerdem spielen die Eingangs- und Ausgangsimpedanzen eine große
Rolle.
Wie lange ist das Kabel?

von Maruu (Gast)


Lesenswert?

Das Kabel hat eine Länge von ca 15cm is also nicht all zu lang.
Mhhm jede zweite Leitung Masse wäre ne Lösung, dummerweise hab ich
schon die Sensorplatine bestückt und alles gelötet und co. Ne
Erweiterung is also nicht mehr wirklich möglich. Aber werd ich wohl
nicht drum rum kommen oder? gruß

Hannes

von Profi (Gast)


Lesenswert?

Wenn es nur ein Versuchsaufbau ist, kannst Du ja vor dem 6pol-Stecker
die Masseleitungen entfernen und mit der einen Masseleitung verbinden.

Aber bei 15cm wundert mich das schon ein wenig. Das sind nur ein paar
Dutzend pF.
Evtl. mit Cs nach Masse die Signale stabilisieren?

von Maruu (Gast)


Lesenswert?

Leider ist es kein Versuchsaufbau.
Evt liegt der Fehler ja auch in meinem Programm.
Ich habs mal angehängt. Es soll nix anderes machen als den ersten und
zweiten Analogen Eingang am Pic (AN0 und AN1) abzufragen den Wert in
eine Variable AD0 und AD1 speichern und immer den Messwert in AD0 am
PortB ausgeben.

Vielleicht findet ja jemand einen Fehler?

Gruß

Hannes

von Maruu (Gast)


Angehängte Dateien:

Lesenswert?

Ohh sorry ich hab die Datei vergessen.

Nun is se im Anhang.

Gruß

Hannes

von TravelRec. (Gast)


Lesenswert?

Hast Du genug Zeit zwischen dem Umschalten und Lesen der beiden
Analogeingänge im Programm eingeplant (sieht nicht so aus)? Sonst kann
es zu Verwischungen zwischen den einzelnen Kanälen aufgrund der
Verzögerungen im Multiplexer kommen.

von Maruu (Gast)


Lesenswert?

Mhhm das könnte gut sein, wie viel Pause muss ich denn machen?

Gruß

Hannes

von TravelRec. (Gast)


Lesenswert?

Das steht im Datenblatt Deines Controllers - einige µs könnten das schon
sein. Oder aber Du schaltest gleich nach der vorhergehenden Wandlung auf
den jeweils anderen Eingang um. Bei AVRs funktioniert das gut, ob´s bei
Deinem PIC geht, weiß ich nicht...

von Maruu (Gast)


Lesenswert?

Tatsache das wars, ich warte jetzt 16 Befehle lang und jetzt gehts. Is
also nix mit Übersprechern auf der Leitung gewesen sondern war der
Multiplexer der verwischt hat wenn ich zu schnell gewechselt hab.

Danke nochmals hat mir sehr geholfen.


Gruß

Hannes

von TravelRec. (Gast)


Lesenswert?

Alles klar, freut mich!

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.