CLion + Arduino

16

Пожалуйста, помогите мне настроить Clion + Arduino.

У Clion есть плагин Arduino, который я установил. Вот несколько инструкций по Github, но я полностью нуб о cmakeдругих вещах, о которых идет речь в инструкции. Раньше я использовал только Arduino IDE для своих простых проектов. Теперь в CLion я могу создавать проекты Arduino, но автозаполнение не работает. На самом деле это работает, но делает это на истинном C, а не для кода Arduino.

Так что, если вы можете объяснить, как для полного идиота, что я должен изменить, чтобы получить работу автодополнения Arduino.

Kvach
источник
Что вы подразумеваете под автодополнением Arduino?
Avamander
Он не может автозаполнить то, о чем не знает. Правильно ли установлены все библиотеки в соответствии с требованиями плагина? (Попробуйте скомпилировать пример Blink, включенный в Arduino IDE, вы получаете какие-либо ошибки?)
Avamander
Если ты объяснишь, как это сделать, я сделаю это.
Квач

Ответы:

22

Вместо использования какого-либо плагина, я использую CLion с PlatformIO , который поддерживает несколько IDE. Тогда CLion предоставляет не только завершение кода, но и полную поддержку рефакторинга, Git и многого другого.

Из его документации :

[...] создать проект с помощью platformio init --ideкоманды:

platformio init --ide clion --board %TYPE%

# For example, generate project for Arduino UNO
platformio init --ide clion --board uno

Затем импортируйте проект в CLion, и все готово.

Некоторые намеки:

  • Убедитесь, что ваш код находится в srcпапке, и включите основной файл в сгенерированный CMakeLists.txt. Это должно иметь .cppрасширение, например:

    add_executable(projectname src/main.cpp)
    
  • Для других файлов: либо переименуйте все .inoфайлы для использования .cpp, либо скажите CLion связать .inoрасширение с файлами C ++. (Настройки, редакторы, типы файлов.)

  • Всякий раз, когда вы добавляете библиотеки в libпапку (и используете #includeдля них ссылки), просто повторите приведенную выше initкоманду.
  • Если вы используете ESP-платы и поменяли platform.txtна альтернативную esptool, то обратите внимание, что PlatformIO нужен другой взлом .
  • Вместо того, чтобы использовать плагин CLion Serial Monitor, я просто использую терминал в CLion для загрузки и запуска монитора как можно скорее:

    pio run -t upload; pio serialports monitor -b 115200
    
Арьян
источник
спасибо за ваш информативный ответ. это помогло мне совсем немного. только одно: не могли бы вы более подробно остановиться на последнем пункте? как вы открываете пользовательские терминалы? эта команда работает на всех платформах или только Linux? заранее спасибо
Нейрон
1
@Neuron, в CLion на Mac это меню Вид, Инструмент Windows, Терминал. (На Mac встроенная оболочка bash также называется Terminal.) Но нет особой разницы в использовании отдельного окна терминала, за исключением того, что оно все в одном месте и по умолчанию удобно расположено в папке проекта. Что касается pioкоманды: я использовал ее только на Mac, и это точно так же, как platformio. (Оба устанавливаются при установке PlatformIO.)
Arjan
1
Окей, это platformio device monitorсейчас
invis
1
@invis, тебе не подходит третий пункт?
Арьян
1
@ Arjan хм, на самом деле pio initс аргументами помогает. Мой libкаталог пуст, поэтому я запутался. pioдобавляет зависимости в свой собственный каталог с именем.pio/libdeps
invis
9

Я знаю, что об этом спрашивали давным-давно, но, возможно, это будет кому-то полезно. Я новичок во всем этом, поэтому, если кто-нибудь знает лучший способ сделать это, пожалуйста, поправьте меня. вот как я настроил CLion для Arduino (в Windows 10):

CLion 2016.1.3 + Arduino 1.6.9 + плагин

  1. Скачайте и установите официальную Arduino IDE (1.6.9).

  2. Загрузите и установите MinGW на C: \ MinGW

  3. В MinGW установите: «mingw32-base» и «mingw32-gcc-g ++»

  4. Скачайте и установите CLion .

  5. Создайте проект без названия, просто чтобы открыть CLion.

  6. В CLion> Настройки> Плагины> Обзор репозиториев> Поиск и установка: «Arduino» (интеграция инструментов) и «Serial Monitor» (разное).

  7. В CLion> Настройки> Поиск> введите MinGW

  8. В среде выберите «Использовать MinGW home» и перейдите к папке MinGW («C: \ MinGW»). Нажмите «Применить» и подождите, пока CLion найдет среду.

  9. В Файл> Закрыть проект.

  10. Откройте любой файловый менеджер и перейдите в «c: \ Users \ name \ ClionProjects \» и удалите «неназванный» проект, который вы только что создали.

  11. Откройте CLion, выберите «Новый эскизный проект Arduino»

  12. В каталоге проекта> «открыть cmakelists.txt» и настроить строки:

    6: set board version
    7: set port (you can find out port# from the Arduino IDE)
    8: set the path where you installed your Arduino libraries (Arduino sketch folder)
    
    set(${CMAKE_PROJECT_NAME}_BOARD uno)
    set(${CMAKE_PROJECT_NAME}_PORT COM3)
    LINK_DIRECTORIES(c:\\ARDUINO\\libraries)
    
  13. В правом верхнем углу в CLion, рядом с зеленой кнопкой «Play», выберите «Edit Configuration», слева выберите «Application»> «Upload» и установите:

    -target: 'upload'
    -configuration: 'debug'
    -executable: the project name
    

    затем нажмите ок.

  14. В файле проекта .ino напишите действительно простой код (моргание).

  15. Подключите Arduino Uno через USB и нажмите зеленую кнопку воспроизведения, чтобы загрузить эскиз.

  16. Для запуска последовательного монитора:

    • В нижнем левом углу главного окна CLion щелкните вкладку последовательного монитора (в «кнопках инструментов»)
    • Нажмите значок гаечного ключа, чтобы настроить порт и скорость передачи данных.
    • В верхней части значка гаечного ключа нажмите синий значок «подключения».
    • Если значения не отображаются «правильно», щелкните белый значок «Переключить на шестнадцатеричный» (справа от гаечного ключа).
    • Перед загрузкой эскиза отключите последовательный монитор.
  17. Чтобы CLion правильно находил библиотеки, убедитесь, что для папки lib используется то же имя, что и для файла .h. пример: для DallasTempera.h используйте имя папки DallasTempera. После # ввода новых библиотек, щелкните правой кнопкой мыши на «Папке внешних библиотек» и выберите «Обновить проект cmake».

  18. Вы можете выполнить дальнейшую настройку в настройках CLion, таких как: тема, цвета, размер текста и т. Д.

  19. Кроме того , вы можете настроить некоторые полезные «живые шаблоны», как: serialprintln, digitalwrite, pinmode, switchи т.д. , чтобы повысить производительность.

Ванек Т
источник
1
Это я s very nice tutorial dude, thx very much but unfortunately Iиспользую Linux (. Вместо того, чтобы mingw, что я должен установить?
Квач
извини, я не пользуюсь linux, понятия не имею об этом.
Ванек Т
@Kvach вам нужно будет установить cmake, gcc, git.
zoonman
Спасибо! Это лучший способ сделать это для Windows
tcallred