Moin.. ich suche eine diskrete schaltung mit IC`s aus der 74iger Reihe. sie hat 10 eingänge, an denen schalter angeschlossen werden, und 4 ausgänge an denen ein bcd zu 7 seg treiber angehängt wird. Auf der 7 seg anzeige soll stehen wie viele schalter eingeschaltet sind. Maddin
Ich weiß jetzt nicht genau, was Du meinst. Ist es wirklich die Anzahl der (beliebigen) Schalter, die Du anzeigen willst? Das geht fast nur mit einem Zähler oder mit einem entsprechend programmierten Eprom (Schalter auf die Adressen). Oder die Nummer des Schalters mit der höchsten Nummer? Dafür gibt es den 74*148 (8->3 Prioritätsencoder), den 74*147 (10->4) und den 4531 (12->4). Beide Fälle lassen sich auch mit einem kleinen µC erledigen. Erzähl mal, was Du damit machen willst.
Die Anzahl der Schalter geht auch diskret einigermassen: zwei Parallel->Seriell schieberegister zum Tasten auswerten, dann mit nem Zähler am seriellen Signal einfach mitzählen, wieviele High-Level dabei waren. /Ernst
oder wenn schon diskret - geht auch ganz ohne IC und Logik, nur mit einer Handvoll Dioden a la 1N4148 :-)
Klar, einfach alle Schalter mit Widerstand dran parallelschalten, zum Anzeigen muss dann halt ein Drehspul-Amperemeter her, aber das hat eh einen höheren "Coolness-Faktor" als eine schnöde 7segment Anzeige. /Ernst
Ein Binäraddierer mit 10 Eingängen der Wertigkeit 1 liefert das richtige 4 Bit-Ergebnis. Ein 1-Bit-Addierer besteht aus einem Exor für das Ergebnis und einem UND für den Übertrag. Das ganze wird also in TTL-Technik ein Schaltnetz mit einer größeren Anzahl von Gattern
für die 1er-Stelle wäre es ein EXOR mit 10 Eingängen, bei ungeraden Schaltern auf "High" muß eine 1 herauskommen. Das läßt sich aus normalen EXORs 7486 zusammenschalten.
für ein CPLD wäre ein Karnaugh-Diagramm für jede der 4 Stellen des Ergebnisses die einfachste Entwurfsmöglichkeit, auf kariertem Papier mit 1024 Feldern...
na ich sehe schon, das wird was größeres, 16*16cm passt ja noch auf DIN A4, 32*32 Felder, was für Sudoku Fans, und das viermal. Vielleicht sollte man es doch in VHDL oder Abel formulieren und die Maschine optimieren lassen
Der 74xx147 ist/war(*) ein Dezimal-zu-BCD-Prioritäts-Encoder, der die gwünschte Funktion liefert. Dahinter noch einen BCD-Siebensegment-Decoder und fertig. (*) kann natürlich sein, dass der aufgrund RoHS abgekündigt ist... http://www.standardics.philips.com/products/logic/ http://www.standardics.philips.com/products/encoders/
Der Vorteil der Lösung mit dem Eprom ist, dass man den BCD->7segment-Decoder auch gleich mit reinprogrammieren kann, d.h. man braucht nur 1 IC.
die schaltung landet in einer diskreten welt. 8 Relais sollen geschaltet werden. für jedes relais eine led status ein/aus 2 tasten zur bedienung. taste 1.: kanalwahl (dabei werden die kanäle aufwärts angewählt) taste 2 : kanal toggeln 8 tasten für die freigabe eines kanals zur bedienung mit den 2tasten. Problem: es sollen nur die mit den 8 tasten/schaltern freigegebenen kanäle mit den 2 tasten bedienbar sein, die anderen nicht... ---------------------------------------------------------------------- grundgerüst: 8 JK flip flops daraus resultieren 8T eingänge zum toggeln. auf der anderen seite 8 leitungen von der freigabe. sind sie high, darf der jeweilige kanal mit den 2 tasten bedient werden. die bedienung besteht bis jetzt aus einem zähler, der von der einen taste (kanalwahl) angesteuert wird. über einen demultiplexer wird das zweite tastensignal (toggle channel on/off) an die 8Teingänge entsprechend des zählerstandes, weitergeleitet. im nächsten schritt soll der demultiplexer jetzt nur die kanäle ansprechen die freigegeben sind, die anderen werden ausgelassen, d.h wenn nur 4 kanäle freigegeben sind (egal welche) dann darf der zähler nur bis 4 zählen.... im nächsten schritt muss dafür gesorgt werden das der demultiplexer dann auch nur die freigegebenen kanäle anspricht..aber das ist noch hin... die idee mit dem schieberegister ist wirklich schon genial, ich tüfle gerade mit halb und voll addierern rum, und es scheint so als würde man damit auch weiter kommen.. maddin ps.: es wird rein diskret gelöst.
das mit den dioden verstehe ich nicht!? und: ein prioritätsencoder zeigt nicht die anzahl geschalteter pins, sonden codiert den mit der höchsten prio zu binär! maddin
Ich denk die Idee mit den Dioden war als Anspielung auf die EPROM-Umsetzung gedacht. Schliesslich ist ein PRom auch nix anderes als ein Adress-Decoder mit einem grossen Diodenarray. Aber bei so bei deutlich über 1000 benötigten Dioden würd ich das nicht ernsthaft in Erwägung ziehen. /Ernst
> ps.: es wird rein diskret gelöst.
Ist das 'in Stein gemeisselt'
Ansonsten wärs trivial für einen µC
ich bau mir einen mp3 player - kannst auch kaufen ich bau eine haussteuerung - mal was von eib oder lon gehört motor läuft nicht - kauf nen neuen ich bekomm die tür nicht auf - geh durch eine andere bin in not - ruf 112 :-) maddin
> ich bau mir einen mp3 player - kannst auch kaufen
Ich versteh schon was du mir sagen willst. Ich bin auch so:
wenns geht selbstbauen, wenn was kaputt ist, erst mal reparieren.
Allerdings:
Klar. Es gibt auch Wahnsinnige die sich eine komplette
CPU aus Gattern zusammenbauen. Nur, wenn wir ehrlich sind:
Sinn macht das keinen. Macht Spass, zugegeben, aber Sinn
hat es keinen. Irgendwo gibt es immer einen Breakeven-Punkt
an dem es einfach keinen wirklichen Sinn mehr macht alles
in Einzelteile aufzudröseln. Weder finanziell noch von
der Aufbauzeit noch vom Lerneffekt.
Natürlich steht es dir selbstverständlich frei das alles
mit Gattern zu lösen. Wer bin ich schon, dass ich dir das
vorwerfen würde. Ich dachte nur, da steckt irgendwas dahinter
das das Ganze 'diskret' aufgebaut werden muss.
@Karl Heinz Buchegger: das ist richtig, aber manchmal führt etwas schmalz an einem cpld einem eeprom, einem programmer und einem uc sanft vielleicht ja vorbei... uhh ich glaube ich habe da was...wie sehr ihr das, das müsste doch stimmen , oder!? Maddin
> ps.: es wird rein diskret gelöst. Nöö ! Es gibt diskrete (=einzeln) Bauteile (Dioden, Transistoren, Widerstände) und integrierte Schaltkreise (TTL, CMOS, MCs, EPROMS, CPLDs). Wenn Du TTL-ICs nimmst, kann also von diskret überhaupt keine Rede mehr sein. Du mußt Dir schon die FFs aus Transistoren oder Röhren oder Relais selber aufbauen. Wobei Relais den Vorteil haben, daß die Tasten dann nicht mehr entprellt werden müssen. Peter
Und hier mal ne diskrete Digitaluhr: http://www.jogis-roehrenbude.de/Leserbriefe/Bruegmann-Digital-Roehren-Clock/Digital-Roehrenuhr.htm Peter
@Karl Heinz Buchegger: dahinter stecken ein paar kartons ttl gatter, die sich angesammelt haben, ein jüngerer bruder mit technischem interesse und der spaß am selber machen.... :-) vielleicht eine tüte chips, zwei lötkolben, und ein erfolgserlebniss ohne pc, ohne stupides programmieren, ohne nervige software, und die birne ein wenig anstrengen - welches sich direkt anknüpft - das ist ein klasse gefühl. und diese schaltung funktioniert in 100 jahren noch :-) wenn alle gates einer fet-zelle eines flash-proms schon längst durch selbstentladung verblasst sind :-) maddin
Ja Rahul, der Prioritätsencoder ist mir auch zuerst eingefallen, aber hier fehl am Platz. Die normalern Addierer addieren zum Beispiel zwei 4Bit-Zahlen zu einer 4 Bit-Zahl mit Übertragsbit. Hier sind es aber zehn Zahlen zu je einem Bit, die aufaddiert werden, das kommt seltener vor. Im Wikipedia-Artikel ist das nicht zu finden. Es ginge mit 10 Stück Vier-Bit-Volladdierern wie der 7483 oder 74283, die jeweils 0000 oder 0001 addieren, also drei Bit fest auf Null und das LSB mit dem Schalter verbinden. Die Übertragsbits bleiben unberücksichtigt, da sie nie gesetzt werden. EPROM wäre eine einfache Lösung, den Inhalt könnte man vielleicht als Spreadsheet berechnen lassen. Es muß 10 Adresseingänge haben, schon 1 kByte oder 8 kBit wie der alte 2708 wären ausreichend.
Hallo Peter, ein schlag in die rippe, das ist ein tolles projekt:-) ich habe sowas auch mal gebaut, allerdings mit 240 kammrelais, das ist wirklich lang her, und steht ja auch garnicht zur diskussion. ich hoffe das schon klar ist was ich mit diskret meinte, ansonten sind wir gleich in der physik, denn ein transistor ist kein atom, und da ich ja nicht "atomar" geschrieben habe... :-) maddin ps.: ist die diskrete digitaluhr mit röhren denn digital, oder ist es eine analoge digitaluhr!? :-) wenn wir schon dabei sind..
@Maddin, die ist natürlich voll digital. Egal ob Röhre, Transistor oder FET, alle können als Verstärker (analog) oder als Schalter (digital) arbeiten. Nur Relais können nur schalten (digital). Peter
@Christoph: Man müsste einfach die bisherige Summe "zurückkoppeln". Das könnte mit drei D-FF passieren. Eigentlich nur ein Problem des Timings / der Synchronisation. Paritäts-Logik oder CRC-Bestimmung arbeitet doch auch so. Die Lösung von Maddin sieht doch schon nicht schlecht aus. Müsste man mal durchrechnen. Übrigens könnte es mit dem Prio-Encoder auch gehen, wenn man dahinter Vergleicher hat (EXOR+NAND?), die den Zähler zurücksetzen. Irgendwie sehe ich da aber noch ein Problem: Wenn man angibt, dass Relais 1, 4 und 8 freigeschaltet sind, zählt der Zähler nur bis Relais 3, oder?
@ maddin, folgender Gedankenansatz, man nehme einen 4017 und verundet die Ausgänge mit den zehn Schaltern. Wenn das UND high wird, wird ein Binärzähler inkrementiert. Nach einem Durchlauf hat man die Anzahl der betätigten Schalter in dem Zähler stehen. Weiter bin ich noch nicht. MW
@Michael, so habe ich noch garnicht gedacht, das geht in die richtung mit dem schieberegister ... @inoffizieller WM-Rahul das ist ja auch problem 2, wenn der zähler dann nur noch bis 3 zählt,da nur 3 kanäle freigegeben sind, dann muss der multiplexer der die tastsignale des 2 ten bedientsters auf die jk ff verteilt nur die freigegebenen jk ff ansprechen, da bin ich auch noch am knobeln... maddin
mal ein ganz anderer (unausgegorener) Ansatz. Was ist wenn: Du hast doch einen Zähler der den Multiplexer ansteuert. Diesen Zähler erhöhst du mittels Tastendruck. Hab ich das soweit richtig verstanden? Wenn nun ein Bedientaster eine Sperre des MUX-Kanals meldet, dann wird ein zusätzlicher Puls an den Zähler gegeben und der Zähler 'überspringt' quasi den gesperrten Kanal. Dadurch brauchst du gar nicht zählen, wieviele Kanäle gesperrt (bzw. offen) sind.
Eine Lösung wäre: Wenn der Zähler auf einen nichterlaubten Zustand zählt, soll er sofort weiterzählen. Es müsste nur noch gewährleistet werden, dass in dieser kurzen Verweilzeit das entsprechende FF nicht getaktet werden kann. Wenn kein Zustand erlaubt ist, zählt er halt immer volle Pulle im Kreis. Zur Röhren-Digital-Uhr: ist ja ein Wahnsinns-Projekt. Was er nicht geschrieben hat, wieviel Watt das Teil hat. 6,3V*39,0A=245,7W (Heizung) 250V*0,34A= 85,0W (+170V) 200V*0,03A= 6,0W (-100V) 190V*0,06A= 11,4W ( +75V) -------- 348,1W (pro Jahr 3051 kWh) Ein paar Röhren hätte er einsparen können, wenn er statt 100Hz 50 Hz genommen hätte und diese mit einem 6-Bit-Zähler (den er bei 50=0b110010 zurücksetzt) statt mit 2 4-Bitzählern auf 1 Hz geteilt hätte. Außerdem, wenn schon Halbleiter-Dioden erlaubt sind, dann hätte ich alle Röhrendioden durch solche ersetzt. Das hätte ihm bestimmt den 3. Trafo erspart.
Noch eine Korrektur: Profi Datum: 11.08.2006 11:40 Der 4531 ist kein 12->4 Prioritätsdekoder, sondern ein 12-Bit-Paritätsgenerator / -checker. Kommt davon, wenn man ungeprüft aus dem efaq.pdf abschreibt: http://horst-lehner.mausnet.de/efaq/efaq.pdf Ist mir schon öfters aufgefallen, dass man aus den EFAQ nicht alles für bare Münze nehmen darf. Der 4532 ist ein 8->3 PrioEncoder @Autor: Karl Heinz Buchegger (kbucheg) Datum: 11.08.2006 15:54 Da hatten wir den selben Einfall, nur war ich noch mit dem PDF lesen und die Leistung berechnen beschäftigt... Mein Text war schon getippt, aber noch nicht abgeschickt ;-)
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.