arduino 控制部进电机求助-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 2534|回复: 2

[未解决] arduino 控制部进电机求助

[复制链接]
发表于 2021-6-22 09:50 | 显示全部楼层 |阅读模式
代码部分
#include <AccelStepper.h>  //本示例程序使用AccelStepper库

// A4988连接Arduino引脚号
const int xdirPin = 5;     // 方向控制引脚
const int xstepPin = 6;    // 步进控制引脚
const int moveSteps = 400;    //运行步数

AccelStepper stepper1(1,xstepPin,xdirPin);//建立步进电机对象

void setup() {

  Serial.begin(115200);
  pinMode(xstepPin,OUTPUT);     // Arduino控制A4988步进引脚为输出模式
  pinMode(xdirPin,OUTPUT);      // Arduino控制A4988方向引脚为输出模式

  stepper1.setMaxSpeed(700);     // 设置电机最大速度300
  stepper1.setAcceleration(10);  // 设置电机加速度20.0  
}

void loop() {
  // 控制步进电机往复运动
  if ( stepper1.currentPosition() == 0 ){
    stepper1.moveTo(moveSteps);  
     Serial.println("电机顺时针速旋转");            
  } else if ( stepper1.currentPosition() == moveSteps  ){
    stepper1.moveTo(0);  
    Serial.println("电机逆时针旋转");            
  }         

  stepper1.run();   // 1号电机运行

}

程序在arduino uno 上运行时

我测试了  5号针脚的对地电压 发现  在0-5V之间正常变化

6号针脚的对地电压 发现  永远是0V

也就是说方向针脚的输出电平正常,脉冲输出电平却不变 永远为0

这是什么情况?




发表于 2021-6-22 17:57 | 显示全部楼层
本帖最后由 frankhan747 于 2021-6-22 17:59 编辑

库没用过,只能给个思路了
检查程序有无逻辑错误:搞明白每一行代码究竟做了什么,必要时打开库文件读代码
检查硬件连接是否正确:库的作者有没有提供相关信息、元件的具体型号是否合乎要求、检查各模块的供电方式(电压、电流够不够)
发表于 2022-2-26 19:52 | 显示全部楼层
因为,这个引脚输出的是脉冲信号,所以你一般是无法用万用表测量的出来的。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 13:56 , Processed in 0.079810 second(s), 16 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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