Hallo Ich hätte eine Frage zur Beschaltung des Dual 4Bit counters. Und zwar wenn ich bsp. bis 125 zählen möchte, so muss ich ja die Ausgänge des ersten Counters mit dem clock des zweiten Counters verbinden. Nun, muss ich nun ein AND Gatter verwenden um die Richtige Combination an den zweiten Counter weiter zu geben, oder geht das auch einfacher? Bei den Ausgängen des zweiten Counters muss ich dann ja auch wieder mit einem AND Gatter arbeiten um die Richtige Zahl aus zu geben? Oder mach ich das zu kompliziert? Ziel ist es eine Frequenz von einem 4Mhz Oszillator zu teilen. Danke
:
Verschoben durch Moderator
Otto J. schrieb: > Nun, muss ich nun ein AND Gatter verwenden um die Richtige Combination > an den zweiten Counter weiter zu geben, oder geht das auch einfacher? Hallo, Ands brauchst du schon, aber um beim Zählerstand 125 einen Reset zu erzeugen. Die Ausgänge sind richtig so wie sie sind, wenn du von 0 bis 124 zählen willst. Gruss Reinhard
Otto J. schrieb: >Nun, muss ich nun ein AND Gatter verwenden um die Richtige >Combination an den zweiten Counter weiter zu geben, oder geht >das auch einfacher? Zur Kaskadierung verbindet man den höchstwertigen Ausgang der ersten Stufe mit dem Zähleingang der zweiten Stufe. >Bei den Ausgängen des zweiten Counters muss ich dann ja auch wieder >mit einem AND Gatter arbeiten um die Richtige Zahl aus zu geben? >Oder mach ich das zu kompliziert? Den Zählerzustand, wo er rücksetzen und von vorne beginnen soll, muß man schon mit zusätzlichen Logikgattern detektieren, wenn es nicht exakt eine Zweierpotenz sein soll. >Ziel ist es eine Frequenz von einem 4Mhz Oszillator zu teilen. Da mußt du mal ins Datenblatt schauen, welche Frequenzen dieser Baustein verträgt. Der LS-Baustein ist mit 25MHz angegeben, das kommt bei HC etwa auch hin. Aber bitte nachschauen!
Ja das schon, aber ich brauche das geteilte Ausgangssignal welches dann auf einen OP zur Verstärkung geht. Sprich da ist keine Auswertintelligenz dahinter D.h. ich brauche von den 4MHz nur den 125ten Teil. Also muss ich die counter resetten und geleichzeitig das Signal für den OP ausgeben. Erreiche ich dadurch einen DutyCycle von ca. 50% wie vom Oszillator?
Otto J. schrieb: >D.h. ich brauche von den 4MHz nur den 125ten Teil. Also muss >ich die counter resetten und geleichzeitig das Signal für den >OP ausgeben. Der Counter muß genau bei 125 asynchron resettet werden, d.h., er erreicht die 125 nur für eine verschwindend geringe Zeitdauer. Da ja die Null mitgezählt wird, zählt er dann richtig. >Erreiche ich dadurch einen DutyCycle von ca. 50% wie vom Oszillator? Nein, das wird dann etwas schwieriger. Den Duty-Cycle von 50% würdest du erreichen, wenn die Teilerrate genau auf einer Zweierpotenz liegt. Ansonsten nimmt man das erwünschte Signal vom höchstwertigen bit, es hat hier leider keine 50%.
@Otto J.: Hast du eigentlich keinen Digitalsimulator auf dem PC? Damit könntest du das alles mal problemlos testen. Allerdings möchte ich etwas Einarbeitung da nicht verschweigen. Es lohnt sich aber, wenn man öfters mit solchen Dingen zu tun hat.
Hm das hatte ich befürchtet. Kann man den kurzen High Pegel des Reset irgendwie mit z.b. einem Latch zwischenspeichern oder mit einem anderen Logik IC damit ich auf einen DC von ca. 50% komme bei der Teilung? Ich möcht mit möglichst wenig Bauteilen auskommen. Hat jemand eine Idee?
Nein einen Digitalsimulator habe ich nicht. Habe mich bis jetzt haupsächlich mit Analog Design befasst und noch keine Logik Gatter verwendet. Daher ist es ein wenig Neuland für mich. Gibts da eine Freeware?
4MHz / 125 = 32000Hz. Dicht daneben gibt es Uhrenquarze mit 32768Hz - die werden gern aber ungenau als 32KHz Quarze bezeichnet. Wenn es diese Frequenz auch tut wird es einfacher.
Otto J. schrieb: > Ich möcht mit möglichst wenig > Bauteilen auskommen. Kannst Du C programmieren? Dann nimm einen ATtiny13 und programmiere einen PWM-Ausgang auf 62/125. Die Eingangsfrequenz darf max 20MHz betragen. Peter
Fortsetzung: Und andersrum gibt es 4,096MHz Quarze, die durch 128 geteilt 32000Hz ergeben. Auch dies ist deutlich einfacher. Daher also: Was soll das eigentlich werden?
Können schon, möchte ich aber in diesem Fall aus vers. Gründen vermeiden. Die Uhrenquarze kenn ich, jedoch habe ich mit meinem jetzigen 32khz Quarz ein problem mit dem zuverlässigen anschwingen. Ich hab schon einen anderen Typ bestellt zu Vergleichszwecken. Jedoch möchte ich noch eine Alternative im Ärmel halten.
A. K. schrieb: > Fortsetzung: Und andersrum gibt es 4,096MHz Quarze, die durch 128 > > geteilt 32000Hz ergeben. Auch dies ist deutlich einfacher. > > > > Daher also: Was soll das eigentlich werden? Hm damit könnte ich das Problem mit dem Reset umgehen, richtig? Denn dann beginnt der Counter eh von vorn?! Den 4MHz Oszillator hatte ich gerade hier zur Hand, deshalb. Aber den 4.096MHz zu bestellen, wäre ja auch kein Prob.
Bei 4 MHz: Der Duty Cycle hätte bei einem Teiler von 128 genau 50%. Du teilst durch 124, dann liegen an Bit6 51,6 : 48,4 Prozent Taktverhältnis an. Also wenn Du nicht wirklich mit den Takt-HÄLFTEN etwas genaues anfangen willst, dürfte das ausreichend genau sein. Mfg.
Otto J. schrieb: > Hm damit könnte ich das Problem mit dem Reset umgehen, richtig? Denn > dann beginnt der Counter eh von vorn?! Sozusagen. Der vorletzte Ausgang vom '393 teilt ohne weitere Beschaltung durch 128. Das lässt sich auch mittels 74HC4060 als kombinierter Oszillator/Teiler realisieren. Aber wenn es dir egal ist, ob es 32768Hz sind (Uhrenquarz) oder 32000Hz (Thread), dann sind vielleicht auch 4MHz/128=31250Hz vertretbar.
Nein es müssen schon genau 32kHz mit ungefähr DC 50% sein. Aber deine Idee mit dem 74HC4060 gefällt mir sehr gut!!! Denke damit bekomme ich ein genaues Ergebnis hin.:)
>Aber den 4.096MHz zu bestellen, wäre ja auch kein Prob.
Bei glatter Teilerrate mit Zweierpotenzen gehen dann auch Quarze mit
2,048MHz oder 1,024MHz.
Ja da hast du Recht. Das würde mir eine noch genauere Ausgangsfrequenz liefern wenn ich den Quarz verkleinere.
Otto J. schrieb: > Das würde mir eine noch genauere Ausgangsfrequenz > liefern wenn ich den Quarz verkleinere. Wieso?
>Ja da hast du Recht. Das würde mir eine noch genauere >Ausgangsfrequenz liefern wenn ich den Quarz verkleinere. Nein. Es senkt nur den Energieverbrauch. Frequenz und Energieverbrauch stehen bei CMOS etwa im proportionalen Verhältnis.
Peter Dannegger schrieb: > Kannst Du C programmieren? Und das von dir, Peter? :-) > Dann nimm einen ATtiny13 und programmiere einen PWM-Ausgang auf 62/125. > Die Eingangsfrequenz darf max 20MHz betragen. Die paar Befehle dafür kann man ja schon fast mit der Hand als Maschinencode tippen. ;-) Das größte Problem dabei für Otto wäre vermutlich, den ATtiny13 zu programmieren, zumal ja auch die Fuse für die clock source geändert werden muss. Falls das Ganze ein Einzelstück werden soll, kann ich mir aber vorstellen, dass sich hier im Forum jemand findet, der das gegen Aufwandserstattung für Otto vielleicht sogar mal in einen ATtiny13 programmiert. Vermutlich wäre das in der Tat die Lösung mit dem geringsten Bauteilaufwand. Da sich der AVR dabei sowieso langweilt, könnte man sogar noch die PWM abwechselnd bei jeder Periode zwischen 62/125 und 63/125 umschalten, dann wäre der kumulative duty cycle wirklich 50 %. :-)
Nein soll kein Einzelstück werden. Ja das mit dem Energieverbrauch ist schon auch klar. Ich meinte, das. wenn z.b. 100ppm Genauigkeit bei beiden Quarzen angegeben ist, ist der mit der geringeren Frequenz genauer.
Otto J. schrieb: > wenn z.b. 100ppm Genauigkeit bei beiden Quarzen angegeben ist, ist der > mit der geringeren Frequenz genauer. Nein. Denkfehler. 100ppm sind 0.01% egal bei welcher Frequenz.
Moment, absolut gesehen sind 0.01% bei einem 4MHz Quarz doch mehr wie bei einem 2MHz. Nämlich genau doppelt soviel "Herz". Wenn ich also einen mit geringerer Frequenz nehme habe ich bei gleicher Toleranz bei dem die kleiner Absolute Abweichung!? Oder bin ich jetzt total bekloppt:/
Otto J. schrieb: > Moment, absolut gesehen sind 0.01% bei einem 4MHz Quarz doch mehr wie > bei einem 2MHz. Nämlich genau doppelt soviel "Herz". Wenn ich also einen > mit geringerer Frequenz nehme habe ich bei gleicher Toleranz bei dem die > kleiner Absolute Abweichung!? Immer noch Denkfehler. 100ppm bei 4MHz sind +/-400Hz. 100ppm bei 1MHz sind +/-100Hz. 100ppm bei 32000Hz sind +/-3,2Hz. 4MHz+/-400Hz / 125 = 32000+/-3,2Hz. 1MHz+/-100Hz / (125/4) = 32000+/-3,2Hz.
Otto J. schrieb: > Oder bin ich jetzt total bekloppt:/ Das nicht, aber du hast einen Denkfehler. ;-) Klar ist die absolute Abweichung beim 4-MHz-Quarz dann größer, aber musst du den ja weiter herunter teilen, um auf deine Zielfrequenz zu kommen. Damit teilst du auch die Abweichung weiter herunter. Der Gesamtfehler bleibt der gleiche. > Nein soll kein Einzelstück werden. Könntest du denn nun einen AVR programmieren oder nicht? Wenn es außer auf minimale Anzahl von Bauteilen noch auf kleinsten Flächenverbrauch ankommt, könntest du einen ATtiny10 benutzen. :-) (SOT-23-6 als Gehäuse) Allerdings besitzt der genauso wie der ATtiny13 leider keinen eigenen Quarzoszillator, der kleinste AVR, der sowas hat, ist ein ATtiny25. Damit brauchst du für die Gesamt- lösung: 1 Quarz, die üblichen Lastkondensatoren für den Quarz, 1 ATtiny25 (im SO-8- oder MLF-20-Gehäuse) und einen 100-nF-Kondensator zum Abblocken der Betriebsspannung.
Ihr habt wie immer Recht:) Ich Seggl! Wenn das Ergebnis mit dem neuen Quarz mich nicht zufrieden stellt, dann wäre ein Atiny evtl. noch eine elegante Variante. Der Aufwand zum prog. hält sich ja in Grenzen;) Thx für den Support.
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.