前几天某宝买了块 Arduino UNO,比起 c51 来说 Arduino 用起来非常舒服,教程也不少,但!Arduino 官方 IDE 对于 IDE 癌的我实在是无法忍受!!! 于是

环境一览

  1. Jetbrains CLion
  2. MinGW
  3. Arduino IDE

安装(Windows)

预先准备

  1. Jetbrains CLion 官网下载 CLion 并安装,可凭 edu 校园邮箱到官网申请学生版(具体问度娘
  2. 下载 MinGW 并安装,安装方案问度娘
  3. 下载Arduino IDE并安装,安装方案问度娘

安装插件

  1. 在 Clion 下搜索 arduino 然后安装 arduino
  2. 继续搜索 serial 并安装 Serial Port Monitor
  3. 重启 IDE

使用

到如图所示位置配置 MinGW (以实际安装位置为准)

保存后点击

  1. 出现错误了,不用管,关闭就行

  1. 点击 open,打开项目

又出错了,其实修复也非常简单

打开 cmake/ArduinoToolchain.cmake , 跳转到 #77,在 if(ARDUINO_SDK_PATH) 前添加

set(ARDUINO_SDK_PATH D:/Software/Arduino)

其中, D:/Software/Arduino 是 Arduino 安装的位置,注意将 \ 替换成 /

  1. 配置 CMakeLists.txt
set(${CMAKE_PROJECT_NAME}_BOARD mega)
# 配置板子型号,例如: set(${CMAKE_PROJECT_NAME}_BOARD uno)
set(${CMAKE_PROJECT_NAME}_PORT /dev/ttyACM0)
# 配置串口号,例如:set(${CMAKE_PROJECT_NAME}_PORT COM3)
set(mega.upload.speed 115200)
# 配置上传波特率,例如 :set(mega.upload.speed 115200)
  1. 点击 Reload changes ,完成!

测试

粘贴闪烁小灯代码

#include <Arduino.h>

void setup() {
    // initialize digital pin LED_BUILTIN as an output.
    Serial.begin(9600);
    pinMode(LED_BUILTIN, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
    Serial.println("#Loop Start");
    digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
    delay(1000);                       // wait for a second
    digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
    delay(1000);                       // wait for a second
    Serial.println("#Loop End");
}

点击右上角切换成 upload | Debug , 然后点击右方写入板子,如果出现配置页面不必管它,直接运行,如果还是出现错误请检查串口是否配置错误

串口通信测试:

注意,在刷写时需断开串口调试

参考:

  1. Mac环境下搭建Clion+Arduino的开发环境
  2. Arduino Support
  3. Arduino Cmake build system
  4. How to setup Clion for Arduino development