[PIC®/AVR®/dsPIC®产品]

PIC16F13145—CLB实现SG90舵机驱动波形

[复制链接]
1662|3
手机看帖
扫描二维码
随时随地手机跟帖
JackTang1994|  楼主 | 2024-12-1 19:40 | 显示全部楼层 |阅读模式
本帖最后由 JackTang1994 于 2024-12-1 19:42 编辑

#每日话题# #技术资源#
我们可以利用PIC16F13145—CLB模块产生特定的波形,比如:SG90舵机的20ms周期的脉冲波形。
21313674c4a2465c4c.png
CLB-SG90舵机波形生成Verilog代码
module SG90_Driver(CLK,in2,in1,in0,out_pin);
  input CLK;
  input in2,in1,in0;
  output reg out_pin;
  reg[5:0] counter;
  
  initial //初始化相关引脚及变量
    begin
      counter <= 1; // 从1开始计数脉冲数
      out_pin <= 0; // 初始化状态输出引脚为低电平
    end
   //循环执行的代码块
  always @(posedge CLK)
    begin
      if(counter == 39) // 39个0.5ms脉冲即20ms
        begin
          counter <= 1; // 重新从1开始计数
          out_pin <= 0;
        end
        // 小于或者达到设定的脉冲数量
        else if(counter <= {in2,in1,in0})
        begin
          out_pin <= 1;
          counter <= counter + 1;
        end
      else // 20ms剩余的时间
        begin
          out_pin <= 0;
          counter <= counter + 1;
        end
    end
endmodule

逻辑分析仪抓取到的CLB产生的波形
50706674c48e0601ca.png

详细的操作过程,请查看原文链接:https://mp.weixin.qq.com/s/SLNTV5P1x3ZTfDVZkgnQ8g?token=1567580201&lang=zh_CN


使用特权

评论回复
lcczg| | 2024-12-2 14:11 | 显示全部楼层
厉害,学习了。   

使用特权

评论回复
guijial511| | 2024-12-2 19:04 | 显示全部楼层
PIC单片机现在用的人还多吗?

使用特权

评论回复
gejigeji521| | 2024-12-29 14:25 | 显示全部楼层
这使用的什么原理啊,是什么个思路?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

29

主题

62

帖子

0

粉丝