FLProg для микроконтроллера, а не для Ардуино!
FLProg для микроконтроллера, а не для Ардуино!
Наша любимая программа FLProg контактирует с микроконтроллером посредством программы Ардуино и различных вариантов плат Ардуино.
То есть, мы, как пользователи, привязаны к асортименту и возможностям различных плат Ардуино и, соответственно, зависим от их производителя.
Но что такое Ардуино? Это ведь обычный МК, установленный на отдельную плату с необходимой периферией и кучкой выводов-портов. И всё это по довольно большой цене.
Но собрать Ардуино самому - раз плюнуть. Схемы всех вариантов имеются в сети, а загрузчики доступны из самой программы Ардуино. А вот стоимость самодельной платы окажется не в пример меньше.
Правда собирать отдельно вариант платы Ардуино вряд ли есть смысл. Лучше уже сразу собирать свою плату под конкретное устройство, на которой будет стоять МК с необходимой обвязкой...
В связи с этим вопрос к разработчику программы FLProg:
Возможно ли добавить к программе функционал, позволяющий при создании нового проекта выбирать не конктретную плату Ардуино, а конкретный МК со всеми его возможностями?
То есть, создавая новый проект выбираем в качестве МК какую нибудь Мегу, например, 328-ю. Указываем тип корпуса (так как от этого зависит число аналоговых портов), частоту и т.д.
Пишем программу. Отдаём её программе Ардуино на компиляцию и прошиваем свою плату посредством программатора, как варианты плат без USB порта. Ну и дальше, как обычно - проверяем, отлаживаем, меняем программу, перепрошиваем...
Я не спец, но мне видится проблема только в том, что в самой программе Ардуино уже выставлены все предустановки для конктретной платы с конктретным МК, по этому придётся создать какой-то универсальный профиль с возможностью передачи в него установок из программы FLProg.
Но это уже делается - вроде бы есть даже конструкторы профиля... Может автор FLProg или другие умельцы, кто разбирается, придумают что-то для такого сопряжения программы FLProg с программой Ардуино?..
То есть, мы, как пользователи, привязаны к асортименту и возможностям различных плат Ардуино и, соответственно, зависим от их производителя.
Но что такое Ардуино? Это ведь обычный МК, установленный на отдельную плату с необходимой периферией и кучкой выводов-портов. И всё это по довольно большой цене.
Но собрать Ардуино самому - раз плюнуть. Схемы всех вариантов имеются в сети, а загрузчики доступны из самой программы Ардуино. А вот стоимость самодельной платы окажется не в пример меньше.
Правда собирать отдельно вариант платы Ардуино вряд ли есть смысл. Лучше уже сразу собирать свою плату под конкретное устройство, на которой будет стоять МК с необходимой обвязкой...
В связи с этим вопрос к разработчику программы FLProg:
Возможно ли добавить к программе функционал, позволяющий при создании нового проекта выбирать не конктретную плату Ардуино, а конкретный МК со всеми его возможностями?
То есть, создавая новый проект выбираем в качестве МК какую нибудь Мегу, например, 328-ю. Указываем тип корпуса (так как от этого зависит число аналоговых портов), частоту и т.д.
Пишем программу. Отдаём её программе Ардуино на компиляцию и прошиваем свою плату посредством программатора, как варианты плат без USB порта. Ну и дальше, как обычно - проверяем, отлаживаем, меняем программу, перепрошиваем...
Я не спец, но мне видится проблема только в том, что в самой программе Ардуино уже выставлены все предустановки для конктретной платы с конктретным МК, по этому придётся создать какой-то универсальный профиль с возможностью передачи в него установок из программы FLProg.
Но это уже делается - вроде бы есть даже конструкторы профиля... Может автор FLProg или другие умельцы, кто разбирается, придумают что-то для такого сопряжения программы FLProg с программой Ардуино?..
Последний раз редактировалось DWD 12 мар 2016, 13:24, всего редактировалось 1 раз.
FLProg для микроконтроллера, а не для Ардуино!
Немного уточню для себя. Вы хотите чтобы вместо напрмер ножки номер 13 на плате ардуино уно, был указан номер 19 - ножки контроллера ( атмега 328 ) м.к.?
Или может 13 - 19 - PCINT5 - SCK ?
Или может 13 - 19 - PCINT5 - SCK ?
Последний раз редактировалось dekorator 13 мар 2016, 01:26, всего редактировалось 1 раз.
FLProg для микроконтроллера, а не для Ардуино!
А в чем смысл заключается? Сейчас контроллер из Китая по цене микросхемы продается при нормальном качестве. То-есть собирать самому однозначно дороже выходит.
FLProg для микроконтроллера, а не для Ардуино!
Нет, привязываться к выводам не стоит по той простой причине, что даже у одного МК цоколёвкая разная в зависимости от типа корпуса. Меняется так же функциональная насыщеность портов.
Единственное, что остаётся неизменным - названия портов. Вот к ним и можно привязаться - PD4, PB0...
Разве что в скобочках указать, что порт может быть не только цифровым, но и аналоговым - PC5(ADC5).
Ведь при "рисовании" програмы нас интересуют в основном порты - цифровые и аналоговые, а не номера их выводов.
К тому же, удобнее будет портировать программу на другой МК - досточно будет лишь указать его название, а названия портов привяжутся автоматом.
Скажем, нарисовали прогу для Меги328, отладили... А её размер оказался таким, что подойдёт Мега168 - просто в свойствах проекта поменяли название с Меги328 на Мегу168 и отдали на компиляцию...
Добавлено (13.03.2016, 11:05)
---------------------------------------------
А любители или плохо разбирающиеся в электронике могут продолжать применять Ардуино с шилдами, собирая свои конструкции, как "Лего".![Изображение](http://s38.ucoz.net/sm/1/smile.gif)
Единственное, что остаётся неизменным - названия портов. Вот к ним и можно привязаться - PD4, PB0...
Разве что в скобочках указать, что порт может быть не только цифровым, но и аналоговым - PC5(ADC5).
Ведь при "рисовании" програмы нас интересуют в основном порты - цифровые и аналоговые, а не номера их выводов.
К тому же, удобнее будет портировать программу на другой МК - досточно будет лишь указать его название, а названия портов привяжутся автоматом.
Скажем, нарисовали прогу для Меги328, отладили... А её размер оказался таким, что подойдёт Мега168 - просто в свойствах проекта поменяли название с Меги328 на Мегу168 и отдали на компиляцию...
Добавлено (13.03.2016, 11:05)
---------------------------------------------
А Вы не задумывались, почему в промышленной аппаратуре не используют Ардуино, а ставят отдельные МК?Олег писал(а):То-есть собирать самому однозначно дороже выходит.
А любители или плохо разбирающиеся в электронике могут продолжать применять Ардуино с шилдами, собирая свои конструкции, как "Лего".
![Изображение](http://s38.ucoz.net/sm/1/smile.gif)
Последний раз редактировалось DWD 13 мар 2016, 11:06, всего редактировалось 1 раз.
FLProg для микроконтроллера, а не для Ардуино!
Выиграть можно только при больших партиях в десятках или сотнях тысяч штук. Плюс если места не хватает для стандартной ардуинки, тут уж точно только сам сделаешь. Никто-же не заставляет все на разъемных соединениях делать, пайку никто не отменялDWD писал(а):А Вы не задумывались, почему в промышленной аппаратуре не используют Ардуино, а ставят отдельные МК?
![Изображение](http://s38.ucoz.net/sm/1/smile.gif)
И то что делается на микроконтроллерах в другом форм-факторе все равно делается в Китае на том-же оборудовании, но выгодно это только на промышленных объемах.
FLProg для микроконтроллера, а не для Ардуино!
По большому счету, Ардуино - плата для прототипирования. Т.е. обкатал схему и собирай уже на подобном железе уже паянном на свое место исключив разъемные соединения и улучшив шину питания. Что мешает?
FLProg для микроконтроллера, а не для Ардуино!
имхо, по сложности фичереквест стоит в одном ряду с добавлением поддержки STM32.
решается на том же уровне. если решать проблему добавления STM32 не форком, а добавлением одного экрана в визарде создания нового проекта. то и AVR MK с некоей целевой IDE добавятся относительно легко.
тут скорее вопрос Ардуинщики/Дети vs профессиональные однокристальщики. разная целевая аудитория. разная философия инструмента. разные деньги на реализацию. PRO - версия.
Добавлено (13.03.2016, 12:46)
---------------------------------------------
Ардуина как железяка и
Ардуина как слой абстракции (экосистема) скрывающий уровень Си/Даташитов/Регистров/etc.
поэтому итальянцы назвали язык Wiring а не С. и изобрели свои библиотеки.
FLprog это тоже слой абстракции, но уже скрывающий сложность Wiring (зацените).
ну можно убрать средний слой, а для кого, зачем ?
автору нужен ооочень мощный мотив делать такую работу.
решается на том же уровне. если решать проблему добавления STM32 не форком, а добавлением одного экрана в визарде создания нового проекта. то и AVR MK с некоей целевой IDE добавятся относительно легко.
тут скорее вопрос Ардуинщики/Дети vs профессиональные однокристальщики. разная целевая аудитория. разная философия инструмента. разные деньги на реализацию. PRO - версия.
Добавлено (13.03.2016, 12:46)
---------------------------------------------
тут надо разделитьDWD писал(а):Но собрать Ардуино самому - раз плюнуть.
Ардуина как железяка и
Ардуина как слой абстракции (экосистема) скрывающий уровень Си/Даташитов/Регистров/etc.
поэтому итальянцы назвали язык Wiring а не С. и изобрели свои библиотеки.
FLprog это тоже слой абстракции, но уже скрывающий сложность Wiring (зацените).
ну можно убрать средний слой, а для кого, зачем ?
автору нужен ооочень мощный мотив делать такую работу.
FLProg для микроконтроллера, а не для Ардуино!
Я тоже считаю, что в перспективе было бы очень хорошо добавить подержу напрямую микроконтроллеров AVR Atmega.
Хотя бы из-за идеи пропагандируемой автором, что FLProg для людей знающих электронику, но незнающих программирование. А вод людям хорошо знающим электронику, и правда очень часто удобнее и приятнее (даже если дороже) сделать полностью самодельное устройство.
Да и кроме тех процессоров, что используются в платах Arduino, выбор AVR значительно больше. Есть дешёвые ATtiny, есть процессоры начитанные на низкое напряжение (1.8В), есть разное климатическое исполнение (-40 °C — +150 °C). А подход к их программированию отличается мало.
К тому же уже было несколько похожих предложений:
Attmega8
FLProg для МК ATtiny
Что говорит о том, что это действительно интересует часть пользователей.
Хотя бы из-за идеи пропагандируемой автором, что FLProg для людей знающих электронику, но незнающих программирование. А вод людям хорошо знающим электронику, и правда очень часто удобнее и приятнее (даже если дороже) сделать полностью самодельное устройство.
Да и кроме тех процессоров, что используются в платах Arduino, выбор AVR значительно больше. Есть дешёвые ATtiny, есть процессоры начитанные на низкое напряжение (1.8В), есть разное климатическое исполнение (-40 °C — +150 °C). А подход к их программированию отличается мало.
К тому же уже было несколько похожих предложений:
Attmega8
FLProg для МК ATtiny
Что говорит о том, что это действительно интересует часть пользователей.
FLProg для микроконтроллера, а не для Ардуино!
Получается двойная работа - сначала всё собирается на комплекте Ардуино + шилды, потом делается макет, где всё выполнено на одной плате и в виде законченноого устройства, и только после обкатки отдаётся в производство или в "производство".Max писал(а):По большому счету, Ардуино - плата для прототипирования. Т.е. обкатал схему и собирай уже на подобном железе уже паянном на свое место...
Сразу собирать устройство ни кто не согласится, даже если программа отлично работает на Ардуино. Потому что в готовое устройство Ардуино не ставят, а перенос на плату может оказаться неработоспособным из-за неудачной или даже неудобной разводки печатной платы.
Если бы FLP поддерживал работу с отдельным МК, то можно было бы сразу собирать полноценный макет, разведя плату так, как удобно, и подключив его к компу, рисовать-проверять программу на макете устройства.
Даже если это единичный экземпляр устройства, то проверка именно на нём готовой программы предпочтительнее, чем сначала на Ардуино, а потом уже на устройстве.
Добавлено (13.03.2016, 14:48)
---------------------------------------------
Я мало понял, о чём Вы сказали...SirYorik писал(а):имхо, по сложности фичереквест стоит в одном ряду с добавлением поддержки STM32.
Но если Вы считаете, что это сложно, то попробую провести некоторую аналогию. Для этого сравним два варианта.
Вариант 1:
Бреём Ардуино, шилды, всю необходимую обвязку в виде БП, датчиков, клавиатуры, индикаторов и т.д. Всё это будет в виде навесного монтажа разложено на столе. Подключаем к компу, пишем программу и тут де проверяем.
Вариант 2:
Собираем макет платы с МК со всей необходимой обвязкой, с которой будет работать законченное устройство - БП, датчики, клавиатура, индикаторы и т.д. Всё в виде готового устройства. Подключаем его к компу, пишем программу и тут де проверяем.
Чем отличаются между собой эти два варианта? Да ни чем!
То есть, база уже есть, и то, что я предлагаю, уже есть возможность использовать.
Прошу я только дать возможность выбора некоторых довольно важных функций именно МК, а не Ардуино.
Напрример, Арудуино "не разрешает" даже смену частоты кварца или использрвание внутреннего генератора, потому что производтель сделал универсальную плату для удовлетворения любых потребностей и захотел поставить кварц.
А если у меня чисто логическое устройство - FLP просто таки отлично справляется с логическими функциями - и мне частота вообще по барабану?
Так бы я указал, что использую внутренний генератор на 1МГц и освободившиеся порты (которых всегда не хватает)использовал бы в схеме, уменьшив при этом энергопотребление...
Но не могу - в программе прописано, что Ардуино УНО работает только на 16МГц и при питании 5В. Попробуй измени, если по жизни электронщик, а не программист...
FLProg для микроконтроллера, а не для Ардуино!
То-есть экономический фактор стоит на втором месте? Например при изготовлении терморегулятора с задачей всевозможных параметров достаточно Уно и блока дисплея 1602 с кнопками. Блок питания внешний, делается дополнительная платка для разводки питания и обвязки датчиков и разъемов для них, если требуется, выход на твердотелке, которая по-любому крепится отдельно.
Если использовать Ардуино, то себестоимость без корпуса, твердотелки и датчиков выйдет порядка 10 долларов. Если делать самому, то как минимум в два раза дороже и это еще если свое время не считать, затраченное на изготовление.
Если использовать Ардуино, то себестоимость без корпуса, твердотелки и датчиков выйдет порядка 10 долларов. Если делать самому, то как минимум в два раза дороже и это еще если свое время не считать, затраченное на изготовление.
FLProg для микроконтроллера, а не для Ардуино!
Для новичков в программировании проекта более чем достаточно. Интересно на сколько затянется изготовление некого проекта без всем известных шилдов, не говоря уже об экономическом факторе. Новичок или схемотехник без опыта программирования не будет пускать свой проект на конвейер, а ограничится штучным производством для своих потребностей. Так что не надо раздувать проект для людей ну очень экономных (касается выбора контроллера не превышающего функциональности заданных требований). Посетите сайт производителя и гляньте сколько разных контроллеров у него имеется. Реализовать их все в программе - трудоемкий процесс, да и совершенно не оправданный. Такие экономии считаю нужны только для массового производства. Данный проект для этого не рассчитан. Тем более проект существует на бесплатной основе!!!
Хочется поддержки всех Atmel-ов и экономии? - Atmel Studio вам в помощь.
Хочется поддержки всех Atmel-ов и экономии? - Atmel Studio вам в помощь.
FLProg для микроконтроллера, а не для Ардуино!
+100500Magalexey писал(а):Хочется поддержки всех Atmel-ов и экономии? - Atmel Studio вам в помощь.
В данной программе упор надо делать на периферию и коммуникацию. Поддержка контроллеров нужна, но именно тех, которые наиболее востребованы либо перспективны. То же справедливо и для настроек самих контроллеров.
Хочется оптимизации кода и тонких настроек, ну так и инструмент надо брать соответствующий.
Последний раз редактировалось Naladchik 15 мар 2016, 07:04, всего редактировалось 1 раз.
FLProg для микроконтроллера, а не для Ардуино!
В том то и дело, что если поддержку других контролеров легко добавить в Arduino IDE, в другой теме приводил ссылку Добавляем поддержку не родных м/к в среду Arduino IDENaladchik писал(а):Поддержка контроллеров нужна, но именно тех, которые наиболее востребованы.
А раз можно добавить в IDE, то и добавить в Flprog можно, просто автору вошкотни много.
Тут было очень правильно написано.DWD писал(а):Нет, привязываться к выводам не стоит по той простой причине, что даже у одного МК цоколёвкая разная в зависимости от типа корпуса. Меняется так же функциональная насыщеность портов.Единственное, что остаётся неизменным - названия портов. Вот к ним и можно привязаться - PD4, PB0...
Разве что в скобочках указать, что порт может быть не только цифровым, но и аналоговым - PC5(ADC5).
Ведь при "рисовании" програмы нас интересуют в основном порты - цифровые и аналоговые, а не номера их выводов.
FLProg для микроконтроллера, а не для Ардуино!
А вот тут, как мне кажется, вопрос надо ставить по другому.Слимпер писал(а):А раз можно добавить в IDE, то и добавить в Flprog можно, просто автору вошкотни много.
Надо просить автора о возможности добавления контроллера путем добавления файла с описанием его портов, настроек и т.д. Таким образом добавление очередного контроллера сведется к добавлению очередного конфигурационного файла. В итоге можно было бы часть работы автора программы переложить на плечи очередного рационализатора. (извиняюсь, если кого обидел.).
Подобная ситуация сейчас с появлением пользовательских блоков CODE, хочется нового блока под какой то шилд или задачу - напряги мозг, поразбирайся, глядишь что то и получится.
А эти предложения мне напоминают попытки сделать из приличного шуруповерта набор часовых отверток, в этом, IMHO, никакого смысла.
Последний раз редактировалось Naladchik 15 мар 2016, 07:39, всего редактировалось 1 раз.
FLProg для микроконтроллера, а не для Ардуино!
Кстати очень интересная идея. Вопрос реализуемости, но это к автору?Naladchik писал(а):Надо просить автора о возможности добавления контроллера путем добавления файла с описанием его портов, настроек и т.д. Таким образом добавление очередного контроллера сведется к добавлению очередного конфигурационного файла.
Ну не набор отверток сделать, а дополнить шуруповерт целым набором бит.Naladchik писал(а):А эти предложения мне напоминают попытки сделать из приличного шуруповерта набор часовых отверток, в этом, IMHO, никакого смысла.
![Изображение](http://s38.ucoz.net/sm/1/biggrin.gif)
ИМХО. И согласен это будет нужно далеко не всем, но часть уже и сейчас делает свои платы без модулей и шильдов, судя по обсуждениям на форуме.
А вообще, это раздел предложений, что будет, а чего не будет, решать автору.
FLProg для микроконтроллера, а не для Ардуино!
Тогда такой вопрос.
При переходе с моделирования на готовый проект, нужно будет повторять всю схему Ардуино, заливать Загрузчик, потом свою программу. Или же можно обойтись без всей лишней обвязки и Загрузчика, и прошить напрямую МК в готовом изделии (с условием, что процессор идентичный Ардуине)?
При переходе с моделирования на готовый проект, нужно будет повторять всю схему Ардуино, заливать Загрузчик, потом свою программу. Или же можно обойтись без всей лишней обвязки и Загрузчика, и прошить напрямую МК в готовом изделии (с условием, что процессор идентичный Ардуине)?
Последний раз редактировалось VirSpy 18 мар 2016, 18:28, всего редактировалось 1 раз.
FLProg для микроконтроллера, а не для Ардуино!
Вот например Минимальная обвязка ATmega8, 168, 328, если программировать не через USB, а через ICSP (программатором), или через UART (преобразователем UART-USB) то схема сильно проще получается.VirSpy писал(а):Или же можно обойтись без всей лишней обвязки
По моему Grafsaxar (автор Самодельная Arduino) когда то писал, что он напрямую заливает прошивку без загрузчика, но с загрузчиком наверное будет проще реализовать автору FLProg.
Но сам я пока еще не пробовал делать самоделки. Хотя в ближайшее время собираюсь сделать пару блоков.
FLProg для микроконтроллера, а не для Ардуино!
Хотелось бы услышать результат и пошаговую (для чайников) инструкцию по заливке с FLprog`а в МК (пишется везде много, при чем, каждое противоречит предыдущему, а вникать, читая тысячи страниц, особенно начинающему, при этом не свихнуться от своей-же программы, давольно-таки сложно).
Спасибо.
Спасибо.
FLProg для микроконтроллера, а не для Ардуино!
А это по вкусу или согласно технологии "призводства".VirSpy писал(а):При переходе с моделирования на готовый проект, нужно будет повторять всю схему Ардуино, заливать Загрузчик, потом свою программу. Или же можно... прошить напрямую МК в готовом изделии (с условием, что процессор идентичный Ардуине)?
![Улыбка! :)](./images/smilies/ha_smile.gif)
Ещё раз повторяю вопрос - что такое Ардуино и чем оно отличается от любой схемы на таком же МК?
Ответ - ни чем. Так как в обоих случаях на плате стоит МК с обвязкой. Просто в случае готового устройства это будет комплект Ардуино+шилд.
По этому Вы, собрав свою схему готового устройства на МК, можете его смело назвать VirSpyduino,а я - DWDuino.
По этому при первом варианте Вы просто собираете СВОЮ схему на МК, подключаете её посредством программатора к компу, в FLP "рисуете" программу, в IDE заливаете её в свою плату и тут же проверяете работу.
Естественно, предварительно нужно в той же IDE сначала прошить в МК вашей платы загрузчик.
Преимущество варианта - написание программы с её постепенной, пошаговой проверкой, наладкой, обкаткой осуществляется
в полностью готовом устройстве с учётом всех его особенностей (длинные провода перифериии, влияние блоков друг на друга и на МК, соответствие временнЫх интервалов, учётом ЭМП, разносом аналоговых и цифровых земель и т.д.).
Что просто невозможно при использовании плат Ардуино.
А вот если устройство серийное (два и больше), то для всех последующих устройств достаточно сразу извлечь готовую проверенную прошивку и заливать её в МК без ненужного уже загрузчика - как это делалось раньше...
А можно и оставить загрузчик. Как я понял, при создании программ посредством FLP+IDE, доступный объём памяти всё равно будет меньше на объём загрузчика.
Добавлено (19.03.2016, 14:48)
---------------------------------------------
В видеуроках этого разве нет?..VirSpy писал(а):Хотелось бы услышать результат и пошаговую (для чайников) инструкцию по заливке с FLprog`а в МК
Последний раз редактировалось DWD 19 мар 2016, 14:34, всего редактировалось 1 раз.
FLProg для микроконтроллера, а не для Ардуино!
"Arduino - физическая вычислительная платформа с открытым исходным кодом, основанная на просто плате ввода-вывода и средыDWD писал(а):Ещё раз повторяю вопрос - что такое Ардуино и чем оно отличается от любой схемы на таком же МК?
разработки, которая использует язык Processing. ... Она основана на IDE языка Processing, лёгкой в использовании среде разработки, для
использования художниками и дизайнерами. Она программируется через кабель USB, а не через последовательный порт. "
Massimo Banzi. Один из отцов проекта "Arduino".
ну а по теме то:
"Программа FLProg позволяет создавать прошивки для плат Arduino с помощью графических языков FBD и LAD". О программе FLPROG. Автор.
Последний раз редактировалось Naladchik 21 мар 2016, 09:45, всего редактировалось 1 раз.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей