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

📄 speaker.vhd

📁 语音通信电路完整的程序设计。里面是所有的源文件都经本人测试可以用
💻 VHD
字号:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY Speaker IS
    PORT (  clk1   : IN STD_LOGIC;
             Tone1 : IN INTEGER RANGE 0 TO 16#7FF#;
             SpkS  : OUT STD_LOGIC  );
END;
ARCHITECTURE one OF Speaker IS
    SIGNAL   PreCLK , FullSpkS : STD_LOGIC;
    BEGIN
 DivideCLK : PROCESS(clk1)
        VARIABLE Count4 : INTEGER RANGE 0 TO 15;
    BEGIN
       PreCLK <= '0';    --将CLK进 11分频,PreCLK为C L 11K 6分频
       IF Count4 > 11  THEN  PreCLK <= '1';  Count4 := 0;
       ELSIF clk1'EVENT AND clk1='1' THEN  Count4 := Count4 + 1;            
       END IF;
    END PROCESS;
GenSpkS : PROCESS(PreCLK, Tone1)
        VARIABLE Count11 : INTEGER RANGE 0 TO 16#7FF#;
               BEGIN            -- 11位可预置计数器
      IF PreCLK'EVENT AND PreCLK = '1' THEN
        IF  Count11=16#7FF# THEN  
           Count11 := Tone1; FullSpkS <= '1';                
           ELSE Count11:=Count11 + 1; FullSpkS <= '0';                
        END IF;
      END IF;
    END PROCESS;
    DelaySpkS : PROCESS(FullSpkS) 
        VARIABLE Count2 : STD_LOGIC;
            BEGIN 
        IF FullSpkS'EVENT AND FullSpkS = '1' THEN Count2 := NOT Count2;
            IF Count2 = '1' THEN  SpkS <= '1';
                            ELSE     SpkS <= '0';
            END IF;
        END IF;
    END PROCESS;
END;

⌨️ 快捷键说明

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