曙海教育集團(tuán)論壇FPGA專區(qū)FPGA初中級(jí) → FPGA 時(shí)鐘問(wèn)題


  共有9019人關(guān)注過(guò)本帖樹(shù)形打印

主題:FPGA 時(shí)鐘問(wèn)題

美女呀,離線,留言給我吧!
wangxinxin
  1樓 個(gè)性首頁(yè) | 博客 | 信息 | 搜索 | 郵箱 | 主頁(yè) | UC


加好友 發(fā)短信
等級(jí):青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊(cè):2010-11-12 11:08:23
FPGA 時(shí)鐘問(wèn)題  發(fā)帖心情 Post By:2010-12-19 14:00:46

剛學(xué)不久~

我要做24H製的時(shí)鐘~但我一直DEBUG~一直用不出來(lái)~

Xilinx ISE 8.2i軟體~

請(qǐng)會(huì)的人幫我看一下哪出錯(cuò)了~謝



library IEEE;

use IEEE.STD_LOGIC_1164.ALL;

use IEEE.STD_LOGIC_ARITH.ALL;

use IEEE.STD_LOGIC_UNSIGNED.ALL;


---- Uncomment the following library declaration if instantiating

---- any Xilinx primitives in this code.

--library UNISIM;

--use UNISIM.VComponents.all;


entity CLOCK_00_60 is

    Port ( CLK : in  STD_LOGIC;

           RESET : in  STD_LOGIC;

           ENABLE : out  STD_LOGIC_VECTOR (6 downto 0);

           SEGMENT : out  STD_LOGIC_VECTOR (6 downto 0));

end CLOCK_00_60;


architecture Behavioral of CLOCK_00_60 is

signal SCAN_CLK :STD_LOGIC;

signal COUNT_CLK :STD_LOGIC;

signal DECODE_BCD :STD_LOGIC_VECTOR (3 downto 0);

signal mineable :STD_LOGIC;

signal hreable :STD_LOGIC;

signal POSITION:STD_LOGIC_VECTOR (6 downto 0);

signal DIVIDER:STD_LOGIC_VECTOR (29 downto 1);

signal COUNT_BCD:STD_LOGIC_VECTOR (23 downto 0);


begin

-------------------------------------------------

process (CLK,RESET)

begin

if RESET = '0' then

 DIVIDER <= ( others => '0');

elsif CLK' event and CLK = '1' then

 DIVIDER <= DIVIDER + 1 ;

end if;

end process;

COUNT_CLK<=DIVIDER(24);

SCAN_CLK<=DIVIDER(15);

------------------------------------------------秒

process(RESET,SCAN_CLK)

begin

if RESET = '0' then

 COUNT_BCD <= ( others => '0');

elsif SCAN_CLK' event and SCAN_CLK = '1' then

 if   COUNT_BCD(3 downto 0)= x"9" then

    COUNT_BCD(3 downto 0)<= x"0";

    COUNT_BCD(7 downto 4)<= COUNT_BCD(7 downto 4)+1;

 else

   COUNT_BCD(3 downto 0)<= COUNT_BCD(3 downto 0)+1;

 end if;

end if;

end process;

mineable <= '1' when COUNT_BCD(7 downto 0) = x"59" else '0';

----------------------------------------------------------分


process(RESET,SCAN_CLK)

begin

if RESET = '0' then

 COUNT_BCD <= ( others => '0');

 if mineable = '1' then

elsif SCAN_CLK' event and SCAN_CLK = '1' then

 if   COUNT_BCD(11 downto 8)= x"9" then

    COUNT_BCD(11 downto 8)<= x"0";

    COUNT_BCD(15 downto 12)<= COUNT_BCD(15 downto 12)+1;

 else

   COUNT_BCD(11 downto 8)<= COUNT_BCD(11 downto 8)+1;

 end if;

end if;

end if;

end process;

hreable <= '1' when COUNT_BCD(15 downto 8) = x"59" else '0';

-------------------------------------------------------------時(shí)

process(RESET,SCAN_CLK)

begin

if RESET = '0' then

 COUNT_BCD <= ( others => '0');

  if mineable = '1' and hreable = '1' then

elsif SCAN_CLK' event and SCAN_CLK = '1' then

 if   COUNT_BCD(19 downto 16)= x"9" then

    COUNT_BCD(19 downto 16)<= x"0";

    COUNT_BCD(23 downto 20)<= COUNT_BCD(23 downto 20)+1;

  if   COUNT_BCD(19 downto 16)= x"2" then

   COUNT_BCD(23 downto 20)<= x"0";

 else

   COUNT_BCD(19 downto 16)<= COUNT_BCD(19 downto 16)+1;

  end if;

 end if;

  end if;

end if;

end process;



process(RESET,SCAN_CLK)

begin

if RESET = '0' then

 POSITION <= "1111110";

elsif SCAN_CLK' event and SCAN_CLK = '1' then

 POSITION<="111111"&POSITION(0);

end if;

end process;

ENABLE<=POSITION;

-----------------------------------------------------------

process(POSITION,SCAN_CLK)

begin

case POSITION is

 when "1111110" => DECODE_BCD <=COUNT_BCD(3 downto 0);    --秒

 when "1111101" => DECODE_BCD <=COUNT_BCD(7 downto 4);    --秒

 when "1111011" => DECODE_BCD <=COUNT_BCD(11 downto 8);   --分

 when "1110111" => DECODE_BCD <=COUNT_BCD(15 downto 12);   --分

   when "1101111" => DECODE_BCD <=COUNT_BCD(19 downto 16);   --時(shí)

   when "1011111" => DECODE_BCD <=COUNT_BCD(23 downto 20);   --時(shí)

 when others => null;

end case;

end process;

 

with DECODE_BCD Select

SEGMENT<= "1000000" when X"0",

  "1111001" when X"1",

  "0100100" when X"2",

  "0110000" when X"3",

  "0011001" when X"4",

  "0010010" when X"5",

  "0000010" when X"6",

  "1111000" when X"7",

  "0000000" when X"8",

  "0010000" when X"9",

  "1111111" when others;


end Behavioral;

支持(0中立(0反對(duì)(0單帖管理 | 引用 | 回復(fù) 回到頂部
總數(shù) 20 1 2 下一頁(yè)

返回版面帖子列表

FPGA 時(shí)鐘問(wèn)題








簽名
主站蜘蛛池模板: 在线国产你懂的| 成人性生活免费看| 午夜香港三级在线观看网| XX性欧美肥妇精品久久久久久| 欧美黑人巨大videos精品| 国产精品一区二区在线观看| 久久久久久久综合狠狠综合| 男人肌肌捅女人肌肌视频| 国产欧美日韩视频在线观看| 中文字幕日韩精品麻豆系列| 毛片高清视频在线看免费观看| 国产妇乱子伦视频免费| www视频在线观看免费| 李莫愁好紧好湿好滑| 午夜高清视频在线观看| 拍拍拍无挡视频免费观看1000 | 波多野结衣伦理片在线观看| 国产成人国产在线观看入口| а天堂中文在线官网在线| 欧洲熟妇色xxxx欧美老妇多毛| 又粗又硬又黄又爽的免费视频| 制服丝袜怡红院| 成人在线免费看| 亚洲中文字幕久久精品无码2021| 羞羞网站免费观看| 国产精品免费看| 七仙女欲春2一级裸片免费观看 | 欧美日韩国产精品自在自线| 国产三级精品三级在专区 | japanese日本护士xxxx10一16 | 国产a级黄色毛片| 3d性欧美动漫精品xxxx| 成人网在线免费观看| 亚洲乱码一区二区三区在线观看| 精品日韩亚洲AV无码一区二区三区| 国产精品9999久久久久| www.波多野| 日本三级午夜理伦三级三| 亚洲日韩久久综合中文字幕| 美女尿口18以下禁止观看免费| 国产激情久久久久影院小草|