完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
|
相关推荐
1个回答
|
|
用到了AccelStepper和RBD_SerialManager两个头文件
#include "AccelStepper.h" #include RBD::SerialManager u***; // 电机步进方式定义 #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 int motorRun = 0; // 定义两个步进电机对象 // 定义中ULN2003驱动板引脚顺序为 in1-in3-in2-in4 // 1号电机设置为全步进运行,2号电机设置为全步进运行 AccelStepper stepper1(HALFSTEP, motor1Pin1, motor1Pin3, motor1Pin2, motor1Pin4); void setup() { u***.start(); stepper1.setMaxSpeed(2000); // 设置电机最大速度为2000 stepper1.setSpeed(300); // 初始化电机速度为300 u***.println("请输入参数:"); } void loop() { if (u***.onReceive()) { // 检查串口缓存是否有数据等待传输 if(u***.isCmd("speed")) { int param = u***.getParam().toInt(); stepper1.setSpeed(param); motorRun = 1; u***.print("电机速度:"); u***.println(param); } if(u***.isCmd("stop")) motorRun = 0; stepper1.disableOutputs(); } if(motorRun == 1) stepper1.runSpeed(); } |
|
|
|
只有小组成员才能发言,加入小组>>
2438 浏览 0 评论
9107 浏览 4 评论
36786 浏览 19 评论
5029 浏览 0 评论
24757 浏览 34 评论
1536浏览 2评论
1755浏览 1评论
2202浏览 1评论
1561浏览 0评论
532浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-24 02:21 , Processed in 1.189396 second(s), Total 45, Slave 39 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号