Autor |
Suche einen "6 Bit to 64 out" Converter mit FlipFlop !!! Suche nach: converter (498) |
|
|
|
|
BID = 363973
BennyDerGute Gerade angekommen
Beiträge: 4 Wohnort: Nürtingen
|
|
Hallo zusammen,
hier mal die Idee und das Vorhaben kurz beschrieben !!
AUS DEM PARALLELEN PORT AUSGANG MIT 6 BIT 64 AUSGäNGE NUTZEN !!
Habe vor, an der Parallelen Schnittstelle über 6 Bit eine Schaltung auf zu bauen, die es mir ermöglicht 64 unterschiedliche Schalt stufen zu nützen.
Ich suche ein IC das quasi 6 Bit in 64 Ausgänge wandelt und möglichst noch zusätzlich einem FlipFlop am Ausgang besitzt, um diesen Ausgang auch auf "Hi" bzw. "Low" zu halten.
Das Programm sollte dann ca. 100 mal in der sek. diese 64 Stufen ablaufen und die Ausgänge aktualisieren. Das bedeutet das Flipflop am Ausgang muss den Impuls als zustand "EIN" setzen und so lange halten bis an diesem Ausgang wieder ein Impuls ankommt und den zustand von "EIN" auf "AUS" setzt.
Bis jetzt habe ich geplant diese Schaltung mit dem 3-to-8 Line Decoder ( bei Reichelt = "74HC 237") zu realisieren.
Allerdings müsste ich um auf 64 Ausgänge zu kommen diesen IC mit acht weiteren 74HC 237 Kaskadieren.
Zusätzlich brauche ich am Ausgang von diesen IC´s dann immer noch die FlipFlops und um auf 64 FlipFlops zu kommen benötigt man weitere 8 IC´s.
Somit wäre meine Schaltung dann bei 17 IC´s. Ob diese Platine dann jemals funktionieren wird, ist sehr fraglich !!??
Bin gerade auf der Suche nach einem IC-Baustein, das diese Funktion schon kann, selbst wenn es nur ein IC-Baustein geben sollte des max. 32 Ausgänge hat, würde es mir schon reichen!!!
Wenn es dann soweit fertig ist und man min. 32 eher 64 Ausgänge "quasi Gleichzeitig" nützen kann, möchte ich einige Schaltungen damit realisieren !!
Würde mich sehr freuen wenn mir jemand bei meiner IC-Bausteinsuche weiterhelfen könnte !!!
Danke schon mal !!
Gruß Benny |
|
BID = 363978
Her Masters Voice Inventar
Avatar auf fremdem Server ! Hochladen oder per Mail an Admin
Beiträge: 5308 Wohnort: irgendwo südlich von Berlin
|
|
Wenn man sich den Dekoder selbst programmiert könnte man EPROMs nehmen und wenn man die Primärseite latcht braucht man nur 6 bit abfangen statt 64.
_________________
Tschüüüüüüüs
Her Masters Voice
aka
Frank
***********************************
Der optimale Arbeitspunkt stellt sich bei minimaler Rauchentwicklung ein...
*********************************** |
|
BID = 363984
BennyDerGute Gerade angekommen
Beiträge: 4 Wohnort: Nürtingen
|
kann leider kein Eprom prorammieren, hierfür wäre auch mein "Elektro-Wissen" noch zu klein !! Ich vermute aber dass es so ein IC schon geben wird !!?? Hoffe iCh !!
Kannst du mir bitte das was du hiermit meinst kurz erklären? "Primärseite latcht braucht man nur 6 bit abfangen statt 64"
Was ist "latcht" ?
der Plan war dass ich eh nur 6 Bit nutze und das ergibt schon 64 Ausgänge !???
|
BID = 363990
Her Masters Voice Inventar
Avatar auf fremdem Server ! Hochladen oder per Mail an Admin
Beiträge: 5308 Wohnort: irgendwo südlich von Berlin
|
Ja, und du möchtest den Betriebszustand puffern, also in Neudeutsch latchen. Wenn du das primär tust brauchst du 6 bit, sekundärseitig jedoch 64 bit. Ein geringfügiger Unterschied. So würde man mit einem 74hc573 und 8 EPROMs hinkommen. Die 8 EPROMS wären auch nur nötig, weil so ein Ding nunmal nur 8 Datenbits ausgeben kann. Dafür hätte man die Freiheit auch kompliziertere Ausgangsmuster zu programmieren, ohne an der Schaltung was ändern zu müssen. Kannst dir ja auch mal einen 74LS154 ansehen, der macht immerhin 1 aus 16. Nur der Zweck des Ganzen ist mir bisher verborgen geblieben....
_________________
Tschüüüüüüüs
Her Masters Voice
aka
Frank
***********************************
Der optimale Arbeitspunkt stellt sich bei minimaler Rauchentwicklung ein...
***********************************
|
BID = 364005
BennyDerGute Gerade angekommen
Beiträge: 4 Wohnort: Nürtingen
|
OK, latchen ist mir jetzt klar, Danke !!
Nur stelle ich mir das einfacher vor !
kurz Zur Aufgabenstellung:
habe ein WLAN access Point mit einer Paralleler Schnittstelle, über diese möchte ich einiges steuern. Leider reichen mir die acht ports nicht aus, deshalb möchte ich von den 8 bit 6 bit´s nützen und in binär auf 64 Ausgänge wandeln, da dann aber immer nur ein kanal Aktiv sein kann, sollte an jedem Ausgang ein FlipFlop hängen. Beispiel es kommt folgender befehl 001010 und am Ausgang 56 wird ein Impuls gesetzt, dieser Impuls soll durch eine Selbsthaltung (FlipFlop) so lange aktiv bleiben, bis dieser Port 56 nocheinmal ein Signal bekommt und dabei dann wieder auf Low geht !!
Eine Software wird dann diese 64 Ausgänge ca. 100 mal in der Sek. aktualisieren. Somit wäre es möglich "quasi Gleichzeitig" mehrere Ausgänge parallel zu Schalten !!
Warum hat die Selbsthaltung (bzw. FlipFlop) was mit 6 oder 64 Bit zu tun? Es soll lediglich aus einem kurzen Impuls ein Hi setzen oder aus einem weitern Impuls ein Low !! Und dies für alle 64 Ausgänge !!
|
BID = 364013
Her Masters Voice Inventar
Avatar auf fremdem Server ! Hochladen oder per Mail an Admin
Beiträge: 5308 Wohnort: irgendwo südlich von Berlin
|
nun wirds langsam klarer. Schonmal über Schieberegister nachgedacht? Vielleicht lässt sich das Problem damit eleganter lösen? Da würde ein Bit zum Daten schieben reichen, Eins als Takt und Eins als Enable und man kann fast beliebig viele Register hintereinanderschalten. Die Ausgänge sind dann schon gelatcht und werden per Enable umgeschaltet.
_________________
Tschüüüüüüüs
Her Masters Voice
aka
Frank
***********************************
Der optimale Arbeitspunkt stellt sich bei minimaler Rauchentwicklung ein...
***********************************
|
BID = 364028
cholertinu Inventar
Beiträge: 3755 Wohnort: CH
|
HMV hat recht. Das geht wohl besser mit Schieberegistern.
Da kannst du periodisch den neuen Datensatz (die 1-0-... Bitfolge für alle deine Ausgänge) reinschreiben und synchron an die Ausgänge freischalten.
Ein- oder Ausschalten geschieht dann nicht durch den Impuls (=fehleranfällig) sondern durch den statischen Zustand.
|
BID = 364094
BennyDerGute Gerade angekommen
Beiträge: 4 Wohnort: Nürtingen
|
Könnt ihr mir bitte für dieses Schieberegister eine Bezeichnung geben, damit ich mir bei Reichelt mal die Datenblätter anschauen kann !?
Gibt es diese Schieberegister auch als 4Bit auf 32 oder 5 Bit auf 64 Version? Dann würde ich mir viele Bauteile sparen!
|
BID = 364098
Dombrowski Stammposter
Beiträge: 450
|
Moin.
Mal was zur Codierung: allein mit 6 Bit tatsächlich 64 Binärausgänge zu steuern, so wie du dir das vorstellst, das wird wohl nicht gehen. Denn du brauchst ja (mind.) eine Bitkombination, die sowas wie ein NOP-Befehlswort darstellt, also "Es liegt gerade kein Befehl an".
Wenn schon 8 Bit zur Verfügung stehen, solltest du die auch ausnutzen, um 8 Bit breite Kommandoworte auszugeben:
- 6 Bit dienen als Adresse und wählen einen von 64 Binärkanälen an;
- 1 Bit gibt an, ob der betreffende Kanal ein- oder ausgeschaltet werden soll;
- 1 Bit dient als Strobe und kennzeichnet, dass ein neues Kommando anliegt.
In dem Fall brauchst du nur dann Kommandoworte zu erzeugen, wenn sich an einem der Binärkanäle etwas ändert.
Realisieren lässt sich das mit einem µController als Steuerzentrum und 6 mal TTL-8Bit-Register (74273 u. Verwandte) als eigentlicher Außen-Speicher. Eventuell noch Puffer-Bausteine dahinter, um das Fan-Out zu erhöhen. Ein Aufbau mit Einzel-Logik-Bausteinen statt µC wird schon ungemütlich aufwendig.
Stattdessen das Ganze mit Schieberegister aufgebaut, macht die Hardware natürlich einfacher. Aber die Ansteuerung unbequemer. Schieberegister gibt es z.B. als 1-auf-8: 1 serieller Eingang + 8 parallele Ausgänge.
D.
|
BID = 364158
Colonel2601 Gelegenheitsposter
Beiträge: 97 Wohnort: Enger
|
Hallo.
Wenn's komfortabel sein soll, würde ich's auch so machen wie Dombrowski. Da du aber schon schreibst, dass dein Elektronik-Wissen dafür vermutlich nicht ausreicht, würde ich dir eher zu der Schieberegister-Lösung raten.
Du nimmst einfach so viele 74HCT164-Bausteine, wie du Ausgänge benötigst, und schaltest diese alle in Reihe. Dann kannst du von deinem Parallelport aus die Datenbits durchschieben.
Wenn sich die Ausgänge bei diesen Schiebeaktionen zwischenzeitlich nicht ändern dürfen, schaltest du hinter die Parallel-Ausgänge der 74HCT164-Bausteine jeweils einen 74HCT373-Baustein, sodass du mit einem Impuls an diesem Baustein zu einem bestimmten Zeitpunkt (nach der Schieberei) die parallel anliegenden Bits latchen kannst.
Das ganze wird allerdings ein Gattergrab
Wenn du die Zeit und Lust hast, dann arbeite dich lieber in die Programmierung von Mikrocontrollern (Atmel, PIC,...) ein oder gleich die FPGA-Programmierung. Da gibt es schon sehr günstige Chips von Altera, Lattice und co. mit 100ten von Flipflops und Ausgängen, lediglich die Löterei wird da ein wenig kniffliger (SMD, selten unter 100Pins, wird bei mindestens 64 Ausgängen auch schwierig )
Gruß,
Colonel2601
PS.: Im Anhang ist noch eine IC-Übersicht, hilft evtl bei der Suche im Reichelt-Katalog.
|
BID = 364193
DonComi Inventar
Beiträge: 8605 Wohnort: Amerika
|
Hallo,
Dann nimm' gleich den (CD)4094. Der hat gelatchte Ausgänge, die mit dem STROBE-Signal gesetzt werden!
Während die Bits eingetaktet werden, ist das STROBE-Signal deaktiv, die Ausgänge ändern sich nicht! Erst wenn alle 64 Bits eingetaktet sind, dann wird Strobe einmal kurz gepulst und die Daten erscheinen an den Ausgängen. Die bleiben da auch, ohne dass sich der Zustand ändert. Erst beim nächsten Strobe-Impuls werden die neuen Daten "sichtbar".
Nebenbei haben sie auch einen Tristate-Ausgang. (Wers braucht ; )
_________________
Edit:
Mist, jetzt merke ich grad: Der Strobe-Eingang muss 8 mal getaktet werden, damit das Bit von jeweils dem letzten Ausgang überhaupt weitergegeben werden kann.
[ Diese Nachricht wurde geändert von: DonComi am 28 Aug 2006 23:46 ]
|
BID = 364216
Nukeman Schriftsteller
Beiträge: 754 Wohnort: bei Kleve
|
Hi DonComi,
wieso muss der Strobe 8 mal getaktet werden? War doch alles
richtig, wie Du es zuerst geschrieben hast.
Der Strobe kommt parallel an die kaskadierten (8[x8Bit]) ICs
und tackert die reingeshifteten Daten (64Bit) in einem Schlag
an den Ausgang durch.
Oder habe ich jetzt was grob missverstanden?
Gruß,
Stefan
Edit: Qs bzw Q´s ziehen durch, auch wenn der Strobe low bleibt, wenn ich das Datenblatt richtig interpretiere.
Ist quasi identisch mit Q8, nur dass es nicht mit an der
Strobe/OE-Leitung hängt.
[ Diese Nachricht wurde geändert von: Nukeman am 29 Aug 2006 1:07 ]
|
BID = 364226
DonComi Inventar
Beiträge: 8605 Wohnort: Amerika
|
Hallo Nukeman,
ok, habe das DB nicht gelesen, der Chipname und die ungefähre Funktion war nur noch so im Kopf irgendwo .
Wusste halt nicht, dass der letze Ausgang des Registers (und damit Dateneingang des n+1ten) vom Strobe unabhängig ist.
Und 8x stimmt auch nicht, war vorhin nicht so ganz da ...
_________________
|
BID = 364246
Dombrowski Stammposter
Beiträge: 450
|
Moin.
Zitat :
| Und 8x stimmt auch nicht, war vorhin nicht so ganz da |
Und ich muss meine sechs Bauklötze berichtigen. Es sind natürlich acht (in Worten: 8 ) Chips. Auch bei Regenwetter.
D.
|
BID = 364254
cholertinu Inventar
Beiträge: 3755 Wohnort: CH
|
Zitat :
|
Könnt ihr mir bitte für dieses Schieberegister eine Bezeichnung geben, damit ich mir bei Reichelt mal die Datenblätter anschauen kann !?
|
Das Datenblatt von TI findest du hier:
http://focus.ti.com/lit/ds/symlink/cd74hc4094.pdf
Obs den bei Reichelt gibt - keine Ahnung.
Zitat :
| ...oder gleich die FPGA-Programmierung. Da gibt es schon sehr günstige Chips von Altera, Lattice und co. mit 100ten von Flipflops und Ausgängen... |
Das ist ein Witz?
Da will einer alle 10ms (also fast Gleichstrom...) ein paar (64Stk) Ausgänge gesetzt haben und es wird ein FPGA vorgeschlagen.
@BennyDerGute:
Nimm das Schieberegister und setze 8 davon hintereinander. Das FlipFlop zum Erhalten des Zustands bis zum nächsten Refresh ist da schon mit drin.
Für die Ansteuerung brauchst du nur 3 Leitungen: Clock, Data, Strobe.
Data: einzuschiebende Daten
Clock: Daten um 1 Bit weiter ins Schieberegister reinschieben ->geht parallel auf alle Clock-Eingänge
Strobe: ins Schieberegister reingeschobene Daten in den Ausgangs-FF speichern.
Du kannst dann auch noch das OE-Signal verwenden, mit welchem du die Ausgänge ein- und ausschalten kannst. Das brauchst du aber nicht unbedingt. Vergiss aber nicht, dieses auf den korrekten Default-Zustand für "eingeschaltet" zu legen.
Vorschlag: Zeichne mal ein Schema, wie du das ganze zusammenbauen willst und poste dieses hier. Dann können wir weitersehen.
Die Programmierung des ganzen Konstrukts ist denkbar einfach: in einer Schlaufe alle Bits einzeln auf den Ausgang legen und Clock bewegen, am Ende einen Strobe-Impuls und fertig ist.
|