首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

[求助]急需用VHDL语言设计数字钟

[求助]急需用VHDL语言设计数字钟

那位老兄给点建议设!!!


 

阿道法法打法打
在属于比较基本的东东啊,在baidu google上一搜就能搜到例程,一般的教科书上也会有介绍的.

library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.std_logic_arith.all;
use IEEE.std_logic_signed.all;

entity myclock is
port (
clk_1khz : in std_logic;
reset : in std_logic;
second : out std_logic_vector (5 downto 0);
minite : out std_logic_vector (5 downto 0);
hour : out std_logic_vector (3 downto 0)
);
end myclock;

architecture rtl of myclock is

begin
process (clk_1khz, reset)

variable ms : std_logic_vector(9 downto 0);
variable mysecond, myminite : std_logic_vector(5 downto 0);
variable myhour : std_logic_vector(3 downto 0);

begin

if reset = '1' then
mysecond := "000000";
myminite := "000000";
myhour := "0000";
ms := (others =>'0');
elsif clk_1khz'event and clk_1khz = '1' then
-- count ms to 1000
ms :=ms+1;
if ms = "1111101000" then
ms := (others => '0');
mysecond := mysecond+1;
if mysecond = "111100" then
mysecond := "000000";
myminite := myminite + 1;
if myminite = "111100" then
myminite := "000000";
myhour := myhour + 1;
if myhour = "1100" then
myhour := "0000";
end if;
end if;
end if;
end if;
end if;

second <= mysecond;
minite <= myminite;
hour <= myhour;
end process;
end architecture;
51 c8051f(f020,f040) msp430 arm(2410,2510) fpga(xc3s4000) dsp(5116 dm642) keilc vc++ matlab linux protel Ten_layerPCB mpegx h.26x Rscode Turbocode ofdm VideoBroadcasting ldpc_code(now!)
返回列表