display.tdf

来自「MAX+PLUSII教材及实例-西文-152页-1.7M-PDF版.zip」· TDF 代码 · 共 91 行

TDF
91
字号
SUBDESIGN display
(count_in[7..0], y[7..0], y_valid, sel, clk, toggle, reset	: INPUT;  
dis_msb_a, dis_msb_b, dis_msb_c, dis_msb_d, dis_msb_e, dis_msb_f, dis_msb_g: OUTPUT;
dis_lsb_a, dis_lsb_b, dis_lsb_c, dis_lsb_d, dis_lsb_e, dis_lsb_f, dis_lsb_g: OUTPUT;
msb_dec_pt, lsb_dec_pt: OUTPUT;)

VARIABLE
reg_y[7..0]	: DFFE;
binary_in[7..0] : NODE;
togg_reg_y[7..0] : NODE;

BEGIN
-- Decimal Pts
msb_dec_pt = VCC;
lsb_dec_pt = VCC;

reg_y[].clk = clk;
reg_y[].ena = y_valid;  
reg_y[].d = y[];
reg_y[].clrn = !reset;

CASE sel IS
	WHEN B"0" =>
		binary_in[] = count_in[];
	WHEN OTHERS =>
		binary_in[] = togg_reg_y[];
END CASE;


IF toggle THEN
	togg_reg_y[] = VCC;
ELSE
	togg_reg_y[] = reg_y[];
END IF;


TABLE -- For MSB
	binary_in[]	=>  dis_msb_a, dis_msb_b, dis_msb_c, dis_msb_d, dis_msb_e, dis_msb_f, dis_msb_g;

	B"11111111"   =>  1,1,1,1,1,1,1 ; -- blinking (dark portion)
	B"00000000"   =>  1,1,1,1,1,1,1 ; 
	B"00000001"   =>  1,1,1,1,1,1,1 ;
	B"00000010"   =>  1,1,1,1,1,1,1 ;
	B"00000011"   =>  1,1,1,1,1,1,1 ;
	B"00000100"   =>  1,1,1,1,1,1,1 ; --4
	B"00000101"   =>  1,1,1,1,1,1,1 ;
	B"00000110"   =>  1,1,1,1,1,1,1 ;
	B"00000111"   =>  1,1,1,1,1,1,1 ;
	B"00001000"   =>  1,1,1,1,1,1,1 ; --8
	B"00001001"   =>  1,1,1,1,1,1,1 ;
	B"00001010"   =>  1,0,0,1,1,1,1 ;
	B"00001011"   =>  1,0,0,1,1,1,1 ;
	B"00001100"   =>  1,0,0,1,1,1,1 ;
	B"00001101"   =>  1,0,0,1,1,1,1 ;
	B"00001110"   =>  1,0,0,1,1,1,1 ;
	B"00001111"   =>  1,0,0,1,1,1,1 ;
	B"00010000"   =>  1,0,0,1,1,1,1 ; 
END TABLE;

TABLE -- For LSB
	binary_in[]	=>  dis_lsb_a, dis_lsb_b, dis_lsb_c, dis_lsb_d, dis_lsb_e, dis_lsb_f, dis_lsb_g;

	B"11111111"   =>  1,1,1,1,1,1,1 ; -- blinking (dark portion)
	B"00000000"   =>  0,0,0,0,0,0,1 ; 
	B"00000001"   =>  1,0,0,1,1,1,1 ;
	B"00000010"   =>  0,0,1,0,0,1,0 ;
	B"00000011"   =>  0,0,0,0,1,1,0 ;
	B"00000100"   =>  1,0,0,1,1,0,0 ; --4
	B"00000101"   =>  0,1,0,0,1,0,0 ;
	B"00000110"   =>  0,1,0,0,0,0,0 ;
	B"00000111"   =>  0,0,0,1,1,1,1 ;
	B"00001000"   =>  0,0,0,0,0,0,0 ; --8
	B"00001001"   =>  0,0,0,0,1,0,0 ;
	B"00001010"   =>  0,0,0,0,0,0,1 ; -- 10
	B"00001011"   =>  1,0,0,1,1,1,1 ; -- 11
	B"00001100"   =>  0,0,1,0,0,1,0 ; -- 12
	B"00001101"   =>  0,0,0,0,1,1,0 ; -- 13
	B"00001110"   =>  1,0,0,1,1,0,0 ; -- 14
	B"00001111"   =>  0,1,0,0,1,0,0 ; -- 15
	B"00010000"   =>  0,1,0,0,0,0,0 ; -- 16
END TABLE;

END;







⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?