Страница 3 из 4

Интеграция своего кода на Си.

Добавлено: 22.03.2016{, 21:24}
ЛОМ
vovka1973 писал(а):Опиши весь алгоритм я попробую тебе сделать.
Алгоритм для термостата или вообще работы режимов стиралки? А вообще хотелось на основе ардуино что-то подобное http://unmodule.fo.ru/home или http://universalmodul.myqip.ru/     Много стиралок со сгоревшими мозгами дёшево  отдают.

Интеграция своего кода на Си.

Добавлено: 23.03.2016{, 00:21}
Олег
Здесь более-менее алгоритм стирки описан.

Интеграция своего кода на Си.

Добавлено: 23.03.2016{, 06:27}
vovka1973
ЛОМ писал(а):Алгоритм для термостата или вообще работы режимов стиралки? А вообще хотелось на основе ардуино что-то подобное http://unmodule.fo.ru/home или http://universalmodul.myqip.ru/     Много стиралок со сгоревшими мозгами дёшево  отдают.
Не открываются твои ссылки, на словах алгоритм напиши что тебе по минимуму надо , что машина может твоя. залив воды уровень что за датчик на какой основе  ,нагрев температуры до какой температуры? время стирки запускаем таймер отсчета назад, вкл двигатель 3 мин в одну сторону 3 мин в другую это если реверс есть короче в таком стиле. Забыл спросить вода поступает через соленоиды если да то на какое напряжение7

Интеграция своего кода на Си.

Добавлено: 24.03.2016{, 01:16}
Kocтик
AlexSar писал(а):При компиляции пользовательского блока к имени переменных добавляются номера
Чаще всего в этом проблема. Эти номера можно удалить.  Но необходимо следить чтобы названия переменных не повторялись.

Интеграция своего кода на Си.

Добавлено: 24.03.2016{, 19:30}
AlexSar
Kocтик писал(а):Эти номера можно удалить.
Как я понимаю, номера переменным присваиваются при компиляции блока. В этом случае, после удалении номеров, при последующей компиляции блока (например, при отладке программы) эти номера опять будут присутствовать в имени переменных. Тогда в чем смысл? Проще уж всю программу сразу писать на С++ и загонять в компилятор. Этот вариант я рассматривал, но если с номерами так, как я себе представляю, то это (на мой взгляд) не правильный путь. Уж лучше вытаскивать эту переменную "с корнем" из библиотеки и вставлять в блок. Хотя это моя фантазия и возможно не очень удачная.

Добавлено (24.03.2016, 19:30)
---------------------------------------------
Kocтик писал(а):Эти номера можно удалить.
Тем не менее попробовал удалить номера переменных. Ошибка не исчезла. Кроме этого, при определении класса, после фигурных скобок не получаеться поставить точку с запятой. Блок сразу становится не корректным.
P.S. Приношу извинения. Спасибо за отклик и ответ.

Интеграция своего кода на Си.

Добавлено: 24.03.2016{, 22:19}
Kocтик
AlexSar писал(а):Проще уж всю программу сразу писать на С++
Пожайлуста. Изображение Каждый волен выбирать свой путь сам. Кроме С++ есть ещё и Ассемблер. Там вообще круть.
AlexSar писал(а):эти номера опять будут присутствовать в имени переменных. Тогда в чем смысл?
Дело в том что это ... наверное баг. Как я понимаю автор думает над этим. Цыфры эти добавлены специально для того чтобы не было одинаковых названий у разных переменных. Но оказалось что некоторые библиотеки сами создают свои переменные и названия этих переменных менять нельзя. Как то так.
А удаляются они в две секунды. После компеляции. Уже в иде выделяем набор этих лишних символов, затем в верху мышкой клацаем: правка, найти, заменить всё. И всё выделенное вами исчезнет из скетча.

Интеграция своего кода на Си.

Добавлено: 25.03.2016{, 19:30}
AlexSar
Kocтик писал(а):Дело в том что это ... наверное баг. Как я понимаю автор думает над этим. Цыфры эти добавлены специально для того чтобы не было одинаковых названий у разных переменных. Но оказалось что некоторые библиотеки сами создают свои переменные и названия этих переменных менять нельзя. Как то так.А удаляются они в две секунды. После компеляции. Уже в иде выделяем набор этих лишних символов, затем в верху мышкой клацаем: правка, найти, заменить всё. И всё выделенное вами исчезнет из скетча.
Спасибо за ответ. Вашу подсказку по поводу удаления лишних цифр я понял. Но без цифр этот скетч у меня и так есть. На его основе я хотел сделать блок. Не получилось. Возникает ошибка в определении переменной после компиляции блока. Не доверяя своему разуму, подключил к решению проблемы еще программистов, владеющих С++. Вердикт вынести не смогли, т.к. не известно, как работает программа по составлению пользовательского блока. Есть только догадки, но это уже из области гадания. А так возможность самостоятельно создавать необходимые блоки с кодом выводит FLProg на качественно новый уровень. Автор - Гигант.

Добавлено (25.03.2016, 17:44)
---------------------------------------------
AlexSar писал(а):Дело в том что это ... наверное баг. Как я понимаю автор думает над этим. Цыфры эти добавлены специально для того чтобы не было одинаковых названий у разных переменных. Но оказалось что некоторые библиотеки сами создают свои переменные и названия этих переменных менять нельзя. Как то так.А удаляются они в две секунды. После компеляции. Уже в иде выделяем набор этих лишних символов, затем в верху мышкой клацаем: правка, найти, заменить всё. И всё выделенное вами исчезнет из скетча.
Добрый день, Kocтик, обращусь еще раз к Вам, т.к только Вы пока и откликнулись. Забыл упомянуть: В скомпилированном коде блока в IDE я удалил все "лишние" цифры, закрыл описание класса точкой с запятой. После этого компиляция проходит без ошибок. Полученный скетч, немного отличающийся от исходного скетча по последовательности отображаемого материала, был залит в Arduino. В результате все заработало, штрих-код считывался и отображался на дисплее так же, как и на исходном скетче. Одно НО... - блок получить таким образом не получится. Может быть, как обходной вариант, сделать недействующий блок и использовать его для построения программ, а после компиляции удалять "лишние" цифры этого блока и закрывать класс?

Добавлено (25.03.2016, 19:30)
---------------------------------------------
Kocтик писал(а):Дело в том что это ... наверное баг.
Все свои вопросы откладываю на неопределенный срок. Это действительно баг. Сторонние переменные нельзя переименовывать. Автор в курсе. Собирается устранить эту проблему в следующей версии FLProg. (если я правильно эго понял). Пока остается только альтернативный вариант - использование неработающего блока с последующей чисткой кода в IDE после компиляции всей программы.

Интеграция своего кода на Си.

Добавлено: 25.03.2016{, 21:32}
ЛОМ
vovka1973, по стиральной машине примерно думаю   так

стирка
закрытие замка люка
клапан налива воды  4 мин.
тэн поддерживает 35градусов от аналогового датчика или цифрового во время стирки
стирка
мотор барабана 5 мин. в одну сторону
мотор 5 мин. в другую
4 раза туда сюда
помпа слива 3 мин.
полоскание
клапан налива воды  4 мин.
мотор 3 мин.
помпа слива 3 мин.
отжим
мотор барабана 3 мин. в одну сторону с повышенной скоростью
мотор 3 мин. в другую сторону с повышенной скоростью
помпа слива при отжиме работает через 2 мин. от начала отжима до окончания отжима
открытие замка люка
меню на дисплее  OLED LCD Display I2C 0.96 IIC Serial 128X64 с минимумом кнопок
пункты меню
пуск
остановить с открытием замка люка с возможностью продолжения
сброс
стирка
полоскание
отжим

Интеграция своего кода на Си.

Добавлено: 25.03.2016{, 23:14}
Kocтик
ЛОМ писал(а):клапан налива воды  4 мин
Поищите хорошенько, должен быть датчик или расход воды, или уровень воды.

Интеграция своего кода на Си.

Добавлено: 26.03.2016{, 11:33}
ЛОМ
Стоит прессостат . Он отключит клапан чуть раньше 4 мин.

Интеграция своего кода на Си.

Добавлено: 26.03.2016{, 11:42}
Kocтик
ЛОМ писал(а):прессостат . Он отключит клапан чуть раньше 4 мин
Прессостат никакого отношения ко времени не имеет. Это и есть датчик уровня воды в баке.

Интеграция своего кода на Си.

Добавлено: 27.03.2016{, 21:39}
Гость
Всё уже давно придумано.... универсальный блок

Интеграция своего кода на Си.

Добавлено: 28.03.2016{, 18:42}
vovka1973
sser писал(а):Всё уже давно придумано
Так то уже всё придумали ,просто для этого о и существует ардуино что бы не покупать все что придумали, про стиралку думал быстро сделаю , не получилось может времени мало я еще и станок запускаю да и новичок еще ,ну на 70% уже сделано , осталось алгоритм полоскания прикрутить.
Стиральной машины нет проверить не могу , время в генераторах установи свое первый у меня 5 секунд второй 3  это для проверки я делал, у тебя 5 мин второй будет 3 минуты, ну и борьба с помехами чем сегодня и завтра буду заниматься, уже всю голову сломал , принцип надеюсь понял . а лучше сам пиши легче исправлять будет что да как  . Дисплея такого нет просто добавь сам,  выводи переменные что тебе нужно видеть здесь все просто. Код надо дорабатывать на оборудовании , я только учусь .

Интеграция своего кода на Си.

Добавлено: 28.03.2016{, 21:08}
UMC
vovka1973 писал(а):Код надо дорабатывать на оборудовании , я только учусь
 Я тоже ученик...посмотрел ваш блок и назрели вопросы.
1. На первой плате у вас входы уже с защитой от дребезга...нужно ли было еще добавлять блок Защита от дребезга?
2. Также на этих входах включен подтягивающий резистор...мне кажется для того чтоб теперь эта кнопка сработала её нужно сделать инверсной?

Интеграция своего кода на Си.

Добавлено: 29.03.2016{, 12:24}
ЛОМ
vovka1973, спасибо за помощь. На счёт дисплея можно поподробнее ,как подключать и как вставить его библиотеку в FLPROG /при компиляции в arduino ide напрямую в текст программы что ли?

Интеграция своего кода на Си.

Добавлено: 29.03.2016{, 17:43}
vovka1973
ЛОМ писал(а):vovka1973, спасибо за помощь. На счёт дисплея можно поподробнее ,как подключать и как вставить его библиотеку в FLPROG /при компиляции в arduino ide напрямую в текст программы что ли?
Вот посмотри мой проект станка рабочий проверенный, в нем посмотри как я выводил на дисплей .

Интеграция своего кода на Си.

Добавлено: 29.03.2016{, 21:07}
ЛОМ
архив не открывается

Интеграция своего кода на Си.

Добавлено: 30.03.2016{, 03:09}
vovka1973
ЛОМ писал(а):архив не открывается
UMC
Файл больше положенного . залил на дропбокс жми

Интеграция своего кода на Си.

Добавлено: 03.04.2016{, 09:12}
VirSpy
Помогите. Что не так делаю. Матричная клавиатура на PCF8574. Оригинал статьи : pcf8574. Библиотека из архива Keypad_I2C. Есть и такое.
Выбивает ошибку
In file included from pr51.ino:5:0:
i:\Arduino\Progs\FLProg\Portable\1-10-5\ide\libraries\Keypad_I2C/Keypad_I2C.h:35:20: fatal error: Keypad.h: No such file or directory
#include "Keypad.h"
Keyboard I2C (CODE).ubi
[url=http://]arduino_keypads-master.zip[/url]

Добавлено (03.04.2016, 09:12)
---------------------------------------------
Получилось подключить по второй статье в режиме 3х4. Не могу понять, как опрашивать клаву 3х5.

Keyboard I2C (CODE)2.ubi
i2ckeypad.zip

Интеграция своего кода на Си.

Добавлено: 25.06.2016{, 14:30}
ANi
Здравствуйте? извините за поднятие старой темы.
Прошу помощи для новичка. Помогите пожалуйста сделать блок пользователь в CODE на этой замечательной программе. 
Мне надо завернуть в этот блок датчик HC-SR04.
Я знаю, что готовый датчик есть в программе, но мне необходимо добавить туда вход ENABLE для разрешения работы.
Попытался тупо перенести код в блок пользователя, но ничего не выходит. (Я весьма плохо разбираюсь в программировании)

PS А еще я нигде на ардуиносайтах не нашел описание  параметра = 0UL
из строки
unsigned long _ultrasonic1P = 0UL;
которая получается при компилировании готового датчика SR04 в ардуино.

Надеюсь на вашу помощь, спасибо.