Hirdetés

Új hozzászólás Aktív témák

  • Reset Elek

    aktív tag

    válasz Postas99 #23840 üzenetére

    Ez lenne qz init, vagyis egy része, pár dolgot már kiszedtem belőle, így is hosszú

    #include <TMC2209.h>
    #include <HardwareSerial.h>
    #include <ESP_FlexyStepper.h>

    #define SER_BUFF_SIZE 1024

    HardwareSerial StepSerial(2);

    #define RX_PIN 18
    #define TX_PIN 17

    const long SERIAL_BAUD_RATE = 115200;
    const long SERIAL_BAUD_RATE_2 = 640000;

    TMC2209 stepper_driver_0;
    const TMC2209::SerialAddress SERIAL_ADDRESS_0 = TMC2209::SERIAL_ADDRESS_0;
    TMC2209 stepper_driver_1;
    const TMC2209::SerialAddress SERIAL_ADDRESS_1 = TMC2209::SERIAL_ADDRESS_1;
    const uint8_t REPLY_DELAY_0 = 2;
    const uint8_t REPLY_DELAY_1 = 2;

    ESP_FlexyStepper stepper_0;

    void setup()
    {
    Serial.begin(SERIAL_BAUD_RATE);

    StepSerial.setRxBufferSize(SER_BUFF_SIZE);
    StepSerial.begin(SERIAL_BAUD_RATE_2, SERIAL_8N1, RX_PIN, TX_PIN);

    stepper_driver_0.setup(StepSerial, SERIAL_BAUD_RATE_2, SERIAL_ADDRESS_0);
    stepper_driver_0.setReplyDelay(REPLY_DELAY_0);

    stepper_driver_1.setup(StepSerial, SERIAL_BAUD_RATE_2, SERIAL_ADDRESS_1);
    stepper_driver_1.setReplyDelay(REPLY_DELAY_1);

    delay(100);

    if (stepper_driver_0.isSetupAndCommunicating())
    {
    Serial.println("Stepper driver _0 setup and communicating!");
    }
    else
    {
    Serial.println("Stepper driver _0 NOT setup and communicating!");
    }

    Hardware serialt használok, de az esp valamiért nem szereti, ha Serial2-nek van elnevezve.
    Ez a kód működik kifogástalanul NodeMCU ESP32-n, de meg sem nyikkan S3-on. Különbség meg csak az RX pinben van.
    Próbáltam uart1-et meg uart2-it, semmi eredmény.
    StepSerial baud rate-je 9600 és 960000 között bármi lehetne TMC2209-en, ESP32-n megy is bármi, S3-on meg semmi, se 9600, se 115200, se 800000.

Új hozzászólás Aktív témák