首页 > 其他分享 >FPGA 舵机控制

FPGA 舵机控制

时间:2022-12-27 18:56:52浏览次数:35  
标签:控制 en FPGA 舵机 money counter b0 pwm reg

module dj(clock,good0,good1,good2,good3,good4,en_duoji,money,pwm_out0,pwm_out1,pwm_out2,pwm_out3,pwm_out4); 
input clock;
input money;
input en_duoji;
input good0,good1,good2,good3,good4;
output reg pwm_out0;
output reg pwm_out1;
output reg pwm_out2;
output reg pwm_out3;
output reg pwm_out4;

reg [32:0]counter;
reg [32:0]counter1;

initial 
begin
pwm_out0='b0;
pwm_out1='b0;
pwm_out2='b0;
pwm_out3='b0;
pwm_out4='b0;
counter='d0;
counter1='d0;
end

always@(posedge clock)
begin
    if(en_duoji &&~money)
        counter=counter+1;
        if(counter==32'd5000)
            begin
            counter=0;
            counter1=counter1+1;
            end
        if(counter1==8'd1)begin
            if(good0)begin
            pwm_out0<='b1;end
            if(good1)begin
            pwm_out1<='b1;end
            if(good2)begin
            pwm_out2<='b1;end
            if(good3)begin
            pwm_out3<='b1;end
            if(good4)begin
            pwm_out4<='b1;end        
        end    
        else if(counter1==8'd20)begin
            pwm_out0<='b0;
            pwm_out1<='b0;
            pwm_out2<='b0;
            pwm_out3<='b0;
            pwm_out4<='b0;end
        else if(counter1==16'd200)
            counter1=0;
end
endmodule

clock为输入时钟信号

good0-4为选择舵机的信号

pwm_out0-1为输出的pwm信号

en_duoji和money用于控制  en_duoji为高 && money为低 舵机才会转动

 

标签:控制,en,FPGA,舵机,money,counter,b0,pwm,reg
From: https://www.cnblogs.com/lyhthebest/p/17008766.html

相关文章

  • UITabBarController 标签栏控制器-IOS开发
    在UIKit中UITabbar代表了标签栏,而UITabBarController对其进行了封装,令多个不同的视图管理与切换变的更加轻松。构建一个标签栏控制器,首先要为每个按钮准备一个单独的页......
  • 【转】30张图解: TCP 重传、滑动窗口、流量控制、拥塞控制
     原文:https://www.cnblogs.com/xiaolincoding/p/12732052.html  ---------------------------------------------------前言前一篇「硬不硬你说了算!近40张图解......
  • 【转】运输层:TCP 拥塞控制
     原文:https://www.cnblogs.com/linfangnan/p/13369615.html-----------------------------------------------------------------------------------------------------......
  • 异步编排多线程任务事务控制
    /***<p>*<B>Description:异步编排多线程任务事务控制</B>*</P>*RevisionTrail:(Date/Author/Description)*2022/12/26RyanHuangCREATE*多线程异步......
  • 3.0 任务创建-概念&任务栈&任务函数&控制块
    一、任务概念 二、任务栈2.1定义任务栈每个任务独立的,互不干扰的,每个任务分配独立的栈空间,通常是一个预定义的全局数组或动态分布的内存空间(RAM里)例:定义2个任务栈......
  • Kubernetes StatefulSet 控制器(二十一)
    前面我们学习了Deployment和ReplicaSet两种资源对象得使用,在实际使用的过程中,Deployment并不能编排所有类型的应用,对无状态服务编排是非常容易的,但是对于有状态服务就......
  • Kubernetes DaemonSet 控制器(二十二)
    通过该控制器的名称我们可以看出它的用法:Daemon,就是用来部署守护进程的,DaemonSet用于在每个Kubernetes节点中将守护进程的副本作为后台进程运行,说白了就是在每个节点部署......
  • 玩转OpenHarmony智能家居:如何实现树莓派“碰一碰”设备控制
    一、简介“碰一碰”设备控制,依托NFC短距通信协议,通过碰一碰的交互方式,将OpenAtomOpenHarmony(简称“OpenHarmony”)标准系统设备和全场景设备连接起来,解决了应用与设备之间接......
  • Kubernetes ReplicaSet 控制器(十九)
    前面我们一起学习了Pod的原理和一些基本使用,但是在实际使用的时候并不会直接使用Pod,而是会使用各种控制器来满足我们的需求,Kubernetes中运行了一系列控制器来确保集群......
  • Kubernetes Deployment控制器(二十)
    前面我们学习了ReplicaSet控制器,了解到该控制器是用来维护集群中运行的Pod数量的,但是往往在实际操作的时候,我们反而不会去直接使用RS,而是会使用更上层的控制器,比如我......