欢迎来到天天文库
浏览记录
ID:18965539
大小:154.00 KB
页数:71页
时间:2018-09-27
《用vhdl设计数字系统实例》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、用VHDL设计数字系统实例 目 录 例1矩形波发生器2例2三角波发生器15例3数字频率计22例4数字钟32例5交通灯控制器43例6LED字符显示器52例7LED跑马灯55例8过河游戏59例9拔河游戏69例10键盘输入显示器82 1 附图1.1矩形波发生器总体框图 4.源程序及注释 (1)上层模块 library ieee; use ieee.std_logic_1164.all; 2 use ieee.std_logic_signed.all; use ieee.std_logic_unsigne
2、d.all; entity cheif is port(clk_1m : in std_logic; --时钟信号,1 MHz。 k1 : in std_logic; --调节频率的开关信号。 k2 : in std_logic; --调节占空比的开关信号。 k3 : in std_logic; --换挡开关信号。 sel : out std_logic_vector(5 downto 0);--数码管片选信号。 d : out std_logic_vector(6 downto
3、0);--数码管的驱动信号。 f : out std_logic_vector(7 downto 0)); --输出给DAC0832的8位数字信号。 end cheif ; architecture aa of cheif is signal mode_mid : integer range 0 to 1; signal clk_125_mid : std_logic; signal s1 : std_logic; signal s2 : std_logic; signa
4、l s3 : std_logic; signal fs_mid : std_logic; signal statusf_mid : integer range 0 to 9; signal statush_mid : integer range 0 to 8; component keyin --调用防抖动模块。 port(k : in std_logic; kout : buffer std_logic; clk_125 : in std_logic); end compon
5、ent; component fp --调用分频及控制模块。 port(clk_1m : in std_logic; s1 : in std_logic; s3 : in std_logic; statusf : out integer range 0 to 9; mode : out integer range 0 to 1; fs : out std_logic ); end component; co
6、mponent output --调用信号输出模块。 port(fs : in std_logic; s2 : in std_logic; statush : out integer range 0 to 8; f : out std_logic_vector(7 downto 0) ); 3 end component; component display --调用分频及显示模块。 port(statusf : in integer range 0 to 9; statush :
7、in integer range 0 to 8; mode : in integer range 0 to 1; clk_1m : in std_logic; clk_125 : out std_logic; sel : out std_logic_vector(5 downto 0); d : out std_logic_vector(6 downto 0) ); end component; begin u1 : keyin port map (k1,s1,clk_125_mid);
8、u2 : keyin p
此文档下载收益归作者所有