极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1589|回复: 1

舵机控制代码

[复制链接]
发表于 2019-10-29 11:02:03 来自手机 | 显示全部楼层 |阅读模式
在网上找到一段代码
#baiduhaokan://home/index/?channel=recommend&auto_play_index=0&tab=guide&tag=guide&vid=12635403459367280689&source=box_clist-0-matrix&land_vid=12635403459367280689&ext=%7B%22show_id%22%3A%2215722326782393231%22%7D&ctime=1572232684#
回复

使用道具 举报

 楼主| 发表于 2019-10-29 11:05:42 来自手机 | 显示全部楼层
:57 | 只看该作者 |只看大图  1,实验材料: ESPDUINO板1个,Arduino 2 Motor && 16 Servo Drive Shield 扩展板1个,电池盒及2节3.7V干电池,舵机1个; 2,硬件连接: 将扩展板对应插在ESPDUINO板上,装上2节电池的电池盒电源正负极分别接扩展板的vs和GND(右边两个接口),用一个短路块(跳线帽插在靠近扩展板电源的VIN和VS上面(4个管脚的中间两个)),舵机线对应插在扩展板的16路舵机管脚(黄色线为信号线,接PWM,红色线接VS,绿色线接GND); 3,实验原理: 通过扩展板上面集成的芯片输出PWM波控制舵机正反转,从而实现对舵机的控制; 4,例程源码: /***************************************************   示例:16伺服舵机。   效果:伺服向前转180度,然后向转180度....   by DOIT. http://www.doit.am ****************************************************/ #include <Wire.h> #include <ServoDriver.h>  ServoDriver pwm = ServoDriver();  #define SERVOMIN  102 // 这是“最小”脉冲长度计数(满分4096)0度 #define SERVOMAX  512 // 这是“最大的”脉冲长度计数(满分4096)180度  // 重要提示:舵机号# uint8_t servonum = 0;  void setup()  {   pwm.begin();   pwm.setPWMFreq(50);  // 舵机在50Hz运行 }  void loop()  {   // 在一个时间驱动一台舵机   for (uint16_t pulselen = SERVOMIN; pulselen < SERVOMAX; pulselen++)    {     pwm.setPWM(servonum, 0, pulselen);   }   delay(2000);   for (uint16_t pulselen = SERVOMAX; pulselen > SERVOMIN; pulselen--)    {     pwm.setPWM(servonum, 0, pulselen);   }   delay(2000); }
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊 ( 浙ICP备09023225号 )

GMT+8, 2020-7-16 12:54 , Processed in 0.048209 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表