mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Frequenzteiler aus d Flipp Flopp


Autor: Jo (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ich muß einen Frequenzteiler der die Frequenz durch 10 teilt aus 
D-Flip-Flops bauen.
Hab das mal gemacht und Simuliert! Leider stimmt es nicht! Weiß jemand 
wo der Fehler liegt? oder stimmt mein Simulationsprogramm nicht?

Autor: Friedrich Weber (opafritz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das D Flip Flop ist da ungünstig, muss ein Zähler sein, der auf 10 
zählen kann. Kann aus D-Flip Flop bestehen. dann müßte man bei Erreichen 
der Zahl 10 einen Übertrag machen und zurückführen zum Löschen.
Viel schneller ist man, wenn man ein Zähler IC z.B. MC14018 oder 7490 
o.ä.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du machst dir aus den Flip-Flops einen 4-Bit Zähler.
Die Ausgänge werden, gegenenenfalls über Negierer, auf ein 
4-Eingangs-UND zusammengefasst, sodass das UND eine 1 ausgibt, sobal 
1010 (also: dezimal 10) erreicht ist. Mit diesem Signal, werden die Flip 
Flips resettet und dieses Signal ist gleichzeitig deine durch 10 
geteilte Frequenz

Autor: Jo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich weiß dass es da viel bessere möglichkeiten gibt! Wenn mein Prof. in 
der Klausur so was aber fragt bringt mir andere Lösungen nichts!

Ich hab ja hier ein Teiler gebaut der durch 16 teilt! Sommit müsste ich 
wenn Q 2 und Q4=0 ein Siganl auf die Rücksetzeingänge legen. Oder? (Habs 
schon versucht funktioniert nicht)

Gruß

Autor: Gast Posti (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Eigendlich, bei 4 Frequenz-Halbierern, müsste das Ausgangssignal bei 
1/16tel (oder 10h) sein, und nicht bei 8 liegen.

Bei Teilung durch nicht 2-er Potenzen müsste man mit einem Zähler (z.B. 
BCD) arbeiten und bei Q0-Q3=0101 (1 2er, 1 8er) das Ausgangs-Signal 
toggeln sowie den Zähler auf 0 setzen.

Wie heißt das Programm?
Denke, damit habe ich auch schon 'gespielt'.

MfG

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jo wrote:
> Ich weiß dass es da viel bessere möglichkeiten gibt! Wenn mein Prof. in
> der Klausur so was aber fragt bringt mir andere Lösungen nichts!
>
> Ich hab ja hier ein Teiler gebaut der durch 16 teilt! Sommit müsste ich
> wenn Q 2 und Q4=0 ein Siganl auf die Rücksetzeingänge legen.

Nicht nur wenn Q2 und Q4 null ist.
Es gibt viele Zahlen bei denen das der Fall ist. zb 0000 oder 0010

Du musst auch noch die anderen beiden, Q1 und Q3 berücksichtigen! Die 
müssen 1 sein

Autor: Matthias Lipinsky (lippy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>der auf 10
>zählen kann. Kann aus D-Flip Flop bestehen. dann müßte man bei Erreichen
>der Zahl 10 einen Übertrag machen und zurückführen zum Löschen.

Ich würde das so nicht machen. WEnn die 10 als Reset benutzt wird, zählt 
der Zähler eigentlich (kurz) bis 11. Ich würde zu einem synchronem 
Design 0..9 raten. Man kann dann zB das MSB (Wertigkeit 8) als 
/10-Ausgangssignal (mit 25% Tastverhältnis) nehmen...

Autor: Jo (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Habe nun immer noch einen Fehler (stehe gerade auf dem Schlauch)

PS. Ich weiß das ich dass mit den Negierungen ungeschickt gelöst hab! 
Aber den Sinn erfüllt es :-) (hoffe ich zumindest)

@Posti Das Programm heißt Digital Simulator und ist Freeware!
Danke für eure Hilfe
Gruß Jo

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jo wrote:
> Habe nun immer noch einen Fehler (stehe gerade auf dem Schlauch)

Wir haben alle mitsammen einen Fehler gemacht.
3 Flip Flops reichen. Denn nach dem ersten Flip Flip ist die Frequenz ja 
schon durch 2 geteilt.
Die Einerstelle der Rücksetzlogik ist das Signal selbst.

Autor: Helmut -dc3yc (dc3yc)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Huch, hab ich vor 30 Jahren in Digitaltechnik nicht aufgepasst? Wenn ich 
durch 10 teilen will, brauche ich immer noch 4 Flipflops. Bei dreien 
komme ich maximal bis Faktor 8. Da ändert auch der Herr Moderator nichts 
;-)
Schau dir doch mal das Innenleben eines 7490 an. Das ist ein asynchroner 
Dezimalzähler.

Servus,
Helmut.

Autor: Jo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wiso 3?
Nach dem ersten FF durch 2 geteilt, nach dem zweiten FF durch 4 geteilt, 
nach dem dritten FF durch 8 geteilt, und nach dem viertenFF durch 16 
geteilt!
Das heißt ich benötige 4 FF !
Ich glaub ich schlaf mal ne Nacht darüber! :-)

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jo wrote:
> Wiso 3?

Hab ich jetzt einen Knopf im Hirn?

> Nach dem ersten FF durch 2 geteilt, nach dem zweiten FF durch 4 geteilt,
> nach dem dritten FF durch 8 geteilt,

die Eingangsleitung ist Bit 0
Ausgang Q1          ist Bit 1
Ausgang Q2              Bit 2
Ausgang Q3              Bit 3

Der Reset muss erfolgen, wenn 1010 erreicht ist. 4 Stellen, aber nur 3 
Flip Flops, weil ja die Eingangsleitung schon Bit 0 ist

> und nach dem viertenFF durch 16

Eben. Aber ich muss ja gar nicht durch 16 teilen. Das ist schon viel zu 
viel.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn du einen stink normalen n-Bit Zähler nimmst, dann hat Bit 0 des 
Zählers bereits die halbe Frequenz des Eingangssignals. Der Zähler muss 
daher gar nicht bis 10 zählen, sondern nur bis 5. Und dafür reichen 3 
Bits des Zählers.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Helmut -dc3yc wrote:
> Huch, hab ich vor 30 Jahren in Digitaltechnik nicht aufgepasst? Wenn ich
> durch 10 teilen will, brauche ich immer noch 4 Flipflops.

Du brauchst 4 Flipflops wenn du bis 10 zählen willst. Du brauchst sie 
aber nicht, wenn du durch 10 teilen willst.

> Schau dir doch mal das Innenleben eines 7490 an. Das ist ein asynchroner
> Dezimalzähler.

Überleg dir nochmal wie der Zusammenhang zwischen der Frequenz des 
Eingangssignals und der ersten Zählstufe ist. Für jeweils 2 steigende 
Flanken des Eingangssignals wechselt Bit 0 einmal seine Polarität. was 
gleichbedeutend mit einer DIvision der Frequenz des Signals durch 2 ist.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oder hab ich mich da jetzt irgendwo total verrant?

Autor: Matthias Lipinsky (lippy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Oder hab ich mich da jetzt irgendwo total verrant?

Naja, unter Beachtung dieser Aufgabe:
>>Ich muß einen Frequenzteiler der die Frequenz durch 10 teilt ... bauen.
                                   ^^^^^^^^^^^^
Würde ich sagen:

Ja, es werden vier FF gebraucht.

Ein Teiler durch 10 benötigt ungefähr 3,322 FlipFlops ;-)

Autor: peter-neu-ulm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was solls' denn für ein Zähler sein ??? da fallen mir erst mal auf die 
Schnelle folgende Typen ein :

-ein als Johnson-Zähler geschaltetes Schieberegister
-ein asynchron arbeitender Zähler mit Nullsetzung bei der 1010
-ein synchron arbeitender Zähler mit Verküpfungen an den 
Vorbereitungseingängen der FF's
-ein synchron arbeitender Zähler mit asynchron arbeitendem 
parallel-loading
bei der Zahl ...
-ein in BCD-Folge arbeitender Zähler oder in anderer Folge?
-ein aus einem FF und mod5-Zähler zusammengeschalteter Zähler, wie der 
7490 ?
-solls ein aufwärts oder abwärts oder umschaltbar zählender Zähler sein 
?
-soll er Borrow oder Carry oder beides abgeben ?

rück mal raus, welchen Typ Du haben willst

Ich will ja nicht unken, aber
Alle diese Typen sollte man bei einer Prüfung beherrschen, oder nicht ?

Autor: peter-neu-ulm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Entschuldige den Ausbruch,
aber, am einfachsten, schau Dir mal den Aufbau eines 7490 an.

Der hat erstmal ein FF, das durch zwei teilt.
Dann  folgt , aus drei FF's eine aufwärts zählende Kette, die beim Stand 
von 101, durch ein Verknüpfungsgatter wieder auf Null gesetzt wird.

Bei deinem Entwurf fehlt noch die Verknüpfung, die die "5" erkennt und 
die drei (oder alle vier ) FF's auf Null setzt.

Ob der Simulator diese Arbeitweise wirklich nachbilden kann, ist 
garnicht so sicher, aber probiers mal.

Autor: Jo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>>Was solls' denn für ein Zähler sein ??? da fallen mir erst mal auf die
>>Schnelle folgende Typen ein :

Es soll nur indrirekt ein Zähler sein.-->Es soll ein Frequenzteiler 
durch 10 sein !Verwenden darf ich nur d-FFs und zusätzliche Gatter!
(Siehe ersten Beitrag:-)
>>Ich will ja nicht unken, aber
>>Alle diese Typen sollte man bei einer Prüfung beherrschen, oder nicht ?
Die Prüfung beinhaltet auch noch Analogtechnik!Man muß ja Prioritäten 
setzen!:-)
Zudem weißt du ja gar nicht wann Prüfung ist!

Aber wenn du ne Lösung hast kannst natürlich gerne helfen!

Gruß Jo

Autor: peter-neu-ulm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dann  hat die ganze Sache wohl mit der Laufzeit zu tun.

Denkbar wäre eine Lösung: Q-nicht  wird ja normalerweise zum toggeln auf 
D geführt.

Wenn in dieser Rückführung nun eine Laufzeit von 5 Tein liegt, bekommt 
der D- Eingang erst nach fünf Takten das umgekehrte Signal und kippt 
erst dann .

Versuchs mal damit .


Mich hat irgendwie genervt, dass die Antworten sich immer weiter von der 
Frage entfernten, am Ende hab ich selbst nicht mehr die Frage vor Augen 
gehabt, deswegen war ich weit  off-topic.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ui. Da hab ich mich aber ordentlich verrant :-)

Es ist schon spät und ich brauchte das Geld

Autor: Matthias Lipinsky (lippy)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hm..

Kann das mal jemand prüfen?

QD ist der Ausgang

Autor: peter-neu-ulm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eine weitere Lösung wäre ein Ringzähler, der Johnson-Zähler. Diese 
Struktur hat der CMOS- Baustein 4017.

fünf FF's gemeinsam am Takt. vier FF's hintereinandergeschaltet mit Q 
auf das nächste D. Das letzte Q-nicht wird auf das D des ersten FF's 
gelegt.

Wenn nicht gerade die Folge 10101 in den FF's weitergeschoben wird, 
teilt dieser Zähler mod 10. Das erreicht man durch Starten mit dem 
Zählerstand 0000, beim Einschalten.

Autor: Jo (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Bekomme bei deiner Schaltung keine Ausgangssignaländerung. (B/ hast du 
gar nicht angechlossen)
Kannst ja nochmals überptüfen ob mir ein Fehler unterlaufen ist.

Gruß Jo
PS   Ich hoffe die Simulation kann das Frequenz-teilerproblem überhaupt 
richtig berechnen! Hab ja keine Ahnung wie die Simulation programmiert 
ist!

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ganz früher (TM) hat das bei mir mit D-FF so ausgesehen.

Bei Stand 1010 sind beide Eingänge des NAND H und damit der Ausgang L -> 
Reset auf 0000.

In der Praxis klappt das nicht 100% zuverlässig, weil durch 
unterschiedliche Laufzeiten evtl. nicht alle FF zurücksetzen und damit L 
am Reset zu früf wieder auf H wechselt. Der Kondensator verlängert den 
L-Impuls passend...

Das Ausgangssignal ist nicht symmetrisch, wenn es das sein soll, muß man 
aus den ersten 3 FF einen 5:1 teiler basteln (NAND wird bei 110 aktiv 
und setzt zurück) und dahinter den 4. FF als normalen Teiler hängen.

Gruß aus Berlin
Michael

Autor: Jo (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Anhang: Frequenzteiler der durch 10 teilt!

Der dargestellte Schaltplan müsste nach meiner Meinung nach stimmen. 
Leider stimmt das Ergebnis des Peglschreibers nicht.
Liegt der Fehler in der Schaltung oder im Simulationsprogramm?

Gruß Jo

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nochmal. Du musst alle 4 Flip-Flops in den Vergleich einbeziehen.
Scroll mal nach oben. Ich hab noch in der Nacht eine Lösung gebastelt.

Autor: HildeK (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
peter-neu-ulm schrieb gestern schon:
>... aber, am einfachsten, schau Dir mal den Aufbau eines 7490 an.
Hatte ich auch zuerst gedacht - der verwendet aber JK-FF.

Karl heinz Buchegger schrieb:
>Scroll mal nach oben. Ich hab noch in der Nacht eine Lösung gebastelt.
Ist das nicht eine gefährliche Variante - asynchrones Design, verknüpft 
auf die Resets? Ohne es mir diese Variante durchüberlegt zu haben - das 
geht doch bestimmt wegen irgendwelcher Spikes an den Gattern schief ...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.