У меня есть Arduino DUE. Я протестировал его со своими переключателями и светодиодами, используя Интерфейс Arduino 1.8.5. Все в порядке, но мне нужна была лучшая среда разработки и более простой в реализации объектно-ориентированный (т.е. классы) подход. Я давно перестал думать о коде линейного программирования.
Я загрузил и использую Eclipse IDE для Eclipse Committer Версия: Photon Release (4.8.0), использовал Торговая площадка Eclipse для установки Eclipse C++ IDE для Arduino 2.0 и выбрал Пакет: платы Arduino SAM (32-битная ARM Cortex-M3) из Диспетчер пакетов загрузки Arduino согласно Программируйте свой Arduino как профессионал с помощью Eclipse C / C++ IDE.
Я ввел следующий простой программный код Мигать, но у меня уже есть проблема в первой строке #include <Arduino.h> !: "Неразрешенное включение: <Arduino.h>"!
Разве плагин Arduino не должен был включать включаемые файлы и сохранять путь к ним? Как мне решить эту проблему? С уважением Джози Хилл
Мигать
Для краткости я убрал все комментарии и оставил ссылки. Это вряд ли имеет значение, потому что проблема заключается в подключаемых файлах Arduino и их пути.
#include <Arduino.h>
/* created 2005 by David A. Mellis
modified 8 Feb 2010 by Paul Stoffregen
modified 11 Nov 2013 by Scott Fitzgerald
modified 9 Jan 2017by Arturo Guadalupi
This example code is in the public domain.
http://www.arduino.cc/en/Tutorial/BlinkWithoutDelay */
const int ledPin = LED_BUILTIN;
int ledState = LOW;
unsigned long previousMillis = 0;
const long interval = 1000;
void setup() {
pinMode(ledPin, OUTPUT);
}
void loop() {
unsigned long currentMillis = millis();
if (currentMillis - previousMillis >= interval) {
previousMillis = currentMillis;
if (ledState == LOW) {
ledState = HIGH;
} else {
ledState = LOW;
}
digitalWrite(ledPin, ledState);
}
}
Вам следует поискать Рекомендации по программному обеспечению по запросу «C++ ide arduino» и посмотреть, что появится. Просить рекомендаций по StackOverflow не по теме.
У меня уже есть Visual Studio Community, но компиляция не удалась во многих глубоких местах во включаемых файлах!
Точно так же я попробовал ATMEL, но забыл о проблеме.
Я знаю, почему моя AVR Studio 5 обманула меня! Мне не удалось найти свою плату DUE. Процессор - ATMEL ATSAM3X8E-AU в списке New Project?
Я все еще не могу его найти!
Извините, ZDF, «лучше», хотя и относительное прилагательное, в моем случае оно было абсолютным, потому что я не вижу IDE Arduino 1.8.5 и, похоже, нет возможности профилировать ее внешний вид. Это была важная причина, но я также не мог понять, как добавлять классы и включать файлы * .h. Спасибо за ответ, теперь кажется, что я должен установить ATMEL Studio 7, что я сейчас и делаю.
Пробую Actmel Studio 7 сейчас, но все еще не могу найти свое устройство: Наклейка на плате: DUE, Чип: ATSAM8X3E, Наклейка USB: ATMEGA16U2
По-прежнему никаких радостей с Actmel Studio 7. Моего устройства нет даже после использования того, что казалось решением, устанавливающим Arduino 1.6.0 для получения файла с именем bossac.exe.
Итак, теперь я снова пробую Visual Studio 2015 с плагином vMicro. Мое устройство есть! У меня было несколько ошибок, связанных с операторами __Pragma ("pack (1)") во включаемых файлах. Я изменил их на #pragma pack (1), и все шло хорошо, пока ...
Код серьезности Описание Ошибка состояния подавления строки файла проекта: C: \ Users \ Josie Hill \ AppData \ Local \ Temp \ VMBuilds \ sketch_aug07a \ arduino_due_x _dbg \ Release \ core \ sy scalls_sam3.co: нет такого файла или каталога Файл: рука-none-eabi-gcc
Пожалуйста! Что это значит? У меня полностью активирован плагин vMicro
У меня также было множество ошибок, связанных с; ожидалось или а) ожидалось в операторе __ASM. Однако я продолжал строить, не внося никаких изменений, и просто внезапно исчезло. Забавно, подумала я :)
Я не могу дать вам конкретного совета. Если вы новичок, вам, вероятно, придется начать с чего-то очень простого. Также не стоит ожидать полной стандартной реализации C++ для Arduino. Если ваша программа работает со стандартной IDE Arduino, она должна работать и с любой другой; это просто вопрос конфигурации.
Спасибо ZDF. Наконец-то я обрел покой. У меня был установлен Arduino 1.6.0, чтобы попробовать рекомендованное решение с Actmel 7. Это не сработало, поэтому я заменил его на Arduino 1.8.5, удалил Actmel 7, и все в порядке с VS 2015 с подключаемым модулем vMicro. Я в порядке. имеет опыт работы на большинстве языков. Пишу программное обеспечение с 1970 года для всех типов компьютеров и языков. Мне сейчас 70 лет, и я потерял значительную часть сетчатки из-за диабетической ретинопатии. Это означает, что я могу легко упустить важные моменты, читая помощь в Интернете. Биты просто пропадают! С уважением
Почему этого не могло быть в java? Думаю, скоро я выясню, в чем заключаются недостатки реализации C++ в Arduino. Еще раз спасибо, ZDF и Томас Мэтьюз, с наилучшими пожеланиями.
@JosieH Приятно видеть, что это серьезное состояние не мешает тебе. : o)





Спасибо @ZDF и @ThomasMatthews за ваш вклад. Я счастлив сообщить, что решил свою проблему с помощью исключая Eclipse в качестве соперника, переустановив Студия Arduino 1.8.5 и установив плагин Arduino vMicro для моей уже существующей установки Сообщество Visual Studio 2015.
Было несколько проблем со сборкой, в основном с этими операторами из любых включаемых файлов (я никогда не обращал внимания на которые, но вскоре они всплывают):
_Pragma ("Pack(1)")
_Pragma ("Pack()")
Я заменил их на:
#pragma Pack(1)
#pragma Pack()
Возникло несколько других проблем со сборкой, но они, казалось, исправились сами собой после того, как я просто просмотрел их объявления и использовал большую дозу щелчков по меню Файл> Сохранить все. Любопытно что ли?
С Уважением