Ich nehm mal an, mit einem Synchronzähler wäre das viel Aufwand. Aber prinzipiell würde es so gehen. Müsstest halt die J/K - Eingänge entsprechend nach deinen Wünschen für die Ausgangsfolgen beschalten.
Hallo liebe Leute,
Hier meine Aufgabenstellung:
Ich will ein Lauflicht bauen mit 16 LEDs welche sich nacheinander ein und wieder aus schalten (klar, ist ja ein Lauflicht). Da sowas ab bischen alber und einfach ist, hier der Zusatz: Es sollen immer drei LEDs gleichzeitig Leuchten.
Also schaut das Digital dann so aus:
0000 0000 0000 0000
1000 0000 0000 0000
1100 0000 0000 0000
1110 0000 0000 0000
0111 0000 0000 0000
usw.
Das Triplet soll also durch die Reihe wandern. Immernoch zu einfach?
Ok nächste Stufe, nach 3mal 0 soll die nächste Sequenz beginnen.
Der entgültige Code schaut dann so aus:
Wenn die erste Sequenze durchgelaufen ist, soll das ganze in einer Endlosschleife weiterlaufen.Code:0000 0000 0000 0000 1000 0000 0000 0000 1100 0000 0000 0000 1110 0000 0000 0000 0111 0000 0000 0000 0011 1000 0000 0000 0001 1100 0000 0000 1000 1110 0000 0000 1100 0111 0000 0000 1110 0011 1000 0000 0111 0001 1100 0000 0011 1000 1110 0000 0001 1100 0111 0000 1000 1110 0011 1000 1100 0111 0001 1100 1110 0011 1000 1110 0111 0001 1100 0111 usw
Um den Code durchreichen zu können und gleichzeitig auch abgreifen zu können würde ich ein parallels Schieberegister verwenden (entsprechend mit 16 Bit oder mehrere hintereinander mit weniger Bits).
Die Frage ist also: Wie muss eine entsprechende Logik aussehen, die das entsprechende Eingangsignal erzeugt. Und entsprechend dafür sorgt, dass die Schaltung in einen Endlosbetrieb übergeht.
Alternativ kann die Schaltung auch zu einem beliebigen Punkt mit einer Triplet Squenz starten.
Zusatzfrage: Was für parallele Schieberegister gibt es (Typ) und wo bekomm ich sie her?
Hinweis: Über die Ansteuerung der LEDs müsst ihr euch keine Gedanken machen. Geht davon aus, dass die Schaltung für das Taktsignal bereits existiert.
Für Vorschläge bin ich unendlich dankbar.
Ich nehm mal an, mit einem Synchronzähler wäre das viel Aufwand. Aber prinzipiell würde es so gehen. Müsstest halt die J/K - Eingänge entsprechend nach deinen Wünschen für die Ausgangsfolgen beschalten.
Ich würde ja gern die Welt verändern..., doch Gott gibt mir den Quellcode nicht!
Du verwechselst da was, dein Synchronzähler ist mein Paralleles Schieberegister. Ein Synchronzähler zählt von 0 bis zu einer voreingestellten Zahl. Sprich es ist zwar ein weiterreichen des Signals aber nur bis zum eingestellten Wert.
Es sei den du meinst dass ich damit meine Schaltung initialisieren kann.
Dann erklärs mal bitte etwas genauer.
Allerdings würde ich eine Logikschaltung vorziehen.
In Anbetracht der Tatsache, dass es einen Tiny2313 für 1,25€ gibt, der diese Aufgabe problemlos erledigen könnte, würde ich an deiner Stelle dafür kein TTL-Grab aufbauen... hätte den Vorteil, dass man die gesamte Logik in einem IC hat, inklusive Takterzeugung, außerdem könne man mit wenig Mehraufwand noch beliebige andere Blinkmuster- und Geschwindigkeiten einbauen, die z.B. über einen Taster umgeschaltet werden könnten.
Damit wird es ja wesentlich einfacher.Alternativ kann die Schaltung auch zu einem beliebigen Punkt mit einer Triplet Squenz starten.
Wenn ich das richtig überdacht habe, sind es jetzt nur noch drei Bits, die über sechs Positionen hinweg laufen müssen. Alle weiteren LEDs haben die gleiche Reihenfolge und können parallel zu den ersten angeschlossen werden.
Mag sein, das ich da noch einen Denkfehler drin habe. Und das ist auch sicherlich nicht so wie du es haben möchtest, aber eins habe ich in der Digitaltechnik gelernt. Wann immer es möglich ist, sollte die Schaltung vereinfacht werden. Stichwort KV-Tabelle.
Soll nicht umgeschaltet werden und ich muss den Chip dann programmieren, das ist mir eigentlich nicht so recht bzw. gar nicht notwendig.In Anbetracht der Tatsache, dass es einen Tiny2313 für 1,25€ gibt, der diese Aufgabe problemlos erledigen könnte, würde ich an deiner Stelle dafür kein TTL-Grab aufbauen...
Das stimmt, dann ist zwar 16 Bit etwas ungünstigt sondern irgendwas mit 18 besser (3x mal 6).Wenn ich das richtig überdacht habe, sind es jetzt nur noch drei Bits, die über sechs Positionen hinweg laufen müssen. Alle weiteren LEDs haben die gleiche Reihenfolge und können parallel zu den ersten angeschlossen werden.
Gut frage wie bekomm ich jetzt die 6 Bits zustande ?
nahja, dein Signal fängt doch irgentwann wieder von vorne an oder? Also dann geht das doch oder?
Ich würde ja gern die Welt verändern..., doch Gott gibt mir den Quellcode nicht!
Von vorn schon. Ich werd das 6Bit Parallel Schieberegister also als Ringregister schalten, dann fällt es auf jedenfall in die Endlosschleife. Nur wie bekomm ich jetzt die 6 Bits an den Eingang um das ganze entsprechend zu starten?
Da ist für mich noch das Problem. Ab dem Punkt wo die Sequenz einmal drin ist, kein Thema.
Google würde sicherlich ein paar Schaltpläne für Lauflichter finden.Gut frage wie bekomm ich jetzt die 6 Bits zustande ?
Aber Uwe hat mehr als Recht! Ein IC, der viele IC's ersetzt und nicht wesentlich teurer ist (zumindest im Bereich Hobbyanwendung).
Wenn es drum geht, dabei was über die Digitaltechnik zu lernen, wird Google alles beantworten können.
Wenn es jedoch einfach nur drum geht das Problem zu lösen würde ich auf einen µC ausweichen.
Ich habe früher in der Berufsschule auch digitale Schaltungstechnik gelernt. Aber seit dem ich mich mit AVRs beschäftige habe ich vieles davon verdrängt. Sicherlich darf man die Grundlagen nicht vergessen, aber für jede Anwendung die richtigen ICs zu finden, wenn es einen gibt, der (fast) alles kann ist mir zu blöd.
Mir reicht es, die Grundlagen zu verstehen und anwenden zu können, und somit auch mal durch ältere Schaltungen durchsteigen zu können. Aber bei einer Neukonzepierung würde ich sowas nicht mehr diskret aufbauen.
Der Kostenunterschied ist zu gering, der Platzbedarf unterscheidet sich allerdings zum Teil erheblich, und mit µC ist man wesentlich flexibler!
Hi,
ich würde auch einen Atmel nehmen.
Evtl. könnte folgender Ansatz dier helfen :
Der Taktgenerator steuert einen Zähler. Ein BCD-Dezimal-Konverter wandelt die Signale nach dezimal um. Der Ausgang 5 des Konverters wird mit dem Reseteingang des Zählers verbunden. Jetzt hast du einen Zähler bis 6.Die erste drei Ausgänge des Konverters gehen an den Dateneingang des Schieberegisters.
Der Taktgenerator geht über einige Gatter (Verzögerung) zum Takteingang des Schieberegisters.
Der Zähler zählet ja bis 6, es werden aber nur die ersten drei Daten als 1 auf das Register gegeben. Dann wird dieses dreimal leergetaktet und die Sequenz beginnt von neuem.
Lesezeichen