菜单
  

    该程序中有三个输入端,分别是clock_48M、key[2..0]、pwm_in,其中clock_48M是接系统时钟端;key[2..0]是开关控制输入端,其中开关1控制电机的加速,开关2控制电机的启动或停止,开关3控制电机的正反转;pwm_in是PWM产生的波形在这一模块的输入,接在脉宽调制模块的pwm_out端。该程序还有五个输出端,即pwm_en、duty_cycle[3..0]、motora、motorb、led[4..0],其中pwm_en是输出使能信号,以便控制电机的启动和停止,接在脉宽调制模块的使能端,从而达到控制pwm_out的波形信号,进而控制本模块的motora、motorb输出信号,也就控制了电机的启动和停止;duty_cycle[3..0]是由开关1直接控制的,当开关1打开时,duty_cycle的值依次加1,从而控制脉宽调制模块的输出占空比;motora、motorb是输出信号电平信号加载到直流电机两端的控制端口;led[4..0]是输出显示。
    (4)仿真波形及分析
     
    图4.5  电机控制仿真波形
    Fig.4.5 Motor control simulation waveform
    由仿真波形可以看出,在给定pwm_in固定输入的情况下,当开关3打开、开关1和开关2关闭时,duty_cycle不变,且pwm_en输出为0;当开关1和开关3打开、开关2关闭时,duty_cycle依次增加,pwm_en输出仍为0;当开关1、开关2、开关3同时打开时,此时,duty_cycle依次增加,pwm_en输出为1。因为设计满足了开关1控制电机的加速,开关2控制电机的启动或停止,开关3控制电机的正反转。
    4.4.3  消抖模块
    (1)生成的功能模块图
     
    图4.6  消抖功能模块图
    Fig.4.6 Debounce function module chart
    (2)消抖模块的VHDL编程
    LIBRARY IEEE;
    USE IEEE.STD_LOGIC_1164.ALL;
    USE IEEE.STD_LOGIC_Arith.ALL;
    USE IEEE.STD_LOGIC_Unsigned.ALL;
    ENTITY filter_200us IS
    PORT(
    clk,in_bit:    IN    STD_LOGIC;
    out_bit:    OUT    STD_LOGIC
    );
    END;
    ARCHITECTURE one OF    filter_200us IS
    SIGNAL cnt:STD_LOGIC_VECTOR(19 DOWNTO 0);
    SIGNAL out_bit_r:STD_LOGIC;
    BEGIN
    out_bit<=out_bit_r;
    PROCESS(clk)
    BEGIN
        IF RISING_EDGE(clk) THEN
            IF    in_bit ='1'    THEN    --一旦出现高电平即复位计数器
                cnt    <=X"00000";        --清0计数器
                out_bit_r <='1';    --输出置1
            ELSE
                IF cnt>=9600    THEN    --clk=48M 约为200us
                    out_bit_r<='0';    --低电平宽度大于200us时输出低电平.
                ELSE    --低电平宽度小于200us时输出高电平.
                    cnt<=cnt+1;    --计数器累加
                    out_bit_r<='1';
                END IF;
            END IF;
        END IF;
    END PROCESS;
    END;
    (3)VHDL程序分析
    该程序主要实现消抖功能,原因是红外光电电路测得的转速脉冲信号没经过整形,所以存在很多干扰脉冲,如果直接对其计数,则测得的结果不正确,因此在本设计中加入了消抖模块filter_200us。
  1. 上一篇:基于FPGA的线阵CCD驱动设计+源代码
  2. 下一篇:视频深度图像的产生和编码+文献综述
  1. 基于多指标决策的通信网...

  2. VHDL+EDA波形发生器设计

  3. 基于过期CSI的多天线中继选择系统设计与仿真

  4. SPCE061A基于DDS的正弦信号发生器设计+PCB电路图

  5. STM32基于WIFI通信的数字温湿度监测系统设计

  6. 基于粒子群算法的软件可靠性模型参数估计

  7. 基于串口通信的抢答器仿真设计+电路图+程序

  8. 高警觉工作人群的元情绪...

  9. NFC协议物理层的软件实现+文献综述

  10. 上市公司股权结构对经营绩效的影响研究

  11. 浅析中国古代宗法制度

  12. 中国传统元素在游戏角色...

  13. 现代简约美式风格在室内家装中的运用

  14. 江苏省某高中学生体质现状的调查研究

  15. g-C3N4光催化剂的制备和光催化性能研究

  16. 巴金《激流三部曲》高觉新的悲剧命运

  17. C++最短路径算法研究和程序设计

  

About

优尔论文网手机版...

主页:http://www.youerw.com

关闭返回