Roll the dice!
MODULE wuerfel "Autor: Lunetikk "Zweck: elektronischer Würfel TITLE 'wuerfel' Declarations DFF2,DFF1,DFF0 node istype 'buffer,reg'; run node; "Ausgänge für die 7 Segmentanzeige a,b,c,d,e,f,g pin 4,3,6,7,8,9,10 istype 'buffer,com'; S pin 19 istype 'buffer,com'; takt pin 11; Equations "Takt an alle FFs DFF0.clk = takt; DFF1.clk = takt; DFF2.clk = takt; Truth_Table "BDC-Zähler Tabelle mit Stop-Schalter ([DFF2, DFF1, DFF0, S] :> [DFF2, DFF1, DFF0]) [0,0,0,0]:>[0,0,1]; "Zustand 0 [0,0,0,1]:>[0,0,0]; [0,0,1,0]:>[0,1,0]; "Zustand 1 [0,0,1,1]:>[0,0,1]; [0,1,0,0]:>[0,1,1]; "Zustand 2 [0,1,0,1]:>[0,1,0]; [0,1,1,0]:>[1,0,0]; "Zustand 3 [0,1,1,1]:>[0,1,1]; [1,0,0,0]:>[1,0,1]; "Zustand 4 [1,0,0,1]:>[1,0,0]; [1,0,1,0]:>[1,1,0]; "Zustand 5 [1,0,1,1]:>[1,0,1]; [1,1,0,0]:>[0,0,1]; "Zustand 6 [1,1,0,1]:>[1,1,0]; [1,1,1,0]:>[0,0,1]; "Zustand 7 [1,1,1,1]:>[1,1,1]; Truth_Table "Codeumsetzer 7-Segment Anzeige ([DFF2.q, DFF1.q, DFF0.q] -> [a,b,c,d,e,f,g]) [0,0,0] -> [1,1,1,1,1,1,0]; //0 [0,0,1] -> [0,1,1,0,0,0,0]; //1 [0,1,0] -> [1,1,0,1,1,0,1]; //2 [0,1,1] -> [1,1,1,1,0,0,1]; //3 [1,0,0] -> [0,1,1,0,0,1,1]; //4 [1,0,1] -> [1,0,1,1,0,1,1]; //5 [1,1,0] -> [1,0,1,1,1,1,1]; //6 [1,1,1] -> [1,1,1,0,0,0,0]; //7 END
Discussion