Hallo Ich möchte an einem Mikrocontroller, der noch einen digitalen Eingang frei hat drei Fehlerflags abfragen. Von welcher Quelle der Fehler stammt ist wichtig. Man könnt hier ja z.B ein 74LS32 Oder-Glied verwenden oder Transistoren nehmen. Die Schaltung sollte aber möchlist einfach sein. Was haltet ihr von Variante I mit Widerständen? Was haltet ihr von Variante II mit Dioden? Wo liegen die Vor- und Nachteile aus Eurer Sicht? Grüsse Frank
Der Eingangswiderstand des Mikrocontrollers ist aber sehr gross... => kleiner Stom => kaum Spannungsabfall... oder nicht?
Wenn es wichtig ist die Quelle (den Pin) zu lokalisieren, dann schalte vor die Dioden jeweils ein RC-Glied (R nach Masse, C in Richtung Diode) mit unterschiedlichen Zeitkonstanten, damit kannst du über die Impulslänge den verursachenden Eingang detektieren. Geht natürlich nur, wenn nur ein Eingang kommt.
stell dir vor der input_controller ist auf masse und ein error auf eins -dann rechne mal schön mit Mr ohm
da fehlt ein Widerstand auf Masse und die Eingangswiderstände müssen verschieden groß sein, dann kannst du die Spannung messen
Nimm die Schaltung mit den Dioden, und noch einen Pull-Down-Widerstand an den Eingang. Die Error-Flags unterscheiden kannst Du damit aber nicht.
vielen Dank für die Inputs @aaa: Hm, wie meinst du das? Wenn der PIN z.B. versehentlich durch den Programmierer:) als Ausgang geschaltet wird dann würde die Diode sperren. Liegt er auf Ground, dann wird es nicht gut sein, du hast recht. ... elso evt. ein Vorwidestand nach den Dioden? @AD-Wandler: Sehr interessante Lösung, habe ich aber nicht frei. @Power: Auch sehr interessant. Brauche aber s.w. auch den AD oder? @Walter und Tom. Den Pulldown verstehe ich nicht. Welchen Nutzen sollte er haben?
Den ADC brauchst du für meine Variante nicht, nur einen Timer (oder ICP, falls zufällig frei) um die Impulslänge zu messen.
@Power: Achso verstehe. Bei mir liegt dann leider ein statisches Signal an.
es ist möglich spannung über den eingebauten comperator mit einem widerstand und kondensator zu bestimmen.
>Bei mir liegt dann leider ein statisches Signal an.
Drum habe ich ja vorgeschlagen RC-Glieder vor die Dioden zu bauen um
Impulse unterschiedlicher Länge zu erzeugen => dynamisierung der
Signale.
Hm, wie funktioniert das bitte? Zu Beginn liegt an einem Error-Pin 0 Volt an. Der Kondensator ist leer. Nun get ein Error-Pin auf 5 Volt. Der Kondensator lädt sich über den Vorwiderstand auf. Die Spannung am Ausgang steigt nach einer e-Funktion. Ab einer bestimmten Schwelle detektiert der Einganspin des Controllers die Spannung. Wo ist hier aber bitte der Impuls, den man erfassen kann, wenn der Error-Pin auf 5 Volt bleibt?
Ich meinte das so (für einen Eingang): || ----||-----------> µC-Eingang || | |-| | | | | |-| | | --- GND
:), bist ein Fuchs! Super Idee! Danke Welche Werte für R und C wären hier denn angebracht?
T ('Tau') = R*C Tau ist die Zeitkonstante. Aber bei drei Eingängen einfach mal probieren, so mit 10kOhm und 10µF anfangen, das wären rechnerisch 100ms. Kommt auch drauf an welche Zeiten du verwenden willst.
@Power: Vielen Dank für die Infos. Interessante Schalung um zu tüfteln:) Die Schaltzeit hängt dann ja auch noch von der internen Beschaltung des IO-Pins und der Eingangsimpedanz ab. In meinem Fall ist ein Schmitt-Trigger vorgeschaltet. Mal schauen ob ich hier im Datenblatt etwas finde:) Letzlich wird dann ein Kapazitätsmessgerät daraus:) Jedenfalls nochamls vielen Dank für die kompetenten Tipps! Aber auch allen anderen, die für mich hier einen wertvollen Beitrag geleistet haben!
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.