Die Umsetzung der Wahrheitstabelle wurde in AHDL erstellt und erfolgt in zwei Dateien. Die Datei "16_SEGM_DEKODER.TDF" beinhaltet die komplette Tabelle, während die Datei "16_SEGM_DEKODER.INC" zur Einbindung in eine praktische Anwendung dient. Beide Dateien sollten daher auch immer in den Projektordner hinzugefügt werden, wo dieser 16-Segment-Dekoder verwendet wird.
Diese beiden Dateien können im 5. Download-Bereich gedownloadet werden.
%****************************************************************************%
%* 16-Segment-Dekoder (in AHDL) *%
%* *%
%* Entwickler: Buchgeher Stefan *%
%* Entwicklungsbeginn: 11. Juni 2005 *%
%* Funktionsfaehig seit: 11. Juni 2005 *%
%* Letzte Bearbeitung: 8. Juli 2005 *%
%****************************************************************************%
%***************** Definition der Ein- und Ausgaenge ************************%
SUBDESIGN 16_SEGM_DEKODER
(
in[6..0] : INPUT;
out[15..0] : OUTPUT;
)
%***************** Beginn der Schaltungsbeschreibung ************************%
BEGIN
CASE in[] IS
WHEN 0 => out[] = B"1111111100000000"; % 0 %
WHEN 1 => out[] = B"0011000000000000"; % 1 %
WHEN 2 => out[] = B"1110111000010001"; % 2 %
WHEN 3 => out[] = B"1111110000010001"; % 3 %
WHEN 4 => out[] = B"0011000100010001"; % 4 %
WHEN 5 => out[] = B"1101110100010001"; % 5 %
...
WHEN 119 => out[] = B"0011001100001010"; % w = W %
WHEN 120 => out[] = B"0000000010101010"; % x = X %
WHEN 121 => out[] = B"0000000010100100"; % y = Y %
WHEN 122 => out[] = B"1100110000100010"; % z = Z %
WHEN 123 => out[] = B"0100100001000101"; % { %
WHEN 124 => out[] = B"0000000001000100"; % | %
WHEN 125 => out[] = B"1000010001010100"; % } %
WHEN 126 => out[] = B"0010001000010001"; % Sonderzeichen %
WHEN 127 => out[] = B"0000000000000000"; % %
END CASE;
END;
%****************************************************************************%
%* Include-Datei zum 16-Segment-Dekoder (in AHDL) *%
%* *%
%* Entwickler: Buchgeher Stefan *%
%* Entwicklungsbeginn: 11. Juni 2005 *%
%* Funktionsfaehig seit: 11. Juni 2005 *%
%* Letzte Bearbeitung: 8. Juli 2005 *%
%****************************************************************************%
FUNCTION 16_SEGM_DEKODER
(
in[6..0]
)
RETURNS
(
out[15..0]
);