74hc244 automatisch sperren bei µC-Absturtz

Gast #2458628
Lesenswert?

Hallo,

ich suche nach einer einfachen Möglichkeit den 74hc244 zu sperren, falls 
mein µC abstürtzen sollte. Da habe ich mir gedacht ich erzeuge am 
µC-Ausgang ein Rechtecksignal mit ca. 2kHz, denn wenn der µC abstürtzen 
würde, würde der Takt wegfallen. Jetzt muss ich aus dem Takt ein 
LOW-Siganle am !OE-Eingang bekommen. Irgendwie muss das doch mit einem 
Koppelkondensator funktionieren, jedoch klappt es irgendwie nicht 
(vielleicht hab ich nur nen Denkfehler).

So habe ich es bereits probiert (µC gibt dabei abwechselnd 0 und Z aus):

           Vcc       Vcc
            |         |
            -         -
           | | 4,7k  | | 22k
           | |       | |
|----|      -         -    |----|
|    | Z    |  220n   |    | 74 |
| µC |------+---||----+---o| HC |
|    | 0              |    | 244|
|----|               ---   |----|
                100n ---
                      |
                      |
                     ---

Hat wer ne Idee wie ich das Problem lösen kann, möglichst ohne ein 
Monoflop aufzubauen.

MFG
Michael
Gast #2458653
Lesenswert?

Watchdog benutzen und als ersten Befehl im Resetvektor OE deaktivieren.
Ansonsten Counter mit Clear und Overflow. Overflow (oder Qn) an FlipFlop 
und FlipFlop zu OE. Der Counter Muß dann immer einen Reset bekommen 
bevor er überläuft. Reset von FlipFlop und Counter, zum rückstellen des 
Fehlerspeichers, verbinden.
Gast #2458662
Lesenswert?

>           Vcc       Vcc
>             |         |
>             -         -
>            | | 4,7k  | | 22k
>            | |       | |
> |----|      -         -    |----|
> |    | Z    |  220n   |    | 74 |
> | µC |------+---||----+---o| HC |
> |    | 0              |    | 244|
> |----|               ---   |----|
>                 100n ---
>                       |
>                       |
>                      ---


Wie soll sowas funktionieren, da ist ja noch nicht mal
erkennbar, wie das Funktionsprinzip sein soll.

Das Prinzip ist ok, die Schaltung nennt man Watchdog.

Es gibt hunderte:
http://www.google.de/search?hl=de&q=watchdog+circuits&gs_sm=e&gs_upl=12048l12048l1l12174l1l1l0l0l0l0l0l0ll0l0&bav=on.2,or.r_gc.r_pw.,cf.osb&biw=1033&bih=872&wrapid=tlif132387733735910&um=1&ie=UTF-8&tbm=isch&source=og&sa=N&tab=wi&ei=7sPoTtEw2qqyBvTQ3JkH

Da der 74HC244 keine Schmitt-Trigger Funktion an den Enable Eingängen 
hat, muß so oder so ein IC dazu der die Schaltschwelle erkennen kann.

Da kann man den billigsten der billigen nehmen, den NE555.

Mit einem 74HC1G14 bräuchte man zumindest eine zusätzliche Diode (oder 
open collector Ansteuerung), spart also keine Bauteile.
Gast #2458664
Lesenswert?

Schon, aber ich hab nen Debugger dran und damit geht glaub ich der 
Watchdog nicht (PIC18).
Der µC steuert über den hc244 drei Halbbrücken (Motor) an. Letztens ist 
mir der Debugger jedoch wärend des Betriebs plötzlich ausgestiegen, was 
mir die Endstufe dann zerschossen hat da der Controller einfach 
stehngeblieben ist. Würde sich der hc244 selbst sperren, würde das nicht 
passieren.

Werd vermutlich also nicht um das Monoflop drumherumkommen...
Gast #2458674
Lesenswert?

Mallo Michael,

machs doch noch einfacher:

             VCC
             |
             R2
             |
Pc --- R1 ---+---- HC244
             |
             C1
             |
             GND

Gib dann einfach am PC dynamisch ein Signal "0"  / "Z" aus. Damit wird 
C1 imemr wieder entladen. Fällt die Funktion wech lädt sich der 
Konsendator und der HC schaltet. R und C denke ich kannst Du selbst 
dimensionieren. Das mit dem 220n im Schaltpfad ins nicht das Grüne vom 
Ei denn da hast du Limitierungen an den Ausgangsströmen des Treibers und 
das gibt unkalkulierbare Schmutzeffekte.

Grüße
Gast #2458748
Lesenswert?

Deshalb benutze ich bei der Kombination normaler µC (also nicht 
automotive) und Motor immer nen CPLD dazwischen. Dann kann bei einem 
Absturz oder nem Programmierfehler nicht einfach mal nen Endschalter 
übersehen werden). Da könnte man jetzt auch noch die Counter, FlipFlop 
und Logiggater zwischen µC und Motortreiber machen.
Gast #2458752
Lesenswert?

>ich suche nach einer einfachen Möglichkeit den 74hc244 zu sperren, falls
>mein µC abstürtzen sollte.

Das ist ein Bastlerforum.
Da macht es nichts, wenn ein uC abstürzt oder  >abstürtzen sollte .

Die diskutierten Lösungsansätze sind zwecklos und ebenfalls einfaches 
Bastlerniveau.
Gast #2458913
Lesenswert?

Michael schrieb:
> Der µC steuert über den hc244 drei Halbbrücken (Motor) an. Letztens ist
> mir der Debugger jedoch wärend des Betriebs plötzlich ausgestiegen, was

Dann solltest Du eher die Ansteuerung der Motoren überarbeiten.

Gibts beim AVR auch: Wird das AVRisp mkii vom USB getrennt, zieht es den 
Controller auf Reset.

Du hast also zwei Fehlerfälle:

1. Der Controller bekommt externes Reset => alle Pins werden - zumindest 
beim AVR - hochohmig und tendieren gegen Vcc. Wie es beim PIC ist, musst 
Du halt sehen.

2. Der Controller bleibt hängen => alle Pins bleiben stehen => 
Watchdog-Reset entsprechend kurz einstellen => Reset => alle Pins werden 
hochohmig und neu initialisiert

Hat der Controller keinen internen Watchdog, musst Du einen externen 
Watchdog für den Controller dranklöppeln.

Jetzt hast Du einen definierten Fehlerzustand => Pins hochohmig. Danach 
baust Du Deine Ansteuerung auf. Also z.B. mit Pull-Down-Widerständen, 
die im Reset-Fall die Halbbrücken stilllegen, indem sie den Pegel 
runterziehen.

Das OE des 244 bringt Dir gar nichts. Dadurch werden die Ausgänge 
hochohmig und sind für den Motortreiber nicht mehr definiert. 
Schlimmstenfalls beginnt der dann irgendwie zu schwingen. Also musst Du 
die Ausgänge mit Pull-Downs auf low zwingen. Dann kannst Du das aber 
auch gleich definiert am µC machen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren