gefunden LTspice Modell CD4033

Das sind meine error log files (angehängt)
Ich warte noch auf ein feedback von Marcos Alonso.
Hat jemand Kontakt zu Mike Engelhardt ? Der könnte sicher weiterhelfen, wenn er noch gewillt ist.
Gruß, Udo
 

Anhänge

  • Screenshot (254).png
    Screenshot (254).png
    233,1 KB · Aufrufe: 4
  • Screenshot (255).png
    Screenshot (255).png
    224 KB · Aufrufe: 3
Hätte Kontakt mit Mike. Aber das kannst vergessen.
Habe ihn schonmal etwas gefragt. Er wimmelte ab; ich soll AD fragen. Und er arbeite voll am neuen Spice.

Ich glaube, die Bv Elemente machen Probleme.
Ich teste mal ohne diese.
 
Weise doch mal allen Elementen die Vdd Versorgung unter value zu. Dann erhalten alle Eingangssignale dieselben Pegel
 
Ich komme zurück auf Frank's Schaltplan, dessen Eingangssignale ich mit modifiziertem Timing versehen habe, um einen Vergleich mit dem Timing Diagramm des Datenblattes ziehen zu können.
Dabei habe ich nur den Vergleich im Zeitbereich der Digits (unterste Zeile im Datenblatt) von 0 bis 1 betrachtet. Dabei fällt das abweichende Carryout-Signal auf. Dieses müsste am Anfang noch High sein,
statt Low (wie bei Frank's Schaltplan). Ich frage mich, ob der Schaltplanbereich bei Frank (U14,U13,U39) wirklich identisch zum Datenblatt ist. Die FlipFlops sind ja wohl richtig verschaltet. Ich hoffe, ich habe alles richtig
gesehen.
Timing diagram CD4033B entspricht Frank’s Schaltplan-Port

Bereich Ziffer 0….1

Clock S_ClockCL > not shown CL

Reset > High s_Reset

Clock Inhibit >Low s_Clock_Inhibit

Lamp Test >Low s_Lamp_Test

RBI >High s_RBI

Cout(CL/10) >High Carryout > Low ?!
 
Heiligs Blechle, legt Ihr ein Tempo vor! :)
Das muß ich erst mal alles durchlesen und ausprobieren.
So, war fleissig und habe mir einen CD4033 kreiert.
Könnt ihr das mal Testen und mir Bescheid geben?
Wenn alles richtig läuft, werde ich ein Bauteil davon erstellen.
VDD = Spannung 3-15V, wie das ein CMOS IC eigentlich verträgt ^^
Super! Das Ziel ist so, wie ich es vorgeschlagen hatte, aber Dein Weg dahin ist für uns wesentlich einfacher zu verwirklichen, weil man dazu nicht den Syntax kennen muß.
Die Ziffern funktionieren; RBO und Carryout habe ich noch nicht kontrolliert.
Ich gucke mir jetzt Eure weiteren Postings an.

Edit: Die Ausgänge sollten CD40_OUT_1X-Typen sein, und die Eingänge entweder Schmitt-Trigger oder CD40_IN_1 - so wie es im Datenblatt steht.

Gruß, Frank
 
Zuletzt bearbeitet:
Ich hab's geschafft!!!
 
Ich komme zurück auf Frank's Schaltplan, dessen Eingangssignale ich mit modifiziertem Timing versehen habe, um einen Vergleich mit dem Timing Diagramm des Datenblattes ziehen zu können.
Dabei habe ich nur den Vergleich im Zeitbereich der Digits (unterste Zeile im Datenblatt) von 0 bis 1 betrachtet. Dabei fällt das abweichende Carryout-Signal auf. Dieses müsste am Anfang noch High sein,
statt Low (wie bei Frank's Schaltplan). Ich frage mich, ob der Schaltplanbereich bei Frank (U14,U13,U39) wirklich identisch zum Datenblatt ist. Die FlipFlops sind ja wohl richtig verschaltet. Ich hoffe, ich habe alles richtig
gesehen.
Das C/10 habe ich erst gerade bemerkt! Das bedeutet ja, daß der mit den Flip-Flops gebildete Zähler bis 10 zählt resp. sich bei 10 wieder zurücksetzt. Das tut er aber gar nicht, sondern er zählt nur bis 4: Clock-Zyklus ist 2 ms, Cout-Zyklus ist 8 ms.
Falls die die Flip-Flops richtig verschaltet sind, kann das nur an U8/U7 liegen. Die beiden sind IMHO korrekt; ich lasse nur den oberen nicht-invertierenden Schmitt-Trigger weg, weil der 4093 sowieso Schmitt-Trigger-Eingänge hat, ansonsten ist die Schaltung gleich.
Also gucke ich mir nochmal die Flip-Flops an.

Gruß, Frank
 
Hi Spicer,
bei mir läuft's noch nicht. Meine Anmerkungen stehen im angehängten File.
Den Schaltplan kann ich öffnen. Mit dem Symbol haperts aber.
Warum hast Du nicht dieselben Portnamen wie im Datenblatt verwendet (Reset_enable ........)
Gruß, Udo
 

Anhänge

  • CD4033_test_Udo_24_09_21.asc
    2,2 KB · Aufrufe: 3
Weil ich mein uraltes IC Datenbuch verwendet habe und nicht das Datasheet.
Wobei reset, clock usw alle ähnlich sind.
SA bis SG habe ich gemacht, damit es keine Probleme gibt mit anderen Variablen, welche oft A oder B heissen.
Warum das bei Dir nicht läuft.... hmm, werde am Abend reinschauen.
 
Der Clock_Inhibit ist der ClockEnable.
Hier ein Foto von meinem Datenbuch:
photo_2021-09-24_16-07-47.jpg

Sinus Clock hab ich nur einfachheithalber benutzt. Der Weg des geringsten Widerstandes ^^
Der "can't resolve" ist weg, sobald Du in der SpiceLine einen Wert für VDD angibst. Das habe ich ja beim Bibliothek-Post beschrieben und einen Screenshot angefügt.
Hier ein Screenshot von Deiner Test-asc:
Auswahl_002.png

Der cout (CarryOut) hat eine Funktion in den Bv Elementen und könnte ev Probleme verursachen. Darum hab ich dem CRout gesagt.
 
Zuletzt bearbeitet:
Hi Spicer,
bei mir läuft jetzt die Simulation, nach dem ich VDD in die Spice Line eingetragen habe. (Ich habe bisher immer die von 1V abweichenden Werte in den Einzelelementen eingetragen).
Da ich den CD4033 überhaupt nicht kenne und auch kein Programmierer bin (Du vielleicht ?), kann ich nur den Signalvergleich mit dem Datenblatt vornehmen.
Und da sehe ich noch Unterschiede. Z.B. bleibt dort der CA-Ausgang zeitunabhängig bei clock/10, ohne Unterbrechung durchgängig erhalten. Aber checke mal selbst die Signale im angehängten screenshot.
Da gibt es noch weitere Unterschiede zum Datenblatt.

Gruß, Udo
 

Anhänge

  • Screenshot (259).png
    Screenshot (259).png
    164,4 KB · Aufrufe: 5
  • CD4033_test_Udo_24_09_21.asc
    2,1 KB · Aufrufe: 0
Ich hab's geschafft!!!
Funktioniert FAST! :)
Zum Testen habe ich das originale Timing aus dem Datenblatt nachgebildet, ausgehend von einem Clock-Flanken-Abstand von 1 ms.
Timing-Diagramm_CD4033B_1.png
Insgesamt brauchen dann nur 48 ms simuliert zu werden, und man kann die Ausgangssignale direkt mit den Vorgaben vergleichen.
Hier sind PULSE(...)-Angaben in Klartext; ich hoffe, sie sind so universeller in Eure jeweilige Schaltungen einzufügen als ein Schaltungsfragment mir Copy&Paste.
s_CLOCK: PULSE(0 5 0 100n 100n 1m 2m)
s_RESET: PULSE(0 5 0 100n 100n 1m)
s_CLOCK_INHIBIT: PULSE(0 5 21m 100n 100n 2m)
s_LAMP_TEST: PULSE(0 5 25m 100n 100n 5m)
s_RBI: PULSE(0 5 0 100n 100n 35m)

spicer, Deine Schaltung funktioniert demnach bis zum Zeitpunkt 22 ms 100%ig!
Der Clock_Inhibit sollte bei 22 ms den Clock einmal unterdrücken, so daß der ganze weitere Ablauf um 2 ms verzögert wird. Bei dieser Simulation hat der Clock_Inhibit aber keine Wirkung,

@Udo , bei mir lief die Simulation ohne Probleme. Ich starte allerdings jede neue Simulation von Euch in einem neuen Ordner. Achso, und ich benutze LTspice IV.

Gruß, Frank
 
Mal ne blöde Frage;
Wie macht Ihr die schönen mehrzeiligen Plots?
 
Mit Show7Segment.exe CD4033_test_Udo_24_09_21.txt Start=0.001 Ende=0.05 Delay=0.5 Intervall=0.001
und der angehängten asc
 

Anhänge

  • CD4033_test_Udo_24_09_21.asc
    2,1 KB · Aufrufe: 6
  • CD4033_test_Udo_24_09_21.raw
    225,8 KB · Aufrufe: 1
Mehrzeilige Plots:
a) Run Simulation; Plotfenster geht auf, a) entweder oberhalb der Schaltung oder b) neben der Schaltung. Ich wähle meistens
b) Reiter Teil Windows; rechte Maustaste; Tile Windows vertically, jetzt steht das Plotfenster neben der Schaltung
c) 1ten Plot anwählen (Klick auf das Signal, oder Add trace > dort Signal auswählen.
d) Weitere Plots über Add plot pane > neues Fenster geht auf; jetzt weiter wie zuvor.
e) Farbe der Plots > Rechte Maustaste auf Plottitel, dann Fenster für Farbtafel aufklappen.
Ich habe noch bei den Einstellungen meine Hintergrundfarbe auf weiß gestellt (irgendwo gibt es einen Schieber für Hintergrundfarbintensität)
Farbe weiß ist besser für den Betrachter.
 

Benutzer welche diesen Thread betrachten (Mitglieder: 0, Gäste: 2)

Zurück
Oben