📄 singt4.vhd
字号:
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity singt4 is
port( clk:in std_logic;
cout: out std_logic; -- 用来作为频率计显示的clk
dout: out integer range 255 downto 0 );
end singt4;
architecture behav of singt4 is
signal q: integer range 127 downto 0;
signal d: integer range 255 downto 0;
begin
cnt:process(clk)
begin
if clk'event and clk='1' then
if q<127 then q<=q+1;cout<='0';
elsif q=127 then q<=0;cout<='1';
end if;
end if;
end process cnt;
dataout:process(q)
begin
case q is
when 0=> d<=255; when 1=> d<=255; when 2=> d<=254; when 3=> d<=253;
when 4=> d<=252; when 5=> d<=251; when 6=> d<=249; when 7=> d<=247;
when 8=> d<=245; when 9=> d<=242; when 10=> d<=240; when 11=> d<=236;
when 12=> d<=233; when 13=> d<=230; when 14=> d<=226; when 15=> d<=221;
when 16=> d<=217; when 17=> d<=212; when 18=> d<=208; when 19=> d<=203;
when 20=> d<=198; when 21=> d<=192; when 22=> d<=187; when 23=> d<=181;
when 24=> d<=175; when 25=> d<=169; when 26=> d<=163; when 27=> d<=157;
when 28=> d<=151; when 29=> d<=145; when 30=> d<=138; when 31=> d<=132;
when 32=> d<=126; when 33=> d<=120; when 34=> d<=113; when 35=> d<=107;
when 36=> d<=101; when 37=> d<=95; when 38=> d<=89; when 39=> d<=83;
when 40=> d<=77; when 41=> d<=71; when 42=> d<=66; when 43=> d<=60;
when 44=> d<=55; when 45=> d<=50; when 46=> d<=45; when 47=> d<=40;
when 48=> d<=36; when 49=> d<=31; when 50=> d<=27; when 51=> d<=24;
when 52=> d<=20; when 53=> d<=17; when 54=> d<=14; when 55=> d<=11;
when 56=> d<=9; when 57=> d<=6; when 58=> d<=5; when 59=> d<=3;
when 60=> d<=2; when 61=> d<=1; when 62=> d<=0; when 63=> d<=0;
--------------------------------------------------------------------------
when 64=> d<=0; when 65=> d<=0; when 66=> d<=1; when 67=> d<=2;
when 68=> d<=3; when 69=> d<=5; when 70=> d<=7; when 71=> d<=9;
when 72=> d<=11; when 73=> d<=14; when 74=> d<=17; when 75=> d<=20;
when 76=> d<=24; when 77=> d<=27; when 78=> d<=31; when 79=> d<=36;
when 80=> d<=40; when 81=> d<=45; when 82=> d<=50; when 83=> d<=55;
when 84=> d<=60; when 85=> d<=66; when 86=> d<=71; when 87=> d<=77;
when 88=> d<=83; when 89=> d<=89; when 90=> d<=95; when 91=> d<=101;
when 92=> d<=107; when 93=> d<=113; when 94=> d<=120; when 95=> d<=126;
when 96=> d<=132; when 97=> d<=138; when 98=> d<=145; when 99=> d<=151;
when 100=> d<=157; when 101=> d<=163; when 102=> d<=169; when 103=> d<=175;
when 104=> d<=181; when 105=> d<=187; when 106=> d<=192; when 107=> d<=198;
when 108=> d<=203; when 109=> d<=208; when 110=> d<=212; when 111=> d<=217;
when 112=> d<=221; when 113=> d<=226; when 114=> d<=230; when 115=> d<=233;
when 116=> d<=236; when 117=> d<=240; when 118=> d<=242; when 119=> d<=245;
when 120=> d<=247; when 121=> d<=249; when 122=> d<=251; when 123=> d<=252;
when 124=> d<=253; when 125=> d<=254; when 126=> d<=255; when 127=> d<=255;
when others=>null;
end case;
end process dataout;
dout<=d;
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -