001
17.06.2021, 17:40 Uhr
Bert
|
Dein Zähler funktioniert doch ganz gut:

Ich habe die Formeln etwas umgestellt: [pre] /** Inputs **/ Pin 1 = clk ; /* counter clock */ Pin 5 = clr_1 ; /* counter Reset 1 */ Pin 6 = clr_2 ; /* counter Reset 2 */
/* Outputs */ PIN 15 = Q0; PIN 16 = Q1; PIN 17 = Q2;
/* Logic Equations */ Q2.d = ((!Q2 & Q1 & Q0) # (Q2 & !(Q1 & Q0))); Q1.d = (!Q1 & Q0 # Q1 & !Q0); Q0.d = !Q0;
Q0.ar = clr_1 & clr_2; Q1.ar = clr_1 & clr_2; Q2.ar = clr_1 & clr_2; [/pre] Der Zähler wird zurückgesetzt, wenn clr_1 und clr_2 gleichzeitig high sind. Den asynchronen Reset (.ar) scheint es nur beim 22V10 zu geben. Das Ganze müßte nochmal auf einem echten Chip getestet werden.
Die Taktflanke kann man sich beim GAL offensichtlich nicht raussuchen, weil die CLK-Leitung vor dem Inverter abgegriffen wird:

Grüße, Bert -- Viele Grüße, Bert |