完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
#include "AccelStepper.h"
// 电机步进方式定义 #define FULLSTEP 4 //全步进参数 #define HALFSTEP 8 //半步进参数 // 定义步进电机引脚 #define motor1Pin1 8 // 一号28BYJ48连接的ULN2003电机驱动板引脚 in1 #define motor1Pin2 9 // 一号28BYJ48连接的ULN2003电机驱动板引脚 in2 #define motor1Pin3 10 // 一号28BYJ48连接的ULN2003电机驱动板引脚 in3 #define motor1Pin4 11 // 一号28BYJ48连接的ULN2003电机驱动板引脚 in4 #define motor2Pin1 4 // 二号28BYJ48连接的ULN2003电机驱动板引脚 in1 #define motor2Pin2 5 // 二号28BYJ48连接的ULN2003电机驱动板引脚 in2 #define motor2Pin3 6 // 二号28BYJ48连接的ULN2003电机驱动板引脚 in3 #define motor2Pin4 7 // 二号28BYJ48连接的ULN2003电机驱动板引脚 in4 // 定义两个步进电机对象 // 1号电机设置为半步进运行,2号电机设置为全步进运行 AccelStepper stepper1(HALFSTEP, motor1Pin1, motor1Pin3, motor1Pin2, motor1Pin4); AccelStepper stepper2(FULLSTEP, motor2Pin1, motor2Pin3, motor2Pin2, motor2Pin4); void setup() { stepper1.setMaxSpeed(500.0); // 1号电机最大速度500 stepper1.setAcceleration(50.0); // 1号电机加速度50.0 stepper2.setMaxSpeed(500.0); // 2号电机最大速度500 stepper2.setAcceleration(50.0); // 2号电机加速度50.0 } void loop() { if ( stepper1.currentPosition() == 0 && stepper2.currentPosition() == 0 ){ // 1号电机转动半周 stepper1.moveTo(2048); // 2号电机转动一周 stepper2.moveTo(2048); } else if ( stepper1.currentPosition() == 2048 && stepper2.currentPosition() == 2048 ){ // 1号电机转动半周 stepper1.moveTo(0); // 2号电机转动一周 stepper2.moveTo(0); } stepper1.run(); // 1号电机运行 stepper2.run(); // 2号电机运行 } |
|
|
|
只有小组成员才能发言,加入小组>>
2087 浏览 0 评论
7693 浏览 4 评论
35410 浏览 18 评论
4696 浏览 0 评论
22900 浏览 34 评论
782浏览 2评论
1038浏览 1评论
1180浏览 1评论
910浏览 0评论
1348浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-7-17 13:14 , Processed in 1.171438 second(s), Total 77, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191