alekselektrik01 писал(а):а какие минимальные обороты можно сделать ?
Минимальная скорость вращения двигателя намотки - 0,1 об/с.
alekselektrik01 писал(а):тонкий провод на данных минимальных не очень хорошо мотать
Для тонкого провода, помимо уменьшения скорости, может помочь уменьшение ускорения. Оно задаётся параметром TURN_MOTOR_ACCEL_RPS.
spov2 писал(а):Я попробовал уменьшить до 0.12 об/сек , но толи не скомпилировалось толи завис мотор- я уже не помню.
В коде используется исключительно целочисленная арифметика. Там, где нужны дробные значения, используется формат с фиксированной точкой (например, шаг ходового винта вводится как целое число, хотя может быть равен 1,25 мм, например). Поэтому значения 0,12, 0,25 и прочие в качестве значений скорости использоваться не могут - тут доступен 1 разряд после запятой, поэтому скорость выбирается с шагом 0,1 об/с.
Все параметры, задаваемые в #define'ах, должны быть целыми числами!
spov2 писал(а):Вы имеете ввиду ширину катушки (каркаса)? Которая Length?
Да, её. В main.c появился новый параметр LAYER_LENGTH_MAX. Сейчас задано 20000, т.е. 200 мм.
spov2 писал(а):А если поменять контроллер на 16 или32х битный. Если небольшие изменения в программе? Или это гимору много?.
Это почти что написать программу заново. Да и не умею я с такими МК работать. Хотел изучить STM32, но так и не начал, а сейчас цены на них очень сильно выросли, и я уже сомневаюсь, что есть смысл их изучать.
spov2 писал(а):Т.е. ноги дисплея E и RW надо пересадить на PD2 и PD3 соответственно, а на PB6 и PB7 (7я и 8я ноги) прицепить кварц? Ноги переназначать не пробовал. Ткните где копать , плз?
Да, нужно освободить PB6, PB7. Помимо pins.h, есть ещё lcdlibrary/lcd_definitions.h. Подключение индикатора определяется именно там, а не в pins.h.
spov2 писал(а):Я не нашёл что такое СКОРТ. Но во первых 16 мГц наибольшая частота по даташиту а не до 20кГц ( могут повылазить опять какие-нибудь косяки). И второе 16 мГц надо прописывать в программу или нет? Про какое програмирование таинственного СКОРТ они толкуют?
Да, я ошибся, для ATmega8 максимальная частота 16 МГц. А вот для 88/168/328 - 20 МГц. CKOPT - это один из фьюз-битов.
Чтобы изменить тактовую частоту, нужно прописать верное значение F_CPU (в Гц) в Makefile (третья строка файла). Далее выполнить "make clean_all" и затем "make" (указав, при необходимости, требуемый МК, как было написано в одной из частей инструкции).
Дальше подключить к МК кварц и конденсаторы в соответствии с даташитом, с помощью фьюзов выбрать тактирование от кварца (см. даташит или калькуляторы, например,
https://www.engbedded.com/fusecalc/).
Если Вы говорите, что после 6 об/с начинаются проблемы, то максимальная частота импульсов STEP где-то около 19 кГц при тактировании от 8 МГц. На 16 МГц будет около 38 кГц, на 20 МГц - 48 кГц. При микрошаге 1/16 это 12 об/с и 15 об/с. При микрошаге 1/8 это 24 об/с и 30 об/с (столько не поставить, т.е. максимум будет 25,5 об/с).
spov2 писал(а):*Trigger*, Всё забываю спросить. Чем обусловлен выбор двух щелчков вместо распространённого одного в файле ENCODER.h строка вида//#define ENCODER_TWO_STEPS_ONE_PULSE ?
Файлы encoder.c, encoder.h - это библиотека для работы с энкодером, сделанная мной с некоторой претензией на универсальность. Она кочует из проекта в проект. Наиболее часто встречающаяся разновидность энкодера - такой, где за один щелчок происходит полная смена всех четырёх состояний (11 -> 10 -> 00 -> 01 -> 11). В любом устойчивом положении вала такого энкодера оба контакта разомкнуты (11). Ещё мне однажды попался энкодер, где устойчивые состояния чередуются - 00, 11, 00... Полный цикл смены состояний происходит за два щелчка. Поэтому такие энкодеры я назвал "ENCODER_TWO_STEPS_ONE_PULSE", т.е. один импульс (цикл) за два шага (щелчка). Приведённая Вами строка закомментирована (впереди стоит два слеша). Поэтому библиотека обработки энкодера работает в режиме "однощелчкового" энкодера, где на 1 щелчок приходятся все состояния.
alekselektrik01 писал(а):тут я все сделал ю а что дальше . через командную строку и т.д как написано выше пишет не найден путь и все
Вы точно делали всё по полной инструкции? Она сейчас состоит из трёх частей:
https://radiokot.ru/forum/viewtopic.php ... 6#p4052626 (из-за особенностей этого форума нет возможности редактировать старые сообщения). Думаю, Вы не указали ключ "/D" в команде cd. Попробуйте ещё раз, а если не получится - выложите сюда введённые Вами команды и сообщения об ошибках, разберёмся.