Accelstepper ESP8266-12F не загружается
Если я использую контакты 9, 10, 7, 6, 8, 11 для шагового двигателя, ESP8266 не загрузится. Если я использую другие контакты, все хорошо.
В чем проблема?
Я использую последние версии AccelStepper и Arduino.
скетч, который не загружается -
#include <AccelStepper.h>
#include <MultiStepper.h>
#include <ESP8266WiFi.h>
#include <ESP8266mDNS.h>
#include <WiFiUdp.h>
#include <ArduinoOTA.h>
const char* ssid = "wiflya";
const char* password = ".........";
#define HALFSTEP 8
// Определение пинов для управления двигателем
#define motorPin1 13 // IN1 на 1-м драйвере ULN2003
#define motorPin2 12 // IN2 на 1-м драйвере ULN2003
#define motorPin3 14 // IN3 на 1-м драйвере ULN2003
#define motorPin4 16 // IN4 на 1-м драйвере ULN2003
// Определение пинов для управления двигателем
#define motor2Pin1 6 // IN1 на 2-м драйвере ULN2003
#define motor2Pin2 3 // IN2 на 2-м драйвере ULN2003
#define motor2Pin3 5 // IN3 на 2-м драйвере ULN2003
#define motor2Pin4 4 // IN4 на 2-м драйвере ULN2003
// Инициализируемся с последовательностью выводов IN1-IN3-IN2-IN4
// для использования AccelStepper с 28BYJ-48
AccelStepper stepper1(HALFSTEP, motorPin1, motorPin3, motorPin2, motorPin4);
AccelStepper stepper2(HALFSTEP, motor2Pin1, motor2Pin3, motor2Pin2, motor2Pin4);
void setup() {
//Serial.begin(115200);
//Serial.println("Booting");
WiFi.mode(WIFI_STA);
WiFi.begin(ssid, password);
while (WiFi.waitForConnectResult() != WL_CONNECTED) {
//Serial.println("Connection Failed! Rebooting...");
delay(5000);
ESP.restart();
}
stepper1.setMaxSpeed(1300.0);
stepper1.setAcceleration(400.0);
stepper1.setSpeed(1300.0);
stepper2.setMaxSpeed(1300.0);
stepper2.setAcceleration(400.0);
stepper2.setSpeed(1300.0);
//stepper1.moveTo(20000);
// Port defaults to 8266
// ArduinoOTA.setPort(8266);
// Hostname defaults to esp8266-[ChipID]
// ArduinoOTA.setHostname("myesp8266");
// No authentication by default
// ArduinoOTA.setPassword("admin");
// Password can be set with it's md5 value as well
// MD5(admin) = 21232f297a57a5a743894a0e4a801fc3
// ArduinoOTA.setPasswordHash("21232f297a57a5a743894a0e4a801fc3");
ArduinoOTA.begin();
}
void loop() {
// Изменяем направление, если шаговик достигает заданного положения
//if(stepper1.distanceToGo()==0)
// stepper1.moveTo(-stepper1.currentPosition());
stepper2.runSpeed();
stepper1.runSpeed();
//stepper2.runSpeed();
ArduinoOTA.handle();
}
@Evgen Stenkin, 👍0
1 ответ
▲ 1
Пины с 6 по 11 esp8266 — это контакты QIO SPI, подключенные к флэш-памяти esp8266. Вы не можете их использовать.
,
@Juraj
Смотрите также:
- Как читать и записывать EEPROM в ESP8266
- Как сделать выводы Tx и Rx на ESP-8266-01 в выводах GPIO?
- Как навсегда изменить скорость передачи данных ESP8266 (12e)?
- Как заставить 5-вольтовое реле работать с NodeMCU
- Как исправить: Invalid conversion from 'const char*' to 'char*' [-fpermissive]
- ESP8266 не подключается к Wi-Fi
- AT-команда не отвечает на последовательный монитор
- Разница между этими двумя платами NodeMCU?
Благодарить. Я нахожу больше информации об этом. не могу использовать 6-11 контактов, не могу использовать gpio1 - если я подключаюсь к uln2003 - esp не загружается.. не могу использовать gpio0 - не загружаюсь, если подключаюсь к uln2003. А что имеем - только 3,5,4,12,13,14,16 я могу использовать (с uln2003) и не могу подключить два биполярных двигателя - очень плохо., @Evgen Stenkin
это для NodeMcu, но это применимо https://electronics.stackexchange.com/questions/402066/esp8266-free-gpios-for-relay-switching/404845#404845, @Juraj
или здесь https://tttapa.github.io/ESP8266/Chap04%20-%20Microcontroller.html, @Juraj