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

📄 singt4.vhd

📁 正弦信号发生器(可扫频)通过验证 正弦信号发生器
💻 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 + -