【esp32c3配置arduino IDE教程】

【esp32c3配置arduino IDE教程】

  • 1.安装Arduino IDE
    • 1.1 下载Arduino IDE
    • 1.2 安装Arduino IDE
    • 1.3 启动Arduino IDE
    • 1.4 初始化Arduino IDE
    • 1.5 测试Arduino IDE软件
  • 2. 配置esp32c3环境
    • 2.1 设置包地址
    • 2.1 选择esp32开发板
  • 3. 验证esp32c3配置arduino IDE
    • 3.1 点灯Fade
    • 3.2 读取模拟量Analog
  • 4. 总结

在这里插入图片描述
本文主线FastBond2阶段1——基于ESP32C3开发的简易IO调试设备,esp32c3环境搭建,设计目标如下
在这里插入图片描述

设计用户操作界面,该设备具备简单易用的操作界面,外加显示屏SSD1306和旋转编码器进行显示和控制,用户后期可进行二次开发WiFi或蓝牙连接电脑或手机监控。
多种数字和模拟信号的输入输出:用户可以选择不同的输入输出模式,并通过设备的操作界面进行设置。例如,用户可以选择某个GPIO口作为模拟输入引脚,然后通过设备的操作界面设置输入的电压值,以模拟外部信号的输入,达到调试简易传感器读取和执行器输出功能。
支持PWM输出、舵机控制特性:用户可以选择某个GPIO口作为PWM输出引脚,并通过设备的操作界面设置PWM输出的频率和占空比。用户还可以选择某个GPIO口作为舵机控制引脚,并通过设备的操作界面设置舵机的角度。
因此系统具有一定的电流输出能力、信号辨识能力和显示交互功能。

1.安装Arduino IDE

1.1 下载Arduino IDE

首先去官网下载最新的Arduino 2.以上版本:https://www.arduino.cc/en/software
在这里插入图片描述

1.2 安装Arduino IDE

打开文件,以管理员方式运行
在这里插入图片描述
点击我同意接受协议
在这里插入图片描述
安装选项选择默认个人。点击下一步
在这里插入图片描述
选择合适的安装位置,一定要指定到对应文件夹,避免与其他文件混装
在这里插入图片描述
等待安装完成
在这里插入图片描述

1.3 启动Arduino IDE

点击完成启动Arduino IDE,或者点击桌面图标即可启动
在这里插入图片描述
初次启动,需要等待系统配置相关文件后,方可正常运行,因此需要良好的网络环境
在这里插入图片描述

1.4 初始化Arduino IDE

可登录自己的云账户
在这里插入图片描述
弹出设备安装,点击安装四个设备软件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.5 测试Arduino IDE软件

将Arduino UNO通过USB连接电脑,配置tool工具,选择匹配开发板和端口(端口选择可插拔观察软件端口,跳变端口即板载端口)
在这里插入图片描述
选择Blinker点灯案例,在文件例程基础中选择blinker
在这里插入图片描述
采用对号编译源文件,验证目标程序语法正确
在这里插入图片描述
点击箭头烧录程序,验证目标程序功能齐全
在这里插入图片描述
可观察Uno板载LED D13号引脚以1hz频率交替闪烁。此处说明Arduino IED安装成功。

注意如果不习惯英文,可在文件首选项中设置中文简体
在这里插入图片描述

2. 配置esp32c3环境

2.1 设置包地址

文件–>首选项–>

esp32使用这个https://dl.espressif.com/dl/package_esp32_index.json
8266使用这个http://arduino.esp8266.com/stable/package_esp8266com_index.json

在这里插入图片描述
此处需要良好的网络环境哟!

在工具中选择开发板管理器在这里插入图片描述

2.1 选择esp32开发板

工具–>开发板–>开发板管理器–>输入esp32
在这里插入图片描述
安装完成
在这里插入图片描述

3. 验证esp32c3配置arduino IDE

CORE ESP32核心板是基于乐鑫ESP32-C3进行设计的一款核心板,尺寸仅有21mm*51mm,板边采用邮票孔设计,方便开发者在不同场景下的使用。核心板支持UART、GPIO、SPI、I2C、ADC、PWM等接口,可根据实际需要选择。

其中LED控制
合宙CORE ESP32核心板板载2颗LED,开发者可参考表4-1进行对应管脚的控制。

在这里插入图片描述

LED编号 对应GPIO 管脚功能 描述
D4 IO12 GPIO12配置 高电平有效
D5 IO13 GPIO13配置 高电平有效

使用注意事项

  1. BOOT(IO09)管脚上电前不能下拉,ESP32会进入下载模式。
  2. 使用到IO08管脚进行设计,不建议外部直接下拉,因为在下载烧录时,IO08管脚为低电平,不能使用串口进行下载。
  3. IO12(GPIO12)、IO13(GPIO13)在QIO模式下为SPI信号SPIHD和SPIWP复用,为了增加可用GPIO数量,开发板选择采用2线SPI的DIO模式,IO12、IO13并未连接flash,使用自己编译的软件时需要注意配置flash为DIO模式。
  4. 外置SPI flash的VDD已链接至3.3V电源系统,使用时不需再配置其他电源,采用普通2线SPI通信方式。
  5. GPIO11默认为SPI flash的VDD引脚,需要配置后才能作为GPIO使用。

3.1 点灯Fade

在文件实例基础中选择Fade
在这里插入图片描述
查看对应D4LED匹配IO12,源码修改如下,即可实现呼吸灯效果

/*
  Fade

  This example shows how to fade an LED on pin 9 using the analogWrite()
  function.

  The analogWrite() function uses PWM, so if you want to change the pin you're
  using, be sure to use another PWM capable pin. On most Arduino, the PWM pins
  are identified with a "~" sign, like ~3, ~5, ~6, ~9, ~10 and ~11.

  This example code is in the public domain.

  https://www.arduino.cc/en/Tutorial/BuiltInExamples/Fade
*/

int led = 12;         // the PWM pin the LED is attached to
int brightness = 0;  // how bright the LED is
int fadeAmount = 5;  // how many points to fade the LED by

// the setup routine runs once when you press reset:
void setup() {
  // declare pin 9 to be an output:
  pinMode(led, OUTPUT);
}

// the loop routine runs over and over again forever:
void loop() {
  // set the brightness of pin 9:
  analogWrite(led, brightness);

  // change the brightness for next time through the loop:
  brightness = brightness + fadeAmount;

  // reverse the direction of the fading at the ends of the fade:
  if (brightness <= 0 || brightness >= 255) {
    fadeAmount = -fadeAmount;
  }
  // wait for 30 milliseconds to see the dimming effect
  delay(30);
}

设置下载配置,分别是板卡型号、端口和DIO模式三处
在这里插入图片描述

⛳烧录时选择flash模式为DIO,默认是选择QIO模式的,如果是选择QIO模式烧录了程序,板子是无限重启,串口会不断打印系统重启信息。这一点切记!!!

点击烧录D4会呼吸变化

3.2 读取模拟量Analog

在文件实例基础中选择AnalogRead
在这里插入图片描述
查看对应模拟量端口匹配IO00~04,源码修改如下,即可实现A1、A2端口读取模拟量并打印效果


void setup() {
  // initialize serial communication at 115200 bits per second:
  Serial.begin(115200);
  
  //set the resolution to 12 bits (0-4096)
  analogReadResolution(12);
}

void loop() {
  // read the analog / millivolts value for pin 2:
  int analogValue = analogRead(1);
  int analogVolts = analogReadMilliVolts(2);
  
  // print out the values you read:
  Serial.printf("ADC analog value = %d\n",analogValue);
  Serial.printf("ADC millivolts value = %d\n",analogVolts);
  
  delay(100);  // delay in between reads for clear read from serial
}

可用铅笔触碰IO01和IO02,看其变化,打印效果如下
在这里插入图片描述

4. 总结

通过esp32c3配置arduino IDE教程,我们可以让Arduino作为主心骨,其他外设有机衔接从而完成功能,进而丰富我们的生活。

从而实现对外部世界进行感知,充分认识这个有机与无机的环境,科学地合理地进行创作和发挥效益,然后为人类社会发展贡献一点微薄之力。

  1. 我会持续更新对应专栏博客,非常期待你的三连!!!
  2. 如果鹏鹏有哪里说的不妥,还请大哥大姐们多多评论指教!!!
  3. 下面有我的群推广,欢迎志同道合的朋友们加入,期待与你的思维碰撞

你可能感兴趣的:(arduino学习,Arduino,esp32c3,环境搭建)