创客百科

姿势共享,有节操无门槛参与的创客百科,创客动力之源 \ (^_^) /

用户工具

站点工具


arduino:libraries:boxz_initmotor

initMotor()

说明

初始化电机驱动,建议放在Setup()中,主要包含两个操作:

  • 自动判断驱动板类型(仅限initMotor()函数)
  • 设置输出端口
  • 输出停止命令

语法

initMotor();
自动判断电机驱动板的类型并初始化配置。电机驱动板需是硬件支持列表中已有的型号。


initMotor(int type);
如果自动识别失败,可以使用此函数输入驱动板类型。数据为16进制整数。


initMotor(int inA, int inB, int pwmA, int pwmB);
如果是其他类型的4线制驱动板,可以使用此函数。


initMotor(int in1, int in2, int in3, int in4, int pwmA, int pwmB);
如果是其他类型的6线制驱动板,可以使用此函数。

参数

type:16进制整数,例如0xDF表示DFROBOT品牌。目前支持0xDF(代表DFROBOT),0xED(代表SEEED)
inA:数字或模拟端口的管脚,4线模式输入控制端口A
inB:数字或模拟端口的管脚,4线模式输入控制端口B
in1:数字或模拟端口的管脚,6线模式输入控制端口1
in2:数字或模拟端口的管脚,6线模式输入控制端口2
in3:数字或模拟端口的管脚,6线模式输入控制端口3
in4:数字或模拟端口的管脚,6线模式输入控制端口4
pwmA:数字PWM管脚,4线或6线模式输入PWM端口A
pwmA:数字PWM管脚,4线或6线模式输入PWM端口B


关于PWM管脚说明:在大多数arduino板(ATmega168或ATmega328),只有引脚3,5,6,9,10和11可以实现该功能。

返回

逻辑值 initMotor() 和 initMotor(int type)在初始化成功后返回逻辑1,失败则返回逻辑0,以便判断是否初始化正确。其他格式initMotor()函数无返回值

例子:

//  DCMotorControl
//  Demo function:The application method to drive the 2x DC motor.
//  Author:Leo.Zhu
//  Date:23 July, 2013
//  Hardware support list
//  1. DFRobot L298 Shield 2A
//  2. DFRobot L293 Shield 1A
 
#include "BOXZ.h"
 
int pin_inA = 4;
int pin_inB = 7;
int pin_pwmA = 5;
int pin_pwmB = 6;
int speedA_value = 150;
int speedB_value = 150;
 
void setup()
{
  boxz.initMotor(pin_inA,pin_inB,pin_pwmA,pin_pwmB);  //四线制模式,适用于DFRobot或同系列的电机驱动
}
 
void loop()
{
  //Simple control
  boxz.goForward();
  delay(2000);
  boxz.stop();
  delay(3000);
}

返回BOXZ目录

本页面的其他翻译:
arduino/libraries/boxz_initmotor.txt · 最后更改: 2016/12/25 22:15 (外部编辑)