как подружить mks gen l v1.0 и bltouch

alexandr.t
Идет загрузка
Загрузка
23.05.2019
628
7
печатает на FLSUN 3D Metal Frame Large Print Area 3D Printer
Вопросы и ответы
как подружить mks gen l v1.0 и bltouch китайский, третий день бьюсь с прошивкой результат нулевой, точнее как бьюсь, методом тыка чего то где то, когда не знаешь и не понимаешь что делаешь очень трудно это сделать))

как написано в инструкции все строки менял раз 50, но при компиляции одни ошибки, что делать?
Ответы на вопросы

Ответы

23.05.2019 в 22:07
0

https://yadi.sk/d/JlvQlwqZVdomhQ

Тут прошивка, настраивал 3d touch для mks gen L, может быть поможет. 

Какого рода ошибки ваша прошивка выдает?

23.05.2019 в 23:17
0

прошивка не открывается объём 1,92 КБ

24.05.2019 в 00:57
0

https://yadi.sk/d/KUIr0u43DGijVQ

вот такой вариант тогда. Если что, то это прошивка marlin bugfix 2.0, шил посредством arduino-PR-beta1.9-BUILD-101.

24.05.2019 в 12:30
0

https://www.youtube.com/watch?v=0z-nMdv-VA0

25.05.2019 в 18:58
0

/****************** end of static functions ******************************/

Servo::Servo() {
  if (ServoCount < MAX_SERVOS) {
    this->servoIndex = ServoCount++;                    // assign a servo index to this instance
    servo_info[this->servoIndex].ticks = usToTicks(DEFAULT_PULSE_WIDTH);   // store default values  - 12 Aug 2009
  }
  else
    this->servoIndex = INVALID_SERVO;  // too many servos
}

int8_t Servo::attach(int pin) {
  return this->attach(pin, MIN_PULSE_WIDTH, MAX_PULSE_WIDTH);
}

int8_t Servo::attach(int pin, int min, int max) {

  if (this->servoIndex >= MAX_SERVOS) return -1;

  if (pin > 0) servo_info[this->servoIndex].Pin.nbr = pin;
  pinMode(servo_info[this->servoIndex].Pin.nbr, OUTPUT); // set servo pin to output

  // todo min/max check: abs(min - MIN_PULSE_WIDTH) /4 < 128
  this->min = (MIN_PULSE_WIDTH - min) / 4; //resolution of min/max is 4 uS
  this->max = (MAX_PULSE_WIDTH - max) / 4;

  // initialize the timer if it has not already been initialized
  timer16_Sequence_t timer = SERVO_INDEX_TO_TIMER(servoIndex);
  if (!isTimerActive(timer)) initISR(timer);
  servo_info[this->servoIndex].Pin.isActive = true;  // this must be set after the check for isTimerActive

  return this->servoIndex;
}

void Servo::detach() {
  servo_info[this->servoIndex].Pin.isActive = false;
  timer16_Sequence_t timer = SERVO_INDEX_TO_TIMER(servoIndex);
  if (!isTimerActive(timer)) finISR(timer);
}

void Servo::write(int value) {
  if (value < MIN_PULSE_WIDTH) { // treat values less than 544 as angles in degrees (valid values in microseconds are handled as microseconds)
    value = map(constrain(value, 0, 180), 0, 180, SERVO_MIN(), SERVO_MAX());
  }
  this->writeMicroseconds(value);
}

void Servo::writeMicroseconds(int value) {
  // calculate and store the values for the given channel
  byte channel = this->servoIndex;
  if (channel < MAX_SERVOS) {  // ensure channel is valid
    // ensure pulse width is valid
    value = constrain(value, SERVO_MIN(), SERVO_MAX()) - (TRIM_DURATION);
    value = usToTicks(value);  // convert to ticks after compensating for interrupt overhead - 12 Aug 2009

    CRITICAL_SECTION_START;
    servo_info[channel].ticks = value;
    CRITICAL_SECTION_END;
  }
}

// return the value as degrees
int Servo::read() { return map(this->readMicroseconds() + 1, SERVO_MIN(), SERVO_MAX(), 0, 180); }

int Servo::readMicroseconds() {
  return (this->servoIndex == INVALID_SERVO) ? 0 : ticksToUs(servo_info[this->servoIndex].ticks) + TRIM_DURATION;
}

bool Servo::attached() { return servo_info[this->servoIndex].Pin.isActive; }

void Servo::move(int value) {
  if (this->attach(0) >= 0) {
    this->write(value);
    delay(SERVO_DELAY);
    #if ENABLED(DEACTIVATE_SERVOS_AFTER_MOVE)
      this->detach();
    #endif
  }
}

#endif

25.05.2019 в 18:59
0

sketchservo.cpp: In member function 'void Servo::move(int)':

servo.cpp:313:22: error: cannot convert '' to 'long unsigned int' for argument '1' to 'void delay(long unsigned int)'

     delay(SERVO_DELAY);

                      ^

exit status 1
cannot convert '' to 'long unsigned int' for argument '1' to 'void delay(long unsigned int)'

25.05.2019 в 19:00
0

кто силён а техническом английском, на что он ругается?
сделал всё как по этой ссылке https://www.youtube.com/watch?v=0z-nMdv-VA0  за основу взял прошивку родную (шла с принтером на флешке) ктоторая с концевиками

Для написания комментариев, пожалуйста, авторизуйтесь.

Читайте в блогах

Настольные боевые роботы - Спиннер

5. Калибровка

Папина машинка

Светильник Wb Nightlight

4. Проектирование и сборка прототипа.

Кейс для TS100 с подставкой