Не объявляются пины

В данный форум модератором или автором переносятся темы из других форумов после исправления описанной ошибки во время работы над новой версией. Результаты исправления появятся в ближайшем релизе.
Ответить
Аватара пользователя
Goosr
Сержант
Сообщения: 184
Зарегистрирован: 07.06.2016{, 08:25}
Репутация: 16
Откуда: Тольятти
Имя: Дмитрий

Не объявляются пины

#1

Сообщение Goosr » 18.07.2017{, 11:36}

Если в программе используются аналоговые и цифровые пины с одинаковыми номерами, то в скетче нет объявления выходных пинов.
Пример программыПоказать
6429860.jpg
6429860.jpg (9.16 КБ) 1071 просмотр

Получаемый скетчПоказать

Код: Выделить всё

bool _kPin3 = 0;
bool _kPin4 = 0;
bool _kPin6 = 0;
void setup()
{
pinMode(17, INPUT);
pinMode(18, INPUT);
pinMode(19, INPUT);
pinMode(6, OUTPUT);

}
void loop()
{

//Плата:1
digitalWrite (3, (digitalRead (17)));
digitalWrite (4, (digitalRead (18)));
digitalWrite (6, (digitalRead (19)));

}
Как видим из скетча, Pin3 и Pin4 не были объявлены выходами, как следствие при выполнении на них не появляется сигнал.

Проверялось в версии программы 2.5.1 для виндовс и линукс

Решил поднять, т.к. данная проблема присутствует в каждой версии, в том числе 5.3.0
Доставляет кучу неудобств.
Последний раз редактировалось Goosr 16.07.2019{, 07:44}, всего редактировалось 5 раз.
FLProg 6.3.1 - 7.3.4 - Linux

pan
Полковник
Сообщения: 2860
Зарегистрирован: 13.04.2017{, 11:57}
Репутация: 204
Имя: noname

Не объявляются пины

#2

Сообщение pan » 18.07.2017{, 11:49}

проверил. тоже самое

Аватара пользователя
Goosr
Сержант
Сообщения: 184
Зарегистрирован: 07.06.2016{, 08:25}
Репутация: 16
Откуда: Тольятти
Имя: Дмитрий

Не объявляются пины

#3

Сообщение Goosr » 18.07.2017{, 11:54}

Добавлю. Оказывается есть зависимость от последовательности добавления элементов. Если первыми внести контакты а потом катушки, то нет выходов. Если первыми внести катушки а потом контакты, то нет входов.
Последний раз редактировалось Goosr 18.07.2017{, 11:59}, всего редактировалось 1 раз.
FLProg 6.3.1 - 7.3.4 - Linux

Аватара пользователя
Goosr
Сержант
Сообщения: 184
Зарегистрирован: 07.06.2016{, 08:25}
Репутация: 16
Откуда: Тольятти
Имя: Дмитрий

Не объявляются пины

#4

Сообщение Goosr » 16.07.2019{, 07:43}

Решил поднять, т.к. данная проблема присутствует в каждой версии, в том числе 5.3.0
Доставляет кучу неудобств.
FLProg 6.3.1 - 7.3.4 - Linux

Аватара пользователя
ykamerton
Сержант
Сообщения: 292
Зарегистрирован: 03.09.2017{, 00:31}
Репутация: 3
Откуда: Воронеж ykamerton@yandex.ru

Не объявляются пины

#5

Сообщение ykamerton » 16.07.2019{, 10:19}

Goosr писал(а):
18.07.2017{, 11:54}
внести контакты а потом катушки
Пора переходить на FBD все будет прописывать.

Аватара пользователя
RedSky
Лейтенант
Сообщения: 574
Зарегистрирован: 19.12.2016{, 20:07}
Репутация: 72
Откуда: Днепропетровск
Имя: Алексей

Не объявляются пины

#6

Сообщение RedSky » 16.07.2019{, 22:14}

А ещё замечал, что это зависит от расположения платы. Если вверху, тогда проблемы нет.

Аватара пользователя
bsn
Лейтенант
Сообщения: 347
Зарегистрирован: 22.07.2018{, 07:24}
Репутация: 90
Откуда: Ростовская обл.
Имя: Сергей

Не объявляются пины

#7

Сообщение bsn » 16.07.2019{, 22:37}

ykamerton писал(а):
16.07.2019{, 10:19}
Пора переходить на FBD все будет прописывать.
Полностью согласен.
Свой первый проект в FLProg также делал на релейной логике. И то же замечал косяки - нарисуешь чуть левей/правей контакт, и уже не так прописывает в IDE. Попробовал в FBD - совсем другое дело.
Чисто формально, конечно можно требовать от Автора устранения этих косяков. Но может пощадим его силы, и сократим наше время ожидания реальных ништяков в FBD?
Ей Богу, ну её эту релейку. FBD всё перекрывает.
Может вообще предложить Автору далее не тратить его время на релейку? Кажется он сам уже где-то интересовался - а точно релейка актуальна? Рискну предположить, что он уже сам ей тяготится.
Глядишь без неё, чуть быстрее STM-ки, или чего другое классное, материализуется.

Аватара пользователя
RedSky
Лейтенант
Сообщения: 574
Зарегистрирован: 19.12.2016{, 20:07}
Репутация: 72
Откуда: Днепропетровск
Имя: Алексей

Не объявляются пины

#8

Сообщение RedSky » 17.07.2019{, 08:20}

Согласен с bsn. LAD в таком виде как есть и неудобен, и не перекрывает возможности FBD. Это вводит новичков в заблуждение, схема получается плохо читаемой и громоздкой, привыкаешь, потом с него слезть трудно.
Короче нужна серьёзная доработка.
А ещё предлагаю отказаться от инсталлятора, ведь портативная версия есть ровно то же самое.

Аватара пользователя
Goosr
Сержант
Сообщения: 184
Зарегистрирован: 07.06.2016{, 08:25}
Репутация: 16
Откуда: Тольятти
Имя: Дмитрий

Не объявляются пины

#9

Сообщение Goosr » 18.07.2019{, 08:37}

ykamerton писал(а):
16.07.2019{, 10:19}
Пора переходить на FBD все будет прописывать.
А я вот не согласен, LAD такой-же промышленный стандарт языков и бросать его разработку не правильно. У меня в производстве такие Десептиконы трансформируются и всё на LAD написано. К тому-же с электриками, разговаривая и обсуждая схемы станков, проще оперировать контактами а не логическими элементами. Да и я собственно, начиная изучать программируемые реле и ПЛК, проще понимал контакты, так и пошло дальше.
RedSky писал(а):
17.07.2019{, 08:20}
Это вводит новичков в заблуждение
Я когда с этим моментом столкнулся, причем во втором проекте, в первом проблемы не было т.к. было задействовано мало пинов, вообще был в панике. Не понимал, что происходит. Станок собран, шкаф управления собран, над душой стоит начальник и вопрошает, а что сказать не знаешь и не понимаешь.

Тут еще наблюдение по этому эффекту использования цифровых и аналоговых пинов. :smile427:
Первыми поставил аналогвые вторыми цифровые, не объявляются цифровые. И на оборот соответственно.
FLProg 6.3.1 - 7.3.4 - Linux

Naladchik
Капитан
Сообщения: 822
Зарегистрирован: 04.10.2015{, 19:10}
Репутация: 151
Откуда: Новосибирск
Имя: Павел

Не объявляются пины

#10

Сообщение Naladchik » 18.07.2019{, 08:54}

bsn писал(а):
16.07.2019{, 22:37}
Ей Богу, ну её эту релейку. FBD всё перекрывает.
Может вообще предложить Автору далее не тратить его время на релейку? Кажется он сам уже где-то интересовался - а точно релейка актуальна?
Однозначно согласен!
Win10-64. FLProg Portable.
Изображение

Аватара пользователя
bsn
Лейтенант
Сообщения: 347
Зарегистрирован: 22.07.2018{, 07:24}
Репутация: 90
Откуда: Ростовская обл.
Имя: Сергей

Не объявляются пины

#11

Сообщение bsn » 19.07.2019{, 11:14}

Goosr писал(а):
18.07.2019{, 08:37}
LAD такой-же промышленный стандарт языков и бросать его разработку не правильно. У меня в производстве такие...
Да, у Сименс, например, LAD весьма распространен. А есть и другие солидные фирмы, и отечественные и импортные, в которых свои какие-то ньюансы и ништяки. А высший пилотаж - видимо прописать всё на C+.
Многое есть ещё такое, что не делает FLProg. Не рисует печатные платы, не имитирует работу электронных схем и т.д и т.п.
Ну и фиг с ним. Сделаем, что нужно в Proteus.
Зато FLProg даёт возможность оперативно освоить цифровое управление на контроллерах.
Быстро и эффективно, потрогать руками, реально ощутить, что ты управляешь процессом. Сам! По своему алгоритму!
У человека вырастают крылья, часто возникает желание далее совершенствоваться в цифровом мире. Кто-то усиленно начнёт применять это в окружающей технике, и даже, как Sancho, освоит дебри C+.
FLProg - даёт людям крылья. По мне так это и есть в нём самое главное.
То что не все сферы будут охвачены - второстепенно. Думаю, что лучше не перегружать программу излишествами, и время Автора не перегружать.
Как сказано в афоризмах Козьмы Пруткова: "Никто не обнимет необъятного".

Аватара пользователя
Goosr
Сержант
Сообщения: 184
Зарегистрирован: 07.06.2016{, 08:25}
Репутация: 16
Откуда: Тольятти
Имя: Дмитрий

Не объявляются пины

#12

Сообщение Goosr » 30.10.2019{, 21:46}

Уряяяя :smile236:
в версии 6.1.1 ушла эта трабла, теперь код выглядит вот так, все пины объявлены.
СпойлерПоказать

Код: Выделить всё



void setup()
{

pinMode(17, INPUT); 
pinMode(3, OUTPUT); 
digitalWrite(3, 0); 
pinMode(18, INPUT); 
pinMode(4, OUTPUT); 
digitalWrite(4, 0); 
pinMode(19, INPUT); 
pinMode(6, OUTPUT); 
digitalWrite(6, 0); 


}
void loop()
{






//Плата:1
digitalWrite (3, (digitalRead (17)));
digitalWrite (4, (digitalRead (18)));
digitalWrite (6, (digitalRead (19)));






}


FLProg 6.3.1 - 7.3.4 - Linux

Ответить

Вернуться в «Выполненно»