1、MG995舵机原理
a、这是一款由脉冲控制的舵机,周期为20ms,高脉冲部分所占多少就决定了舵机转动多少度。
b、高脉冲部分与角度关系
0.5ms-------------------0°
1ms---------------------45°
1.5ms-------------------90°
2ms----------------------135°
2.5ms-------------------180°
2、设计需求
通过按键控制舵机的转动角度,并且有数码管可判断当前转动角度。
代码部分
module pwm_cont(
clk,
rst_n,
da_in,
pwm_out
);
input clk;
input rst_n;
input [3:0] da_in;
output reg pwm_out;
parameter s=1000_000,//20ms-----T
s0=125_000,//2.5ms----180
s1=100_000,//2ms-----135
s2=75_000,//1.5ms----90
s3=50_000,//1ms-----45
s4=25_000;//0.5ms---0
reg [31:0] cnt_r;
reg [31:0] cnt;
reg [3:0] da_in_r;
always@(posedge clk or negedge rst_n)begin
if(!rst_n)
da_in_r &l