⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 charlib8_8.vhd

📁 VHDL基础的编程源代码
💻 VHD
字号:
--/*****************************************************************************-- * 源文件:	charlib8_8.vhd-- * 模块:   	8*8点字符库-- * 版权:-- *         	Copyright(C) 北京联华众科科技有限公司-- *						www.lianhua-zhongke.com.cn-- * 版本:  	Version 1.0-- * -- * 功能说明:-- *		   	将ASCII码数据转换为8*8点阵显示数据-- *-- * 参数说明:-- *	       	输出-- *			row0 - 点阵的 0 行数据-- *			row1 - 点阵的 1 行数据-- *			row2 - 点阵的 2 行数据-- *			row3 - 点阵的 3 行数据-- *			row4 - 点阵的 4 行数据-- *			row5 - 点阵的 5 行数据-- *			row6 - 点阵的 6 行数据-- *			row7 - 点阵的 7 行数据-- *-- *			输入-- *			ext_char_data - 准备显示的ASCII码-- *			ext_char_index - 准备显示的ASCII码的内部索引-- *			mode - 确定上面两个输入中哪一个有效-- *				   1 - ext_char_data 有效-- *				   0 - ext_char_index 有效-- *			reset - 复位信号,低电平有效-- *-- *			参数-- *			element_count - 本字库中存放在字符个数,在按内部索引检索显示时作-- *							为内部索引的边界 -- *-- * 变更记录: -- *         2006.01.28, 新建-- *-- *****************************************************************************/LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.std_logic_arith.all;USE ieee.std_logic_unsigned.all;ENTITY charlib8_8 IS	GENERIC	(		element_count : INTEGER:= 222	);		PORT	(		row0 : OUT STD_LOGIC_VECTOR(7 downto 0);		row1 : OUT STD_LOGIC_VECTOR(7 downto 0);		row2 : OUT STD_LOGIC_VECTOR(7 downto 0);		row3 : OUT STD_LOGIC_VECTOR(7 downto 0);		row4 : OUT STD_LOGIC_VECTOR(7 downto 0);		row5 : OUT STD_LOGIC_VECTOR(7 downto 0);		row6 : OUT STD_LOGIC_VECTOR(7 downto 0);		row7 : OUT STD_LOGIC_VECTOR(7 downto 0);		ext_char_index : IN STD_LOGIC_VECTOR(3 downto 0);		mode : IN STD_LOGIC;		reset : IN STD_LOGIC	);END charlib8_8;ARCHITECTURE charlib8_8_architecture OF charlib8_8 IS	BEGIN		PROCESS(ext_char_index, mode, reset)	BEGIN				IF (reset = '0') THEN			row0 <= "11111111";			row1 <= "11111111";			row2 <= "11111111";			row3 <= "11111111";			row4 <= "11111111";			row5 <= "11111111";			row6 <= "11111111";			row7 <= "11111111";		ELSE			IF (mode = '1') THEN				row0 <= "11111111";				row1 <= "11111111";				row2 <= "11111111";				row3 <= "11111111";				row4 <= "11111111";				row5 <= "11111111";				row6 <= "11111111";				row7 <= "11111111";			ELSE							CASE ext_char_index IS					WHEN X"0" => row0 <= "00111000";row1 <= "01000100";row2 <= "01000100";row3 <= "01000100";row4 <= "01000100";row5 <= "01000100";row6 <= "01000100";row7 <= "00111000";					WHEN X"1" => row0 <= "00110000";row1 <= "00010000";row2 <= "00010000";row3 <= "00010000";row4 <= "00010000";row5 <= "00010000";row6 <= "00010000";row7 <= "00111000";					WHEN X"2" => row0 <= "00111000";row1 <= "01000100";row2 <= "00000100";row3 <= "00000100";row4 <= "00001000";row5 <= "00010000";row6 <= "00100010";row7 <= "01111100";--						WHEN X"3" => --row0 <= "00111000";--row1 <= "01000100";--row2 <= "00000100";--row3 <= "00011000";--row4 <= "00000100";--row5 <= "00000100";--row6 <= "00000100";--row7 <= "01111000";--					WHEN X"04" => --row0 <= "00001000";--row1 <= "00011000";--row2 <= "00101000";--row3 <= "00101000";--row4 <= "01001000";--row5 <= "01111100";--row6 <= "00001000";--row7 <= "00001000";--					WHEN X"05" => --row0 <= "00011100";--row1 <= "00100000";--row2 <= "00110000";--row3 <= "00001000";--row4 <= "00000100";--row5 <= "00000100";--row6 <= "00000100";--row7 <= "01111000";--					WHEN X"06" => --row0 <= "00001100";--row1 <= "00110000";--row2 <= "00100000";--row3 <= "01011000";--row4 <= "01100100";--row5 <= "01000100";--row6 <= "01000100";--row7 <= "00111000";--					WHEN X"07" => --row0 <= "00111100";--row1 <= "01000100";--row2 <= "00000100";--row3 <= "00001000";--row4 <= "00001000";--row5 <= "00001000";--row6 <= "00010000";--row7 <= "00010000";--					WHEN X"08" => --row0 <= "00111000";--row1 <= "01000100";--row2 <= "01000100";--row3 <= "00111000";--row4 <= "00101000";--row5 <= "01000100";--row6 <= "01000100";--row7 <= "00111000";--					WHEN X"09" => --row0 <= "00111000";--row1 <= "01000100";--row2 <= "01000100";--row3 <= "01000100";--row4 <= "00111100";--row5 <= "00001000";--row6 <= "00011000";--row7 <= "01100000";					WHEN OTHERS =>row0 <= "11111111";row1 <= "11111111";row2 <= "11111111";row3 <= "11111111";row4 <= "11111111";row5 <= "11111111";row6 <= "11111111";row7 <= "11111111";				END CASE;			END IF;					END IF;			END PROCESS;END charlib8_8_architecture;

⌨️ 快捷键说明

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