CLion + Arduino


16

请帮我设置Clion + Arduino。

Clion有一个我安装的Arduino插件。这是有关Github的一些指导,但是我完全不了解cmake指导中谈论的其他内容。我之前仅将Arduino IDE用于简单项目。现在,在CLion中,我可以创建一个Arduino项目,但是自动补全功能不起作用。实际上它可以工作,但是可以在真正的C语言上使用,而不是针对Arduino代码。

因此,如果您能像完整的白痴一样解释一下,我应该改变些什么才能使Arduino自动完成工作。


Arduino自动补全是什么意思?
Avamander '16


它无法自动完成不知道的内容。您是否已根据插件的要求正确安装了所有库?(尝试编译Arduino IDE随附的Blink示例,您会遇到任何错误吗?)
Avamander

如果你解释怎么做,我会做。
卡瓦赫

Answers:


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串行监视器插件,而只是使用CLion中的终端来尽快上载并启动监视器:

    pio run -t upload; pio serialports monitor -b 115200
    

感谢您提供的信息。它帮助了我很多。只是一件事:您能否进一步说明最后一点?您如何打开自定义终端?该命令在所有平台上还是仅在Linux上都有效?在此先感谢
Neuron

1
@Neuron,在Mac上的CLion中,它是菜单视图,工具窗口,终端。(在Mac上,内置的bash shell也称为Terminal。)但是,使用独立的终端窗口并没有什么真正的区别,除了将其全部放在一个地方,而且它方便地默认为项目的文件夹。至于pio命令:我只在Mac上使用过它,它与完全相同platformio。(在安装PlatformIO时均已安装。)
Arjan

1
奥基,这是platformio device monitor现在
invis

1
@invis,第三个要点对您有用吗?
Arjan

1
@Arjan hmm,实际上pio init带有argumets会有所帮助。我的lib目录为空,这就是为什么我感到困惑的原因。pio在他自己的目录中添加依赖项.pio/libdeps
-invis

9

我知道这是很久以前问过的,但也许对某人有用。我是所有这些东西的初学者,所以如果有人知道更好的方法,请纠正我。这是我在Windows 10上为Arduino设置CLion的方法:

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”(工具集成)和“串行监视器”(杂项)。

  7. 在CLion>设置>搜索>中键入'MinGW'

  8. 在环境中,选择“使用MinGW主页”,然后浏览到MinGW文件夹(“ C:\ MinGW”)。按应用,然后等待,直到CLion找到环境为止。

  9. 在文件>关闭项目中。

  10. 打开任何文件管理器,然后转到“ c:\ Users \ name \ ClionProjects \”,然后删除刚刚创建的“无标题”项目。

  11. 打开CLion,选择“ New Arduino sketch project”

  12. 在项目目录>'open 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的右上角,绿色的“播放”按钮附近,选择“编辑配置”,在左侧选择“应用程序”>“上传”,然后设置:

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

    然后按确定。

  14. 在项目.ino文件中,编写一些非常简单的代码(闪烁)。

  15. 通过USB连接Arduino Uno,然后按绿色的“播放”按钮上传草图。

  16. 要启动串行监视器:

    • 在CLion主窗口左下角,单击“串行监视器”选项卡(在“工具按钮”中)
    • 单击扳手图标以设置端口和波特率。
    • 在扳手图标的顶部,单击蓝色的“连接”图标。
    • 如果值未正确显示,请单击白色的“切换到十六进制”图标(在扳手右侧)。
    • 上传草图之前,请断开串行监视器的连接。
  17. 为了让CLion正确找到库,请确保lib文件夹使用与.h文件相同的名称。示例:对于DallasTemperature.h,使用文件夹名称DallasTemperature。#include新库之后,右键单击“外部库文件夹”,然后选择“重新加载cmake项目”。

  18. 您可能需要在CLion设置中进行进一步的配置,例如:主题,颜色,文本大小等。

  19. 此外,您还可以配置一些非常实用的“实时模板”,如:serialprintlndigitalwritepinmodeswitch,等,以提高您的工作效率。


1
s very nice tutorial dude, thx very much but unfortunately I使用Linux(。而不是mingw,我应该安装什么?
Kvach

抱歉,我不使用linux,对此一无所知。
Wanek T

@Kvach你需要安装cmakegccgit
zoonman '18 -10-25

谢谢!这是在Windows上执行此操作的最佳方法
调用
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.