m0_74201797 2022-11-16 14:27 采纳率: 0%
浏览 41

esp8266控制步进电机不能停止for循环

用esp8266控制uln2003驱动24byj48步进电机,代码如下,不能按钮控制停止for循环,请问怎么改代码
void zheng(){
digitalWrite(2, 1);
digitalWrite(16, 1);
delay(5);
digitalWrite(2, 0);
digitalWrite(16, 0);
delay(5);
digitalWrite(2, 1);
delay(5);
digitalWrite(2, 0);
delay(5);
digitalWrite(4, 1);
digitalWrite(2, 1);
delay(5);
digitalWrite(4, 0);
digitalWrite(2,0);
delay(5);
digitalWrite(4, 1);
delay(5);
digitalWrite(4, 0);
delay(5);
digitalWrite(5, 1);
digitalWrite(4, 1);
delay(5);
digitalWrite(5, 0);
digitalWrite(4, 0);
delay(5);
digitalWrite(5, 1);
delay(5);
digitalWrite(5, 0);
delay(5);
digitalWrite(16, 1);
digitalWrite(5, 1);
delay(5);
digitalWrite(16, 0);
digitalWrite(5, 0);
delay(5);
digitalWrite(16, 1);
delay(5);
digitalWrite(16, 0);
delay(5);

}

void stop(){
digitalWrite(16, 0);
digitalWrite(5, 0);
digitalWrite(4, 0);
digitalWrite(2, 0);

}

void button6_callback(const String &state)
{
for(int i=0;i<110;i++)
{BLINKER_LOG("get button state: ", state);
if (state == "press")zheng();
else if (state != "press")break;}
}

void setup() {
pinMode(16,OUTPUT);
pinMode(5,OUTPUT);
pinMode(4,OUTPUT);
pinMode(2,OUTPUT);

//按钮绑定
Button5.attach(button5_callback);
Button6.attach(button6_callback);

Serial.begin(115200);
BLINKER_DEBUG.stream(Serial);
Blinker.begin(auth,ssid,pswd);
Button1.attach(button1_callback);
Button2.attach(button2_callback);
Slider1.attach(slider1_callback);
myservo.attach(D5);
myservo.write(10);
pinMode(D5, OUTPUT);

}

void loop()
{

Blinker.run();

}

  • 写回答

1条回答 默认 最新

  • YY_Share 2022-11-16 18:32
    关注

    这个延时,代码.....为什么不用for循环

    评论

报告相同问题?

问题事件

  • 创建了问题 11月16日

悬赏问题

  • ¥15 求大家看看Nonce如何配置
  • ¥15 Matlab怎么求解含参的二重积分?
  • ¥15 苹果手机突然连不上wifi了?
  • ¥15 cgictest.cgi文件无法访问
  • ¥20 删除和修改功能无法调用
  • ¥15 kafka topic 所有分副本数修改
  • ¥15 小程序中fit格式等运动数据文件怎样实现可视化?(包含心率信息))
  • ¥15 如何利用mmdetection3d中的get_flops.py文件计算fcos3d方法的flops?
  • ¥40 串口调试助手打开串口后,keil5的代码就停止了
  • ¥15 电脑最近经常蓝屏,求大家看看哪的问题