Доброго времени суток,
Нужно подключить TMC 2209 v3.0 (вероятно китайский) к ESP32C3 Super mini
На сколько я понял. ноги TX/RX уже распаяны на драйвере через резистор и их нужно только подключить к ESP32,
пробовал, по разному, TX/RX RX/TX, RX/CLK, TX/CLK, CLK/RX, CLK/TX в общем все варианты (пишут что на китайских вывод CLK далеко не CLK), и на внешней стороне драйвера идут 2 ноги, один от RX вторая от CLK
Пробовал менять пины на самом ESP32, все безуспешно
Подключал кроме RX,TX так:
ESP32 TMC2209
3.3 -> VIO
GND ->GND (рядом с VIO)
GND -> EN
ну и далее RX TX
код каким пытался прочитать хоть что-то с драйвера (скорость тоже менял от 9600 до 115200):
Через STEP/DIR управляется, но мне нужен UART
вот эти две ноги выведены на эту сторону, логично предположить что должны они бытьTX Rx, а не RX CLK
Нужно подключить TMC 2209 v3.0 (вероятно китайский) к ESP32C3 Super mini
На сколько я понял. ноги TX/RX уже распаяны на драйвере через резистор и их нужно только подключить к ESP32,
пробовал, по разному, TX/RX RX/TX, RX/CLK, TX/CLK, CLK/RX, CLK/TX в общем все варианты (пишут что на китайских вывод CLK далеко не CLK), и на внешней стороне драйвера идут 2 ноги, один от RX вторая от CLK
Пробовал менять пины на самом ESP32, все безуспешно
Подключал кроме RX,TX так:
ESP32 TMC2209
3.3 -> VIO
GND ->GND (рядом с VIO)
GND -> EN
ну и далее RX TX
код каким пытался прочитать хоть что-то с драйвера (скорость тоже менял от 9600 до 115200):
C++:
#include <TMCStepper.h>
#include <HardwareSerial.h>
#define R_SENSE 0.11f
#define RX_PIN 3
#define TX_PIN 4
HardwareSerial MySerial(1);
TMC2209Stepper driver(&MySerial, R_SENSE, 0x00);
void setup() {
Serial.begin(9600);
delay(1000);
Serial.println("Start");
MySerial.begin(19200, SERIAL_8N1, RX_PIN, TX_PIN);
delay(1000);
driver.begin();
driver.pdn_disable(true); // Включить UART режим
driver.mstep_reg_select(true); // Микрошаги через регистры
driver.toff(5); // Режим "включения" драйвера
driver.rms_current(400); // Установить RMS ток
driver.microsteps(16); // Микрошаги
// Чтение статуса драйвера
uint8_t status = driver.GSTAT();
Serial.print("GSTAT: 0x");
Serial.println(status, HEX);
uint16_t current = driver.rms_current();
Serial.print("Текущий RMS ток: ");
Serial.println(current);
uint8_t version = driver.version();
Serial.print("Версия драйвера: 0x");
Serial.println(version, HEX);
}
