Hallo Ich habe eine Linux Applikation, welche über den Parallelport eine 8 Port Karte steuert. 6 von den 8 Ports habe ich schon belegt. Mit den 2 verbleibenden komme ich aber nicht durch.... Könnte man da nicht gemäß der untenstehenden Logiktabelle 4 Ports generieren? wunderbare Brotvermehrung IN OUT 00 0001 01 0011 10 0111 11 1111 Hat jemand eine einfache Idee (Chip) zur Lösung meines Problems? Die beiden Eingänge würden von einem ULN2803AG (open-collector) angesteuert, die Ausgänge sollten Relais ansteuern können. Danke Daniel
...wenn Du schon die Leistungstreiber vor die Logik schalten willst/musst und dahinter eh Relais hängen, machs wie der alte Herr Zuse. Benutz die Relais direkt, um die entsprechende Wahrheitstabelle abzubilden. Viel Spass beim austüfteln...
Serielle Portexpander? Aus 2 Ports kann man nur seriell 4 machen. Woher sollten sonnst die Informationen kommen. Ansonnsten vllt Stromstoßrelais und "multiplexen". Gruß ErgoProxy
Einfachste und billigste Loesung - serielles Schieberegister (shift register) mit parallelem Ausgang. Die 74HC.. -Serie hat ein paar geeignete Typen, kostet ueblicherweise weniger als 1 Euro. Einer Deiner Ausgaenge vom parallelen Port treibt das Taktsignal, der andere die seriellen Daten. Einziger Nachteil - waehrend Du die Daten reinschiebst, wechseln die Ausgaenge einigermasse unkontrollierbar die Zustaenge, weil die Bits an ihnen "vorbeilaufen". Oft kein Problem, wenn man's so schnell macht, dass es der Motor etc. nicht mitbekommt.
Danke für eure Ideen @ Klaus ich möchte mit den 4 Ausgängen 4 Relais steuern. Diese schalten dann einen Stufentrafo. Wenn ich das richtig sehe kann ich das mit der "Lösung Zuse" nicht realisieren. oder irre ich mich? @ Wolfgang ich möchte weniger "Daten" als eher selten wechselnde Zustände bewirken. ( es kann sein, dass ein Zustand mehrere Stunden gleich bleibt) Wenn ich das aber richtig sehe kann ich das trotzdem auf diese Weise realisieren. Werden mir da evt die Relais am Ausgang während des Schaltvorgangs klappern. Gruss Dani
Ist Dir schon aufgefallen, daß bei Deiner tabelle für die OUT-Werte ein Ausgang immer "1" ist. Kannst Dir somit sparen.
Bei der Logiktabelle gibt es eigentlich nur 3 Ausgänge, das LSB ist immer 1. Lässt sich sicher mit ein paar Dioden, Gattern oder einem GAL auflösen. Nein, ich mach das jetzt NICHT .....
Für ein Schiebregister benötigt man auch mehr als die 2 Ausgänge. Schau dir aber mal die Rudgatter der 74er Reihe an. Du wirst sehen das ist ganz einfach wenn du die 4 Ausgänge einzeln betrachtest.
Wenn du dir das genau anschaust, ist die eine der 4 Ausgangsleitungen eh immer 1, also brauchst du dies nicht zu berücksichtigen und du hast nur noch 3 Ausgangszustände.
Bit 0 ist immer 1 => Direkt an VCC Bit 1 ist genau dann 1, wenn Steuerbit 0 = 1 => Direkt an Steuerbit 0 Bit 2 ist genau dann 1, wenn Steuerbit 1 = 1 => Direkt an Steuerbit 1 Bit 3 ist genau dann 1, wenn Steuerbit 0 = 1 UND Steuerbit 1 = 1 => AND-Gatter an Steuerbit 0 und 1, Ausgang des Gatters ist dieser Ausgang. Du brauchst also nur ein AND.
Man könnte einen 74138 verschwenden, von den Select-Eingängen nur A und B verwenden, G1 auf +5V, G2A und G2B auf Masse, die Ausgänge Y0-Y3 durch Dioden so verküpfen, daß der jeweils höherwertige die darunterliegenden "mitzieht".
Hallo Martin, nein, ein Schieberegister braucht wirklich nur 2 Leitungen - Daten (data) & Taktsignal (clock). Der Rest (Enables, Reset, Serial Out etc.) falls vorhanden ist optional und im vorliegenden Fall nicht notwendig (einfach /CE mit GND verbinden, Reset mit VCC, usw.; der serielle Ausgang fuehrt zum Eingang fuer weitere Schieberegister falls noetig). Wolfgang
@Wolfgang
Das flattern die Ausgänge während des schiebens.
@Karl-Heinz
>Bit 1 ist genau dann 1, wenn Steuerbit 0 = 1 => Direkt an Steuerbit 0
Wie kommst du darauf? Dann währe der Ausgang bei Eingang 1 0 wieder 0.
Das ist aber nicht richtig.
was ist denn mit nem 74xx595? gibts doch auch noch mit treibern. könntest alle relais dranhängen und hättest noch 5 leitungen für andere sachen frei. gruß
@Martin, Ausgaenge flattern, das stimmt, darauf habe ich allerdings schon bei meinem ersten Posting hingewiesen. Ob's aber stoert, haengt davon ab, was man treibt und wie schnell. Z.B. wenn man bloss LEDs ansteuert, ist's normalerweise ganz egal. Wenn man einen Takteingang ansteuert, ist es toedlich. Fuer Relays haengt es davon ab, wie schnell - wenn man die Daten mit 100 kHz oder mehr reinschiebt (ohne weiteres moeglich mit dem Parallelport), merkt das Relay gar nix - die Schiebevorgang ist dann viel schneller als die mechanische Reaktionszeit. Noetigenfalls kann man ja noch einen R-C-Tiefpass mit ca. 1ms Zeitkonstante (10 kOhm + 100nF) an die Ausgaenge des Schieberegisters anhaengen, damit schnelle Aenderungen gar nicht erst bis zum Relaytreiber durchkommen. Wolfgang
Hi! 4 Dioden und ein R, dann ist die Sache gegessen(oder ein AND + 2 Dioden) Noch mal fix nachgeschaut, ohh, Signale kommen ja von ULN2803AG und sollen Relais schalten. Moment ULN2803AG schaltet nach GND, stimmt das? Ok, 6 Dioden 3 R's und 2 PNP Transistoren dann sollte es passen :-) Kleiner Tip, das 4. Relais muss genau dann einschalten wenn beide Eingänge auf Low sind, ein Eingang schaltet 1 Relais und der andere 2 Den Rest mahlst du dir jetzt bitte mal selber auf. Achso 1 R ist Pullup. Die 2 anderen zur Basisstrombegrenzung und die 6. Diode eine Freilaufdiode Viel Erfolg, Uwe
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.