Намоточный станок, для трансформаторов, переправить несколько строк в готовом скетче

Вопрос, Вы можете пересмотреть и исправить строки в готовом скетче для ардуино нано? Дисплей LCD2004 надо переключить по i2c, надо подключить клавиатуру из 5 кнопок. Сам скетч состоит из несколько вложенных файлов, в том числе и файл “config.h”, где и надобно исправить несколько строк. Вот схема электроники (рабочая) за исключением клавиатуры.


Тут содержимое файла config.

01#pragma once
02// сохраняйте этот файл при обновлении прошивки, чтобы не потерялись все ваши настройки. Старый файл конфигурации будет подходить ко всем новым версиям
03
04#define ENCODER_CLK         2
05#define ENCODER_DT          5 
06#define ENCODER_SW          3
07
08#define STEPPER_STEP_Z      4 
09#define STEPPER_DIR_Z       7
10#define STEPPER_STEP_A      12
11#define STEPPER_DIR_A       13
12#define STEPPER_EN          8
13
14#define BUZZER              10
15#define BUTTON_STOP         11
16
17#define DISPLAY_RS          A0
18#define DISPLAY_EN          A1
19#define DISPLAY_D4          A2
20#define DISPLAY_D5          A3
21#define DISPLAY_D6          A4
22#define DISPLAY_D7          A5
23
24#define KEYBOARD_PIN        A6           // для подключения аналоговой клавиатуры на A0 необходимо перенести вывод дисплея DISPLAY_RS на другой пин, например, на 6
25
26
27#define THREAD_PITCH        1000         // шаг резьбы вала укладчика в мкм
28
29#define DISPLAY_NCOL        20           // размер дисплея: ширина
30#define DISPLAY_NROW        4            // размер дисплея: высота
31#define DISPLAY_I2C         0            // использовать I2C подключение дисплея (1 - да, 0 - нет)
32#define DISPLAY_ADDRESS     0x27         // I2C адрес дисплея (0x27 для PCF8574T, 0x3F для PCF8574AT)
33
34#define STEPPER_Z_STEPS       200          // число шагов двигателя катушки на 1 оборот
35#define STEPPER_Z_MICROSTEPS  16           // делитель на плате драйвера двигателя катушки
36#define STEPPER_Z_REVERSE     1            // обратить направление вращения для двигателя катушки (1 - да, 0 - нет)
37#define STEPPER_A_STEPS       200          // число шагов двигателя укладчика на 1 оборот
38#define STEPPER_A_MICROSTEPS  16           // делитель на плате драйвера двигателя укладчика
39#define STEPPER_A_REVERSE     0            // обратить направление вращения для двигателя укладчика (1 - да, 0 - нет)
40
41#define ENCODER_TYPE        EB_HALFSTEP  // тип энкодера: EB_FULLSTEP или EB_HALFSTEP. если энкодер делает один шаг за два щелчка, нужно изменить настройку
42#define ENCODER_INPUT       INPUT        // если есть подтягивающие резисторы - ставьте INPUT, если нет - INPUT_PULLUP
43
44#define KEYBOARD_LEFT       0            // 0 
45#define KEYBOARD_UP         33           // k33
46#define KEYBOARD_DOWN       93           // 1k0
47#define KEYBOARD_RIGHT      171          // 2k0
48#define KEYBOARD_SELECT     350          // 5k2
49
50#define LANGUAGE            RU           // EN, RU
51//#define DEBUG
52#define TRANSFORMER_COUNT   3            // 36 max
53

Это тебе нужно в раздел : “Ищу исполнителя”
И желательно бюджет сразу озвучить

хм… вы уверены? Думаете для этого достаточно добавить несколько строк? :slight_smile:
И с чего вы взяли, что добавлять строки придется только в файл “config.h” ?

Для понимания ситуации подскажите свой уровень владения предметом - понимаете ли вы хоть что-нибудь в том коде, что просите поправить, или для вас это темный лес?

как раз по-моему клавиатура на схеме есть…

Тёмный лес для меня всё, и не только коды ардуино. Вот просветили бы меня?
А по поводу файла конфигурации, так это автор скетча, о том пишет, что все изменения, только в этом файле. вот что получилась при выходе из тёмного леса. Правда, это совершенно нечаянно. вот что получилась при выходе из тёмного леса. Правда, это совершенно нечаянно.
Программа протеус 8.


В сети интернет не трудно найти эту схему и скетч целиком.

А тут тогда зачем создан такой раздел “для новичков”?
Или тут задача, сразу всех направлять в раздел “под ключ”? Пишите, сколько надо баксов, чтоб переписать весь рабочий скетч, и сколько дано при том заработать? Время измеряется в минутах?
Перед публикацией темы, я ознакомился с разделами, поскольку тут в первый раз, при себе подумал, хмм, да баксы, баксы, совет не менее 10 баксов. Здорово! Извините за резкость!

Новичок - это тот, кто хочет научиться и готов прикладывать к этому усилия. Вы этого делать не собираетесь, но хотите получить результат. Этот раздел - не для вас

Вот что получается, если подключать клавиатуру, по схеме, которая показана на первом рисунке. Дисплей, светится, но информация не отображается, да и клва не работает.

Для полного понимания картины, добавил файл поясняющий, раскрытый скетч, и вложенными в нём файлами. Также фото, с макетной платы.


Вопрос, если

почему вы не обратились к нему?

Если говорите, что достаточно только исправить строчки в конфиге - то держите:

для этого строчку 31 исправить 0 на 1

Вот она, уже подключена, выберите только правильный пин на схеме

Вот тут выписка из сообщений по этой теме на форуме:
Пин 10 BUZZER (пищит в конце намотки)

Шаг винта выставляется в config.h, там все настройки.

клавиатура работает в версии 3.0.14

Попробуйте 3.0.14 подключать как в 2,4 (пин А0 переставить на 6, а на А0 подключается клавиатура). Сопротивления (резисторы) как в версии 2,4.

скорость выставляется онлайн.

Добрый вечер. на какие пины подключать педаль и можно ли обойтись без нее?

Все пины настраиваются в config.h

#define BUTTON_STOP 11

Можно обойтись без неё, просто замкните 11й пин на землю перемычкой

поправьте, если не так- при подключении дисплея по I2C подключать на Ардуино к выводам SDA и SCL? Работать будет?

Да, конечно, всё так) И поправьте в конфиге

А вы напишите, к каким пинам у вас энкодер подключен, а то мало информации. В оригинале было так:

Для подключения энкодера к ардуино соединяем пины X.STEP и CLK, Y.STEP и SW, X.DIR и DT а так же GND и +5V с соответствующими выводами платы.

Это можно сделать. Пока можете исправить на любую константы STEPPER_Z_MANUAL_SPEED и STEPPER_A_MANUAL_SPEED в основном файле прошивки.
Найти их можно поиском, ну или 86 строка

можно поподробнее . как должна выглядеть строка скорости укладчика?

вот так:

#define STEPPER_A_MANUAL_SPEED ((int)(180L * 1000 / THREAD_PITCH))

-----‘’----------‘’--------‘’---------‘’---------‘’---------‘’--------‘’---------‘’---------‘’----
Благодарю за ответ.
Через некоторое время попытаюсь, исправить конфиг файл.
Также лишние пины, закомментирую. О результате сообщу.
-----‘’----------‘’--------‘’---------‘’---------‘’---------‘’--------‘’---------‘’---------‘’----
И так, почему я не обращаюсь к автору, или соавтору?
Получилась нелепая ситуация. Задал вопрос о пинах. В ответ меня попросили выложить конфигурационный файл с моими поправками. (логика, если прошу помощи об перестройке пинов, то какие же перестройки я могу там вносить)?
Отправил ответ, что поправок у меня нет.

Отправляя сообщение из специальной формы, нечаянно открылись два окна, в место одного. Пытался закрыть лишнее окно, но такой возможности у меня не было! Были варианты редактирования и отправки. Ничего плохого не подозревая, отправил сообщение в первом окне, и оригинальный файл конфига, во втором окне.

спустя некоторое время получил от автора исчерпывающий ответ в виде “////////////”. Было понятно, вопрос не уместен. Пропало желание повторять вопрос.

через часиков так 15, на е-мейл пришло письмо от администратора, “Оверквотинг”, Вы должны признать нарушение. Следующий такой поступок, может расценивается, “Баном”. Признал, и в ответ написал, что в будущем от моего имени не поступит не одного сообщения. Вот это в сумме, отбило любое желание общения, или обмена информацией.
Хотя если там такие пунктуально грамотные, то бы учли слово сочетание, “Вы должны” (потому как, я там никому ничем не должен! ))
Надеюсь удовлетворил Ваше любопытство?

Ну, это проблемы не наши. В любом случае, бесплатно тебе никто ничего переправлять не будет.

Да уж! Назовите цену?
Дело в том, что мне удалось найти золотую жилу! Тоненькая, но тем не менее золотая! Так вот, всю свою сознательную жизнь, жил без автоматической намотки трансформаторов. Но тут, в виду золотой жилы, но тут не как, тут речь идёт об золоте, без такого намоточного станка, я не смогу точно наматывать золотые катушки! )) :wink:

а Адрес, надо и адрес поправить

да я уже так делал, перед тем как вообще обращаться за помощью. Просто я не выставил скорее всего верный адрес дисплея, также запутался с пином А6.
Реально на плате ардуино уно, обозначен пин А5. А то что по счёту А6 является 14 пином, этого я не знал. Хотя 14, это реально земля, GND.

на уно нет а6, на нано есть

И я об этом же. Но по любому, разберёмся, “методом научного втыка”
на плате Ардуино Уно, какой пин считать А6? Я там вижу А0, А1, А2, А3, А4, А5.
Вот что пишет искусственный интеллект:
На плате Arduino Uno, пин A6 является аналоговым входом/выходом, и он находится на 14-ом контакте. Однако, если вы используете другую плату, то пожалуйста убедитесь в том, что контакты на ней идентичны.

Форум не может заменить учебник.
Да и не доолжен.

Раздел именно для новичков.
А Вы - халявщик.
Такие как Вы приходят на форум по несколько штук за неделю, поэтому форумчане уже давно научились отличать новичков от халявщиков.

на плате Ардуино Уно, какой пин считать А6? Я там вижу А0, А1, А2, А3, А4, А5.
Вот что пишет искусственный интеллект:
На плате Arduino Uno, пин A6 является аналоговым входом/выходом, и он находится на 14-ом контакте. Однако, если вы используете другую плату, то пожалуйста убедитесь в том, что контакты на ней идентичны.

ППЦ! Вы то хотя б поняли, что написали?!? Вы уверены, что все тут халявщики? Так начните с себя!
На моём жизненном опыте было много разных спецов, и опыт у меня не малый. так вот, те у кого знаний маловато, но кое как чего-то знают, они не в курсе что опытные спецы, имеют неизмеримое количество раз знаний больше таких кто себя считает спецом, без основания на это. Реальные спецы, в основном ведут нормальный образ жизни, без разных выпендрасов, и таких отличить от само надутых выпендрасов, очень просто! У нормальных спецов не существует вопрос изначально, халява! Настоящие спецы об этом прекрасно знают, а не опытные не знают, и ставят вопрос ребром, сначала деньги! Вот и вся разница. Поверь моему и не только моему жизненному опыту!
Я вообще-то тут не настроен, с кем-то портить настроение, или писать не хорошие строки.