AccelStepper с F407

Пять
Вт 23 января 2018 г. 10:43
Привет

Сегодня я хотел попробовать библиотеку AccelStepper с F407. Степпер не движется! Мне нужно объявить булавки в ШИМ или что?

Я использую PWM Pins PE14 (для шагов) и PE15 (для DIR).

Простой пример кода:#include AccelStepper stepper(1,PE14,PE15); // driver, step, dir void setup() { stepper.setMaxSpeed(2000); } void loop() { stepper.setSpeed(1000); stepper.runSpeed(); }

Пять
Ср 24 января 2018 г. 9:41
Я пробовал другие булавки (PB0, PB1), все еще не двигаясь. Затем я попробовал с STM32F103C8 и Maplemini F103CB на STM32GENERIER - работа!

Так почему это не работает на F407VE?

Беннебой
Ср 24 января 2018 г. 10:22
Это менее зрелое ядро, следует ожидать несовместимости.

Возможно, попробуйте Stevestrongs Fork of Roger's Core, который имеет лучшую поддержку F4?

Стивестронг
Ср 24 января 2018 г. 10:23
Какая библиотека вы используете? Ссылка на это была бы полезна.


Стивестронг
Ср 24 января 2018 12:34
Я думаю, что вы должны установить режим этих выводов на вывод: void setup() { pinMode(PE14, OUTPUT); pinMode(PE15, OUTPUT); stepper.setMaxSpeed(2000); }

Пять
Ср 24 января 2018 г. 13:27
Беннебой: я попробую завтра.

Стевенстонгу:
Сначала ничего не изменил.

Второе решение - булавки не объявлены в этом объеме. Я попробовал это со ступником.enableOutputs (); :
int steppin = pe14;
int dirpin = pe15;
Accelstepper Stepper (1, Steppin, Dirpin); // шаг, режиссер

Та же история, булавки не объявлены?

Стивестронг
Ср 24 января 2018 г. 14:19
Вы уже использовали контакты PE14,15 для экземпляра AccelStepper в своем исходном коде: AccelStepper stepper(1,PE14,PE15); // driver, step, dir

Пять
Ср 24 января 2018 г. 15:06
Извини : D Моя ошибка. Я выбрал неправильную доску.

Он собирает OK с первым и вторым примером, но Stepper не будет работать.

ZMEMW16
Ср 24 января 2018 г. 15:38
Как вы загружаете на Target ? Если ST-Link или JTAG, почти уверены, что низкие кусочки PB и пара в PA запутаются с.

Использовать DisableBugports (); // в настройке
Используйте enablebugports (); // в коде, который завершает выполнение, может быть, на нажатию кнопки ... ... ...

Если его HAL, вам может потребоваться проверить, какой режим отладка установлена ​​на ? Я использую Cubemx, а затем в устройстве SYS я выбираю режим отладки, создаю код & Сообщите, чтобы увидеть значения, маски и т. Д

Обычные вопросы, кстати
ОС, версия, версия Arduino, какая ядро, откуда & Когда загрузить метод & Цель F407VE ?

Стивен

Пять
Ср 24 января 2018 г., 17:38
[ZMEMW16 - Ср 24 января 2018 г. 15:38] - Как вы загружаете на Target ? Если ST-Link или JTAG, почти уверены, что низкие кусочки PB и пара в PA запутаются с.

Использовать DisableBugports (); // в настройке
Используйте enablebugports (); // в коде, который завершает выполнение, может быть, на нажатию кнопки ... ... ...

Если его HAL, вам может потребоваться проверить, какой режим отладка установлена ​​на ? Я использую Cubemx, а затем в устройстве SYS я выбираю режим отладки, создаю код & Сообщите, чтобы увидеть значения, маски и т. Д

Обычные вопросы, кстати
ОС, версия, версия Arduino, какая ядро, откуда & Когда загрузить метод & Цель F407VE ?

Стивен
Загрузка с ST-Link v2. На F103 это работает. Другие вещи, такие как реле, i2c, сериал с Bluetooth работает нормально на F407 после ST-Link.

Эта отладка и Хэл для меня новички. Пока я пропущу эту часть.

Win10, Arduino 1.8.5, STM32Generic, сегодня, ST-Link V2, STM32F407VE.
Так же, как и код работает с F103 Bluebill и Arduino Mega.

Пять
Пт 26 января 2018 г. 10:17 утра
Хорошо. Я проверил свой шаг с этим кодом: void setup() { pinMode(PE14, OUTPUT); // Direction pinMode(PE15, OUTPUT); // Step digitalWrite(PE14, LOW); // Direction digitalWrite(PE15, LOW); // Step } void loop() { digitalWrite(PE15, HIGH); delay(1); digitalWrite(PE15, LOW); delay(1); }