Forum: Mikrocontroller und Digitale Elektronik ATtiny13a - seltsames Verhalten


von Brat W. (bratwurst_94)


Angehängte Dateien:

Lesenswert?

Hallo wertes Forum,

seit ein paar Tagen experimentiere ich an einem Testaufbau herum, bei 
dem ich schlussendlich nicht mehr weiter weiß. Aus diesem Grund wende 
ich mich an Euch, hoffentlich kann ich das "Problem" so schildern, dass 
klar ist, um was es geht.

Und zwar geht es um Folgendes:

Ich bin dabei, eine Blinker- und Hupensteuerung zu bauen.
Hierfür wollte ich bewusst keinen unnötig teuren und auch größeren 
Arduino Nano o.ä. verwenden, sondern zwei, noch ungenutzte ATtiny13a.

Der eine der beiden soll dabei die Blinkersteuerung übernehmen, während 
der andere die Hupe steuert.

Kurz zum Gedanken des Ganzen:
Wird der Blinkerschalter in eine Richtung geschalten (dieser schaltet 
später einmal die Masse), dann sollen die Blinker dieser Richtung mit 
der Helligkeit pulsieren und nicht nur an/aus gehen. Also einmal für 
links, einmal für rechts.
Hierfür werden am µC zwei Pins auf "LOW" abgefragt.
Solange "LOW" anliegt, wird in einer while-Schleife das Pulsieren des 
entsprechenden Ausgangs per PWM ausgeführt.
-> Das funktioniert soweit auch hervorragend und störungsfrei, wenn der 
ATTiny alleine betrieben wird.

Im anderen ATtiny wird ebenfalls ein PIN auf "LOW" abgefragt.
Hier hängt später einmal der Hupenschalter dran.
Wird dieser betätigt, soll die Hupsequenz, wie im Programm zu sehen, 
ablaufen.
Das funktioniert ebenfalls einwandfrei, solange die Schaltung 
eigenständig betrieben wird.

Beide ATtinys werden nun gemeinsam an einem LM7805 (verlötet auf einer 
Platine) betrieben, welcher von einem 12V-Akku versorgt wird.

Nun zum Problem:
Betätige ich den Hupenschalter, macht der ATtiny genau was er soll.
Der Ausgang schaltet gemäß der vorgegebenen Hup-Routine.

Betätige ich aber einen der beiden Eingänge des anderen ATtiny, die die 
Blinkersequenz auslösen, wird vollkommen sporadisch, zusätzlich zum 
Blinken, die Hupsequenz des anderen ATtinys gestartet. Mal früher, mal 
später, aber relativ zuverlässig.

Alle insg. 3 Eingänge der beiden µC sind recht niederohmig (1k) mit 
PULL-UPs versehen.

Wie kann es dann dazu kommen, dass durch Betätigen der Blinker-Schalter 
der Eingang des anderen ATtinys beeinflusst und dadurch die Hupsequenz 
gestartet wird?!
Dieser muss doch erst die LOW-Schwelle unterschreiten, damit etwas 
passiert?

An den Ausgängen der beiden µC hängen jeweils solche FET-Module dran - 
diese haben praktischerweise auf der Platine eine kleine Kontroll-LED 
drauf, welche den Schaltzustand anzeigt.

Damit eventuelle, grobe Hardware-Fehler erkannt werden können, habe ich 
einen Schaltplan mit Bleistift (bitte verzeiht mir) angefertigt, s. 
Anhang.
Ebenfalls hängen die beiden Quellcodes für die zwei ATtinys und zwei 
Bilder der erwähnten FETs mit dran.

Beide Programme wurden in der Arduino-IDE geschrieben und die µC wurden 
mit einem USPasp-ISP geflasht.

Kurzum:
Ich verstehe nicht, warum sich der eine Controller von den Eingängen des 
anderen beeinflussen lässt.
Die PULL-UPs müssten doch relativ stabil den Pegel halten?

Falls ich etwas Wichtiges vergessen habe, lasst es mich wissen.
Ich wäre heilfroh, wenn ich bald wüsste, warum sich die Schaltung so 
verhält, wie sie sich verhält.

Beste Grüße und vielen Dank Euch im Voraus!
Till

von Mario M. (thelonging)


Lesenswert?

Abblock-Kondensatoren fehlen, sowohl an den ICs als auch am 
Spannungsregler. Pin 1 (Reset) über max. 10 kOhm an Vdd.

von Sherlock 🕵🏽‍♂️ (rubbel-die-katz)


Lesenswert?

Sie beeinflussen sich gegenseitig über die Stromversorgung.

Wahrscheinlich ist deine Stromversorgung instabil, weil du den 
Spannungsregler ohne die notwendigen Kondensatoren betreibst. Auch die 
Mikrocontroller brauchen Abblock-Kondensatoren.

Brat W. schrieb:
> Die PULL-UPs müssten doch relativ stabil den Pegel halten?

Auf einem Steckbrett ja, aber in einem echten KFZ sind vielleicht noch 
weitere Kondensatoren an den Eingängen nötig, um HF Störungen ab zu 
blocken, die deine Leitungen (=Antennen) empfangen.

: Bearbeitet durch User
von Jens M. (schuchkleisser)


Lesenswert?

Sherlock 🕵🏽‍♂️ schrieb:
> aber in einem echten KFZ sind vielleicht noch
> weitere Kondensatoren an den Eingängen nötig

In einem echten Kfz sind noch so einige andere Maßnahmen an der 
Stromversorgung erforderlich, damit der 7805 nicht explodiert.
Verpolschutzdiode, Elko, Sicherung, Überspannungsschutz z.B.

von Sherlock 🕵🏽‍♂️ (rubbel-die-katz)


Lesenswert?

Jens M. schrieb:
> In einem echten Kfz sind noch so einige andere Maßnahmen an der
> Stromversorgung erforderlich, damit der 7805 nicht explodiert.
> Verpolschutzdiode, Elko, Sicherung, Überspannungsschutz z.B.

Die siehst das zu eng. Blinker und Hupe sind doch nur nebensächliche 
Unterhaltungselektronik :-)

Außerdem fährt er damit (ganz bestimmt mit Ehrenwort) nur auf einem 
abgeriegelten privaten Gelände, weil das Fahrzeug keine Zulassung mehr 
für öffentlich zugängliches Gelände hat.

: Bearbeitet durch User
von Jens M. (schuchkleisser)


Lesenswert?

Sherlock 🕵🏽‍♂️ schrieb:
> nur auf einem
> abgeriegelten privaten Gelände, weil das Fahrzeug keine Zulassung mehr
> für öffentlich zugängliches Gelände hat.

Auch da machen Zündung, Anlasser und diverse andere Gerätschaften dem 
7805 mehr Ärger als man will.

von Brat W. (bratwurst_94)


Lesenswert?

Guten Abend zusammen und vielen Dank für die zahlreichen Antworten!

Als Info nebenbei:
Die Schaltung soll später in einer Honda-Dax eingesetzt werden, die 
selbstverständlich niemals im öffentlichen Straßenverkehr gefahren wird.

Wie könnte ich das im gesetzesverseuchten Deutschland nur wagen :D

von Brat W. (bratwurst_94)


Lesenswert?

Hey zusammen,

hab es gestern nochmals probiert und ausgangsseitig am LM einen 1uF - 
Elko (hab momentan keinen anderen da) angelötet weil die 
Ausgangsspannung am LM ohne Zusatzbeschaltung etwas eingebrochen ist.
Immer beim Aktivieren des Blinker-ATtinys mit der PWM-Funktion.

Jetzt mit Elko bleibt die Spannung bombenstabil :-)
Und der ATtiny macht zuverlässig was er soll!

Kann das einen uC wirklich so zur Verwirrung bringen?
Hätte ich nicht gedacht, aber ich steh ja auch noch am Anfang.

Beste Grüße
Till

von Dietrich L. (dietrichl)


Lesenswert?

Brat W. schrieb:
> hab es gestern nochmals probiert und ausgangsseitig am LM einen 1uF -
> Elko (hab momentan keinen anderen da) angelötet weil die
> Ausgangsspannung am LM ohne Zusatzbeschaltung etwas eingebrochen ist.
> Immer beim Aktivieren des Blinker-ATtinys mit der PWM-Funktion.
>
> Jetzt mit Elko bleibt die Spannung bombenstabil :-)
> Und der ATtiny macht zuverlässig was er soll!
>
> Kann das einen uC wirklich so zur Verwirrung bringen?
> Hätte ich nicht gedacht, aber ich steh ja auch noch am Anfang.

Wenn die Versorgungsspannung den gültigen Bereich verlässt ist das 
Verhalten des µC unkalkulierbar.

Neben dem Kondensator am Regler-Ausgang ist es sehr wichtig, dass auch 
ein Kondensator sehr nahe am µC plaziert wird. Hier nimmt man 
üblicherweise einen 100nF Keramikkondensator.
Keramik deshalb, weil der für Hochfrequenz besser ist als ein Elko. Und 
hochfrequente Spannungeinbrüche auf der Versorgungsspannung entstehen 
deshalb, weil ein digitaler Schaltkreis beim Schalten sehr kurze und 
hohe Stromspitzen erzeugt. Zusammen mit der Induktivität der 
Versorgungsleitungen (hier reichen schon wenige cm!) bricht dann die 
Spannung zusammen.

von 900ss (900ss)


Lesenswert?

Dietrich L. schrieb:
> ist das
> Verhalten des µC unkalkulierbar.

Und das ist wörtlich zu nehmen! Du (TO) hast es dir auch schon selbst 
bewiesen ;)

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.