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

📄 clk_div.vhd

📁 cpld
💻 VHD
字号:
-- WARNING: Do NOT edit the input and output ports in this file in a text
-- editor if you plan to continue editing the block that represents it in
-- the Block Editor! File corruption is VERY likely to occur.

-- Copyright (C) 1991-2004 Altera Corporation
-- Any  megafunction  design,  and related netlist (encrypted  or  decrypted),
-- support information,  device programming or simulation file,  and any other
-- associated  documentation or information  provided by  Altera  or a partner
-- under  Altera's   Megafunction   Partnership   Program  may  be  used  only
-- to program  PLD  devices (but not masked  PLD  devices) from  Altera.   Any
-- other  use  of such  megafunction  design,  netlist,  support  information,
-- device programming or simulation file,  or any other  related documentation
-- or information  is prohibited  for  any  other purpose,  including, but not
-- limited to  modification,  reverse engineering,  de-compiling, or use  with
-- any other  silicon devices,  unless such use is  explicitly  licensed under
-- a separate agreement with  Altera  or a megafunction partner.  Title to the
-- intellectual property,  including patents,  copyrights,  trademarks,  trade
-- secrets,  or maskworks,  embodied in any such megafunction design, netlist,
-- support  information,  device programming or simulation file,  or any other
-- related documentation or information provided by  Altera  or a megafunction
-- partner, remains with Altera, the megafunction partner, or their respective
-- licensors. No other licenses, including any licenses needed under any third
-- party's intellectual property, are provided herein.


-- Generated by Quartus II Version 4.2 (Build Build 156 11/29/2004)
-- Created on Sun May 29 22:35:14 2005

LIBRARY ieee;
USE ieee.std_logic_1164.all;


--  Entity Declaration

ENTITY CLK_DIV IS
	-- {{ALTERA_IO_BEGIN}} DO NOT REMOVE THIS LINE!
	PORT
	(
		CPLD_CLKIN : IN STD_LOGIC;
		PB_RS : IN STD_LOGIC;
		Key_CLK : OUT STD_LOGIC

	);
	-- {{ALTERA_IO_END}} DO NOT REMOVE THIS LINE!
	
END CLK_DIV;


--  Architecture Body

ARCHITECTURE CLK_DIV_architecture OF CLK_DIV IS
SIGNAL  CLK:STD_LOGIC;
CONSTANT DIV_NUM:INTEGER:=160;
--400=>脉冲宽度20uS
--300=>脉冲宽度15uS
--200=>脉冲宽度10uS
--100=>脉冲宽度5uS
--60=>脉冲宽度3uS
--40=>脉冲宽度2uS


BEGIN
   
Make_CLK:
PROCESS (PB_RS,CPLD_CLKIN)
	
	VARIABLE CNT1 :INTEGER RANGE 0 TO 310;
	
    BEGIN
	-- Toggle txclk every 160 counts, which divides the clock by 320
	IF PB_RS='0' THEN
	
	    CLK <= '0' ;
	  
	    CNT1 := 0 ;
	  
	
	ELSIF rising_edge(CPLD_CLKIN) THEN
	
	      IF (CNT1 = DIV_NUM) THEN 
	       
	         CNT1:=0;
	         CLK <= NOT CLK; 
	 
	     END IF;
	
	     CNT1 := CNT1 + 1; -- Use the exemplar_1164 "+" on std_logic_vector
 
         
	END IF;

 END PROCESS  Make_CLK;
  
   Key_CLK<=CLK;

END CLK_DIV_architecture;

⌨️ 快捷键说明

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