/**
- @par Copyright ©: 2010-2019, Shenzhen Yahboom Tech
- @file advance.c
- @author Danny
- @version V1.0
- @date 2017.07.25
- @brief 小车前进实验
- @details
- @par History 见如下说明
*/
//定义引脚
int Left_motor_go = 8; //左电机前进 AIN1
int Left_motor_back = 7; //左电机后退 AIN2
int Right_motor_go = 2; //右电机前进 BIN1
int Right_motor_back = 4; //右电机后退 BIN2
int Left_motor_pwm = 6; //左电机控速 PWMA
int Right_motor_pwm = 5; //右电机控速 PWMB
/**
-
Function setup
-
@author Danny
-
@date 2017.07.25
-
@brief 初始化配置
-
@param[in] void
-
@retval void
-
@par History 无
/
void setup()
{
// 初始化电机驱动IO口为输出方式
pinMode(Left_motor_go, OUTPUT);
pinMode(Left_motor_back, OUTPUT);
pinMode(Right_motor_go, OUTPUT);
pinMode(Right_motor_back, OUTPUT);
}
/* -
Function run
-
@author Danny
-
@date 2017.07.25
-
@brief 小车前进
-
@param[in] time延时时间
-
@param[out] void
-
@retval void
-
@par History 无
*/
void run(int time)
{
//左电机前进
digitalWrite(Left_motor_go, HIGH); //左电机前进使能
digitalWrite(Left_motor_back, LOW); //左电机后退禁止
analogWrite(Left_motor_pwm, 200); //pwm控速0-255之,左右轮略有差异//右电机前进
digitalWrite(Right_motor_go, HIGH); //右电机前进使能
digitalWrite(Right_motor_back, LOW); //右电机后退禁止
analogWrite(Right_motor_pwm, 200); //pwm控速0-255之,左右轮略有差异//延时
delay(time * 100); //delay函数默认是以ms作为单位的
}
/**
- Function loop
- @author Danny
- @date 2017.07.25
- @brief 先延时2s,再前进1s
- @param[in] void
- @retval void
- @par History 无
*/
void loop()
{
delay(2000); //延时2s
run(10); //前进1s
}