1.6.8 vs 1.0.6

kholonkin
Offline
Зарегистрирован: 14.10.2013

Кто нибудь сталкивался с проблемой, что проект компилится, загружается и работает из под среды 1.0.6

А при использовании среды 1.6.8 при попытке компиляции выдает портянку всяких ошибок.

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

kholonkin пишет:

Кто нибудь сталкивался с проблемой, что проект компилится, загружается и работает из под среды 1.0.6

А при использовании среды 1.6.8 при попытке компиляции выдает портянку всяких ошибок.

всяких, значит... а лог ошибок и проблемный код где?

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

А зачем?

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

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

andriano пишет:

А зачем?

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

ты с кем сейчас разговариваешь?

std
Offline
Зарегистрирован: 05.01.2012

andriano, есть такая вещь, dependencies называется. Хорошесть программы не защищает её от кривизны библиотек.

faeton
faeton аватар
Offline
Зарегистрирован: 21.03.2016

У меня новая версия дуниной IDE не справляется с хитрой Леонардо платой, в которой порт надо отдавать загрузчику, дёрнув DTR. Старая какая-то совсем версия грузила без проблем, а в новой на Леонардо надо успеть резет нажать, когда началась загрузка. :)
Ну, и ещё какой-то глюк пробегал существенный - уже не помню. Выбролил убогую дунину иде. :) 

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

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

faeton пишет:

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

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

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Да, я вот надеюсь, что для писания кода можно приспособить ИС ДРАКОН. :)

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

Arhat109-2 пишет:

Да, я вот надеюсь, что для писания кода можно приспособить ИС ДРАКОН. :)

у тебя тоже нет текстового редактора?

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

У меня нет?!? Да тыщи, тыщи! Речь же не про "какой задействовать блокнотик заместо блокнотика ИДЕ?"

Речь за то, что ребятки теперь принудительно втыкнули свой инклуд первой строкой, что устраняет возможность его безболезненного отключения при ненадобностях .. вот и получается, что далее или оставаться на старой версии (кстати 1.6.4, 1.6.5 - зарекомендовали себя лучше 1.6.7) или и вовсе отказываться от ИДЕ "в целом"... и вот тут, вопрос "блокнотика уже встает в полный рост.

А раз возникает "какой", то и возникает следом вопрос: "а нафига ваще блокнотик", когда есть такой замечательный язык как ДРАКОН? Да и аж целых 2 редактора к нему: "ИС ДРАКОН" и "Drakon-Editor", да с кодогенерацией на С/С++ и туеву кучу других языков... смысл искать лучшее от хорошего? :)

faeton
faeton аватар
Offline
Зарегистрирован: 21.03.2016

Клапауций 232 пишет:

faeton пишет:

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

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

Ну, идиот, влезающий во все дыры со своей бабской сущностью потрепаться без толкутут и не по теме пока один ярко выражен: Клапауций 232. Поясняю: речь шла именно об дуниной IDE, именно о ней чел спрашивал. И тебе, хамуга и пискун, следовало бы почаще молчать.

std
Offline
Зарегистрирован: 05.01.2012

Ня, разборка ^_^

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

std пишет:

Ня, разборка ^_^

у тебя есть текстовый редактор? :D

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

faeton пишет:

Клапауций 232. Поясняю: речь шла именно об дуниной IDE, именно о ней чел спрашивал.

тормоз, просвещаю - в Дуино ИДЕ есть настройка "Использовать внешний редактор".

std
Offline
Зарегистрирован: 05.01.2012

у тебя есть текстовый редактор?

У меня есть FAR.

Блин, прошлый коммент не правится. Короче all, нажимать сюда (средней кнопкой aka колёсиком) чтобы в новом окне открылось. Щас, faeton ответит, и будет весело!!

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

Клапауций 232 пишет:

у тебя есть текстовый редактор? :D

... а если найду?! :D

std пишет:

У меня есть FAR.

О, да! Было время, когда в FAR'е по F4 я редактировал и писал страницы PHP на удалённом серваке через FTP... Никакой тебе подсветки синтаксиса и автодополнения, только хардкор.

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

std пишет:

У меня есть FAR.

Jeka_M пишет:

У меня есть FAR.

блин - я лох. сижу на Sublime Text

*а, зачем вы юзаете файловый менеджер в качестве текстового редактора?

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

Давно было, уже не юзаю (удобно просто было зайти по FTP и сразу же отредактировать файлик).

Сейчас для всякого разного пользуюсь легковесным Notepad++, но для МК пользую специализированные среды.

std
Offline
Зарегистрирован: 05.01.2012

Девайсы, которые я обычно делаю, обычно состоят из трёх условий с millis() и двух сдвиговых регистров, так что там и так всё видно, без всякой подсветки синтаксисов. А так вообще да, N++ установлен. Нужен редко.

Автодополнение, как выяснилось при моей скорости набора, только бесит. А редактор FAR-а приколен тем, что там можно выделять текст по вертикали, всмысле в столбик. Полезная фича, которой нашлась масса интересных применений.

faeton
faeton аватар
Offline
Зарегистрирован: 21.03.2016

Клапауций 232 пишет:

faeton пишет:

Клапауций 232. Поясняю: речь шла именно об дуниной IDE, именно о ней чел спрашивал.

тормоз, просвещаю - в Дуино ИДЕ есть настройка "Использовать внешний редактор".

Ты вообще очумел со своим пустозвонством? АтмелСтудию подключить к дуне внешним редактором? :)))
Какой нахер внешний редактор! Дуня для деток и начинающих поучиться и вырасти до полноценных средств, а не запригать в телегу самолёт.

faeton
faeton аватар
Offline
Зарегистрирован: 21.03.2016

std пишет:

Девайсы, которые я обычно делаю, обычно состоят из трёх условий с millis() и двух сдвиговых регистров, так что там и так всё видно, без всякой подсветки синтаксисов. А так вообще да, N++ установлен. Нужен редко.

Автодополнение, как выяснилось при моей скорости набора, только бесит. А редактор FAR-а приколен тем, что там можно выделять текст по вертикали, всмысле в столбик. Полезная фича, которой нашлась масса интересных применений.

FAR рулит форева! :)

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

faeton пишет:

АтмелСтудию подключить к дуне внешним редактором? :)))

тормоз, я код пишу в Sublime Text, никуда ничего не подключаю, т.к. плат дуино никогда не имел и не имею.

Штирлиц
Штирлиц аватар
Offline
Зарегистрирован: 13.06.2015

Клапауций 232 пишет:

тормоз, я код пишу в Sublime Text, никуда ничего не подключаю, т.к. плат дуино никогда не имел и не имею.

Себя поимей , дрочер . Достал ты всех , хрен трехзначный.

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

Штирлиц пишет:

Клапауций 232 пишет:

тормоз, я код пишу в Sublime Text, никуда ничего не подключаю, т.к. плат дуино никогда не имел и не имею.

Себя поимей , дрочер . Достал ты всех , хрен трехзначный.

Штырлиц, трахни Фаетона.

Штирлиц
Штирлиц аватар
Offline
Зарегистрирован: 13.06.2015

Ребята ! Не обращайте внимания на этого долбоеба , Клапауция! На форуме во все времена существует такое гавно , как Клапауций. Только ОНО меняет имена.

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

Штирлиц пишет:

Ребята ! Не обращайте внимания на этого долбоеба , Клапауция! На форуме во все времена существует такое гавно , как Клапауций. Только ОНО меняет имена.

да! ребята, не обращайте на меня внимания - на меня Штырлиц обращает внимание.

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

std, писал: "Автодополнение, как выяснилось при моей скорости набора, только бесит."

Вот жеж, верно! А ещё бесит когда автоподсказчик по поиску места объявления класса уходит в "небытие" в развесистом проекте секунд на несколько вырубая клавиатуру .. народ, подглядывая за набором - ржет: "набрал пару строк вслепую и пошел курить .. пока оно всё просрется .. как раз успеваешь".

Спрашивается, нафига этот баян, если уже всё набрано?

faeton
faeton аватар
Offline
Зарегистрирован: 21.03.2016

Arhat109-2 пишет:

std, писал: "Автодополнение, как выяснилось при моей скорости набора, только бесит."

Вот жеж, верно! А ещё бесит когда автоподсказчик по поиску места объявления класса уходит в "небытие" в развесистом проекте секунд на несколько вырубая клавиатуру .. народ, подглядывая за набором - ржет: "набрал пару строк вслепую и пошел курить .. пока оно всё просрется .. как раз успеваешь".

Спрашивается, нафига этот баян, если уже всё набрано?

Разве нельзя выключить автодополнение, автоподсказчик и прочее ненужное? :)

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Не везде. А иногда оно таки нужно.

kholonkin
Offline
Зарегистрирован: 14.10.2013

Кто, куда? Воткнул первой строкой свой инклюд.

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Ардуино ИДЕ, перед компиляцией вашего скетча его предварительно "препарирует" и на самом деле компилируется не совсем то, что вы написали и ожидали. В ряде случаев это приводит к изумительным ошибкам, особенно для любителей С++ и "классного" програмирования.

В частности, первой строкой *.cpp файла (который и компилируется, а вовсе не *.ino!) теперь (с 1.6.7) втыкается текст #include "Arduino.h". Ранее это втыкалось ПОСЛЕ всех макрокоманд препроцессора, что позволяло устранить включение Arduino.h

Далее, на все ваши функции скетча создается их определение, и втыкается в начало скетча. Что ранее (не проверял для 1.6.8) приводило к ошибкам "неопределен тип данных" в строках .. отсутствующих в самом скетче. Так получалось потому что тип/класс - на самом деле определен, и функция написана ниже определения и использует этот тип/класс как параметр .. ничего крамольного. Но ИДЕ, добавляя в начало описание функции, ставило его ДО определения класса параметра .. и упс - косяк на лице.

В данном случае, библиотека arhat.h, коей и пользуюсь и развиваю, отключает хидер Arduino.h для исключения повторного переопределения макровыражений .. оказывается теперь включается ПОСЛЕ вызова Arduino.h, а не ранее как "было" в предыдущих версиях. Получается, что многие определения теперь переопределяются этой библиотекой уже будучи определенными в Arduino.h, что приводит к множественным warning при компиляции и "выловить" в этом потоке дерьма важное предупреждение становится сложней.

Полезность arhat.h в том, что вместо вызова долгих библиотечных (и как периодически выясняется кривоватых) функций wiring позволяет той же мнемоникой делать однокомандное управление ресурсами МК, что уменьшает размер скетчей и ускоряет их выполнение, что часто критично для ресурсов МК. Это как-бы Wiring++: меньше, лучше и быстрей.

Собственно, лично для меня вопрос встал "ребром": или окончательно отказываться от Ардуино ИДЕ, из библиотек которого практически уже ничего и не используется и уходить на "сторонний редактор + бат-файл компиляции и прошивки" или оставаться на версии 1.6.4, 1.6.5 .. которые работают достаточно устойчиво и позволяют, при необходимости компилировать как с Wiring, так и без него.

В рамках работы по приручению ДРАКОН к Атмел-процессорам, похоже первый вариант становится предпочтительным.

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

Arhat109-2 пишет:

Ардуино ИДЕ, перед компиляцией вашего скетча его предварительно "препарирует" и на самом деле компилируется не совсем то, что вы написали и ожидали. В ряде случаев это приводит к изумительным ошибкам, особенно для любителей С++ и "классного" програмирования.

В частности, первой строкой *.cpp файла (который и компилируется, а вовсе не *.ino!) теперь (с 1.6.7) втыкается текст #include "Arduino.h". Ранее это втыкалось ПОСЛЕ всех макрокоманд препроцессора, что позволяло устранить включение Arduino.h

Далее, на все ваши функции скетча создается их определение, и втыкается в начало скетча. Что ранее (не проверял для 1.6.8) приводило к ошибкам "неопределен тип данных" в строках .. отсутствующих в самом скетче. Так получалось потому что тип/класс - на самом деле определен, и функция написана ниже определения и использует этот тип/класс как параметр .. ничего крамольного. Но ИДЕ, добавляя в начало описание функции, ставило его ДО определения класса параметра .. и упс - косяк на лице.

В данном случае, библиотека arhat.h, коей и пользуюсь и развиваю, отключает хидер Arduino.h для исключения повторного переопределения макровыражений .. оказывается теперь включается ПОСЛЕ вызова Arduino.h, а не ранее как "было" в предыдущих версиях. Получается, что многие определения теперь переопределяются этой библиотекой уже будучи определенными в Arduino.h, что приводит к множественным warning при компиляции и "выловить" в этом потоке дерьма важное предупреждение становится сложней.

Полезность arhat.h в том, что вместо вызова долгих библиотечных (и как периодически выясняется кривоватых) функций wiring позволяет той же мнемоникой делать однокомандное управление ресурсами МК, что уменьшает размер скетчей и ускоряет их выполнение, что часто критично для ресурсов МК. Это как-бы Wiring++: меньше, лучше и быстрей.

Собственно, лично для меня вопрос встал "ребром": или окончательно отказываться от Ардуино ИДЕ, из библиотек которого практически уже ничего и не используется и уходить на "сторонний редактор + бат-файл компиляции и прошивки" или оставаться на версии 1.6.4, 1.6.5 .. которые работают достаточно устойчиво и позволяют, при необходимости компилировать как с Wiring, так и без него.

В рамках работы по приручению ДРАКОН к Атмел-процессорам, похоже первый вариант становится предпочтительным.

какая жесть.

Arhat109-2, и почему же так получается, что ты публикуешь этот бред на arduino.ru, а не на ДРАКОН.su ?

faeton
faeton аватар
Offline
Зарегистрирован: 21.03.2016

А кто такой "ДРАКОН"? :)

И зачем внешние редакторы с бат-файлами, если есть Atmel Studio для серьёзной работы? :)

А я так вообще уже mikroPascal даже полюбил всей душой - плачу, но пишу на нём... У дуньки хоть и кривые библиотеки были, но пощупать и погонять что-то можно было, например, WizNet, чтобы с увереностью отказаться от него. Не будь дуни, пришлось бы в mikroPascal'е писать свою библиотеку для WizNet. :)

Вариант макетки и тестирования, большей частью железа - вот тут дуня помогает ковырнуть, не выкуривая даташиты и можно даже потерпеть кое-чего. :)

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

У меня не стоит задачи писания "серъезных" проектов на АтмелСтудии... как таковых, их ваще нет .. проектов, акромя одного: "Ардуино как Лего" в задаче обучения дитенка азам программирования в его 10-летнем возрасте. :)

ДРАКОН - Дружественный Русский Алгоритмический Язык Который Обеспечивает Наглядность. Сайт drakon.su Клапауций уже указал.

В задаче обучения детишек есть широкораспространенный комплект Лего Майндшторм с его визуальным языком скретчей. Для Ардуино есть такой сайтик с проектом скретчей: s4a.cat, но работает для УНО и через Ардуино ИДЕ. На соревнованиях, особенно последнем Робофесте, было хорошо видно отставание Ардуинщиков от Майндштормовцев .. если на шорт-трек у нас вышло около 30 леговцев, то ардуинщиков было .. 8 и это - очень много! В прошлом году не было ни одного... Причин - несколько:

1. Элементная база. То, что у Лего собирается "на раз", ардуинщикам приходится приходить на тренировки с паяльником .. видел, каждый второй: запустил .. что-то подпаял, пошел на след. заход... жуть. Наш проект этот недостаток - устраняет вовсе: все запчасти "заклеены/запилены" в лего детальки и сборка - "на раз". Наш был самый младшой среди ардуинщиков .. а на забеги ходил с той же частотой, что и леговцы. не так? Разобрал, переставил, собрал ..

По сути, элементная база ограничивает сборки роботов самыми простыми тележками "по линии" или "лабиринтными" .. всё остальное на соревнованиях представлено исключительно слабо... 0-2 участника. Чуть что посложнее и усё .. надо паять, клеить, пилить и часто это совмещено.

2. Программное обеспечение. Визуальный скретч легко осваивается и программируется детишками от .. 6 лет. Они читать ещё толком не умеют, а робота запустить - "на раз". При этом, Лего майндшторм позволяет программировать и на С/С++ ибо STM32. В этом плане тут - тоже "засада", ибо Ардуино ИДЕ - это С/С++ и порог вхождения - вовсе не тот. На том же Робофесте было хорошо видно, что даже ребятишки постарше 14-16 лет корректируют скетчи (как понимаю, писанные преподавателями) тоже "с проблемами" .. сидят на пару и гадают: эту переменную увеличить или тут уменьшить.

Тот "автоматный" комплект, что я сделал своему, по большей части эту проблему снимал тоже .. по сути это "интерпретатор" простого табличного описания действий робота и всё что ему "требовалось" - подкручивать значения в табличке типа Excel.. или изменять её: "после этого действия делаем это, если тут столько" Тоже, "знания С/С++" почти не требовалось кроме правил задания начальных значений массиву (табличке), и оно не так наглядно как в скретчах.

Недавно (недели 3 назад) наткнулся на ДРАКОН, поставил "ИС ДРАКОН" и .. ребятенок, прочитав 1/2 книжки по языку, уже через полчаса клепал свои алгоритмы самостоятельно. Я не знаю другого инструмента, который бы мог быть освоен всего за полчаса .. 10-летним ребенком и практически без помощи взрослого.

Но .. там есть свои "неудобства" .. вот пока и изучаю этот вопрос: как лучше всего прикрутить кодогенератор для С/С++ сразу к редактору ДРАКОН, да так, чтобы можно было и прошивать дуньку "легким нажатием кнопки".

.. и в рамках этой темы, хорошо вижу, что от Ардуино ИДЕ можно отказываться полностью за ненадобностью.

faeton
faeton аватар
Offline
Зарегистрирован: 21.03.2016

Дуринка как макетка норм. Корпус на плате, проводочки повтыкать есть куда, библиотек много и хорошо.  Кое-какие разбаботки для дома, для офиса, где о надёжности и коммерческой отвественности речи нет, тоже потянет. :)

Но чем ДРАКОН отличается от того, которое называлось... ээээ... это, как его, что на заре программирования учили, я не уловил. :) И лего тоже было советское такое, "Электронные кубики", кажется, называлось. :) Но квадратики и ромбики для обучения - это же как счётные палочки. От них необхоимо быстренько уходить и не использовать как иснтрумент. Ну, разве что, на этапе разработки стратегии... Не представляю себе как многозадачную событийно-ориентированную систему разрисовать этими картинками. Точнее, разрисовать то запросто, но оно же чертовки громадное выйдет. Примитивные часики с будильником ого-го сколько листов займут и тут уже запросто заблудиться в линиях можно. Я уже не говорю как после этих графиков человеку тошнить станет при изучении html/css, где очень много неочивидных и нелогичных вещей, наросших как барадавки.

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

Только как макетка. Даже для "домашнего" применения уже по-хорошему требуется ПО посолидней.Отличается четкостью и ясностью изложения, что позволяет устранять логические ошибки проектирования ДО создания программ. Ваще "до". :)