mystepper.disableOutputs();
- Войдите на сайт для отправки комментариев
Втр, 05/04/2022 - 09:58
Всем привет.Проблема не получается активировать disableOutputs();.
Скетч работает. шилд cnc v4 .ledPin подает сигнал на электромагнитное реле которое создает помехи для шаговика после сигналов на реле.Проблему решил припаяв конденсаторы к реле.Но можно же и программно отключать их перед сигналом,но у меня не получается.на обмотки ток подается.
#include <AccelStepper.h>
AccelStepper stepper1(1, 5, 2);
uint8_t ledPin = 13;
uint8_t switchPin = 12;
uint16_t stepsNumber = 1000;
void setup() {
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, LOW);
pinMode(switchPin, INPUT_PULLUP);
stepper1.setMaxSpeed(600.0);
stepper1.setAcceleration(1000.0);
stepper1.setMinPulseWidth(5);
}
void loop() {
stepper1.disableOutputs();
uint8_t buttonSignal = 0x01;
do { buttonSignal = (buttonSignal << 1) | digitalRead(switchPin);
delay(1);
}
while (buttonSignal != 0x00) ;
digitalWrite(ledPin, HIGH); // led on
delay(2000);
stepper1.setCurrentPosition (0x00);
stepper1.moveTo(1000);
while (stepper1.distanceToGo() != 0x00) {
stepper1.run();
}
delay(1000);
digitalWrite(ledPin, LOW); // led on
}
Это не тот шилд, где именно в v4 сменили подтяжку?
Была к плюсу, переделали на землю? И народ режет дорожки и перепаивает подтяжку, чтобы не трогать скетч?
Встречал много видео.
Я так полагаю, что прежде чем что то отключить, нужно как то указать, что именно отключать.
В вашем случае это будет пин enable.
Для данной библиотеки будет как то так:
Это не тот шилд, где именно в v4 сменили подтяжку?
Была к плюсу, переделали на землю? И народ режет дорожки и перепаивает подтяжку, чтобы не трогать скетч?
Встречал много видео.
А ты , подсказчик неумный, не видео смотри, а матчасть изучай , в том числе библиотеки.
В той же AccelStepper.h , которую использует ТС, сигнал инвертируется одной командой
void setPinsInverted(bool directionInvert = false, bool stepInvert = false, bool enableInvert = false);ЗЫ: правда там значения 1 и 2 перепутаны местами, что так же можно обнаружить покопавшись в исходниках, но там не менее это работает.
А видосики, они для дурачков, читать не умеющих, в большинстве своем снятые такими же дурачками.
void AccelStepper::setPinsInverted(bool directionInvert, bool stepInvert, bool enableInvert) { _pinInverted[0] = stepInvert; _pinInverted[1] = directionInvert; _enableInverted = enableInvert; }конденсаторы поставил прям на реле электромагнитное с основного на каждый замыкающий реле.в шилде ничего не паял
disableOutputs();
спасибо.проверю.а что с этим делать из описания данной библиотеки?
disableOutputs();
спасибо.проверю.а что с этим делать из описания данной библиотеки?
В смысле, что с этим делать ?
Использовать.
Это команда на отключение.
Но прежде чем ее использовать нужно пин ардуино указать к которому подключен вывод enable.
Как это сделать я написал
Извините за незнание.а где enable номер пина на шилд v4 узнать?
Извините за незнание.а где enable номер пина на шилд v4 узнать?
Это тебя нужно спросить.
Шилд и драйвер у тебя в наличии.
Смотри документацию на драйвер, прозванивай и определяй на какой из пинов ардуино идёт сигнал с пина enable драйвера
А ты , подсказчик неумный, не видео смотри, а матчасть изучай , в том числе библиотеки.
Не оскудеет никогда земля русская дебилами и невежами.
Воистину.
Ну что ж ты тупой какой, а? Даже прочесть не в состоянии.
Ну что ж ты тупой какой, а? Даже прочесть не в состоянии.
Ботаник, кончай пургу гнать. Твое замечание про подтяжку вообще не в кассу.
Ты уже в другой ветке показал свои "знания", не вылезал бы.