欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

8位数控分频器的设计_eda设计数控分频器(实现2~16)分频

发布时间:2025/5/22 编程问答 41 豆豆
生活随笔 收集整理的这篇文章主要介绍了 8位数控分频器的设计_eda设计数控分频器(实现2~16)分频 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

2019-01-10 回答

我这个能实现4~64分频只能是偶数!!!要给分哦。。。。

library ieee;

use ieee.std_logic_1164.all;

entity shukong is

port(t:in std_logic_vector(6 downto 0);

clk:in std_logic;

q:out std_logic);

end ;

architecture one of shukong is

signal shu:integer range 0 to 100;

signal k:std_logic;

begin

process(clk)

begin

if clk'event and clk='1' then

shu<=shu+1;

case t is

when "0000100"=>if shu<1 then q<=k;else shu<=0;k<=not k;end if;

when "0000110"=>if shu<2 then q<=k;else shu<=0;k<=not k;end if;

when "0001000"=>if shu<3 then q<=k;else shu<=0;k<=not k;end if;

when "0001010"=>if shu<4 then q<=k;else shu<=0;k<=not k;end if;

when "0001100"=>if shu<5 then q<=k;else shu<=0;k<=not k;end if;

when "0001110"=>if shu<6 then q<=k;else shu<=0;k<=not k;end if;

when "0010000"=>if shu<7 then q<=k;else shu<=0;k<=not k;end if;

when "0010010"=>if shu<8 then q<=k;else shu<=0;k<=not k;end if;

when "0010100"=>if shu<9 then q<=k;else shu<=0;k<=not k;end if;

when "0010110"=>if shu<10 then q<=k;else shu<=0;k<=not k;end if;

when "0011000"=>if shu<11 then q<=k;else shu<=0;k<=not k;end if;

when "0011010"=>if shu<12 then q<=k;else shu<=0;k<=not k;end if;

when "0011100"=>if shu<13 then q<=k;else shu<=0;k<=not k;end if;

when "0011110"=>if shu<14 then q<=k;else shu<=0;k<=not k;end if;

when "0100000"=>if shu<15 then q<=k;else shu<=0;k<=not k;end if;

when "0100010"=>if shu<16 then q<=k;else shu<=0;k<=not k;end if;

when "0100100"=>if shu<17 then q<=k;else shu<=0;k<=not k;end if;

when "0100110"=>if shu<18 then q<=k;else shu<=0;k<=not k;end if;

when "0101000"=>if shu<19 then q<=k;else shu<=0;k<=not k;end if;

when "0101010"=>if shu<20 then q<=k;else shu<=0;k<=not k;end if;

when "0101100"=>if shu<21 then q<=k;else shu<=0;k<=not k;end if;

when "0101110"=>if shu<22 then q<=k;else shu<=0;k<=not k;end if;

when "0110000"=>if shu<23 then q<=k;else shu<=0;k<=not k;end if;

when "0110010"=>if shu<24 then q<=k;else shu<=0;k<=not k;end if;

when "0110100"=>if shu<25 then q<=k;else shu<=0;k<=not k;end if;

when "0110110"=>if shu<16 then q<=k;else shu<=0;k<=not k;end if;

when "0111000"=>if shu<27 then q<=k;else shu<=0;k<=not k;end if;

when "0111010"=>if shu<28 then q<=k;else shu<=0;k<=not k;end if;

when "0111100"=>if shu<29 then q<=k;else shu<=0;k<=not k;end if;

when "0111110"=>if shu<30 then q<=k;else shu<=0;k<=not k;end if;

when "1000000"=>if shu<31 then q<=k;else shu<=0;k<=not k;end if;

when others =>null;

end case;

end if;

end process;

end ;

总结

以上是生活随笔为你收集整理的8位数控分频器的设计_eda设计数控分频器(实现2~16)分频的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。