魔改车钥匙实现远程控车:(前传)在macOS上安装使用Arduino

3,280 阅读3分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第13天,点击查看活动详情

前言

因为最近有个需求需要硬件支持,原本打算使用 Arduino Nano,后来在 Boot 大佬的建议下,买了某宇宙家的 ESP32C3 核心板,对比 Arduino Nano 价格便宜了一大半,而且自身就集成了 WIFI 和 BLE 模块,还不用另购蓝牙模块,可以说是性价比极高了。毕竟 9.9 包邮还要什么自行车?

安装

安装 Arduino IDE

下载地址:www.arduino.cc/en/software

打开上面下载地址后根据自己的系统下载需要的版本。

比如我使用的是 macOS,并且因为需要支持 ESP32C3 的芯片,所以我下载的是 Arduino IDE 2.0 RC 的 macOS 版本。

安装 ESP32 包

安装教程地址:docs.espressif.com/projects/ar…

按照上述教程中的安装方法安装即可。

一开始我以为是 macOS 不兼容,导致直接在 Arduino IDE 中添加第三方包管理地址后自动安装 ESP32 包会安装失败。

所以按照上述教程中 macOS 小节的方法,直接下载后使用脚本“手动”安装成功。

后来才意识到,自动安装失败可能是因为我电脑上没有安装 python 环境导致的。

所以各位可以先尝试直接使用 Arduino IDE 自动安装,不行再使用手动安装。

手动安装

首先,按照教程所述,先检查你的 Sketchbook location (项目文件夹地址)是否更改过。

查看方式:依次点击

“Arduino” > “Preferences” > “Sketchbook location”

中文即, Arduino IDE > 首选项 > 项目文件夹地址

然后在终端中输入代码后回车即可自动执行;

mkdir -p ~/Documents/Arduino/hardware/espressif && \
cd ~/Documents/Arduino/hardware/espressif && \
git clone https://github.com/espressif/arduino-esp32.git esp32 && \
cd esp32/tools && \
python get.py

注意把上述代码中的 ~/Documents/Arduino/ 替换成你自己设置的项目文件夹地址。

上述脚本的作用就是,在 Arduino 项目文件夹下创建 /hardware/espressif/并下载管理包文件到该文件夹中,最后执行 python 脚本安装。

注意:

  1. 电脑上需要安装 git 和 python
  2. 下载地址是 GitHub ,国内下载速度可能很慢,甚至直接下载不了,推荐使用 gitee 镜像,将 gitee 镜像地址 https://gitee.com/gengstrong/arduino-esp32 替换掉上述脚本中的 https://github.com/espressif/arduino-esp32.git 即可

TIPS:其实 GitHub 上的仓库 gitee 都有镜像,但是直接搜都是搜不到的,告诉大家一个小技巧,你只要在 gitee 中选择新建一个仓库,然后选从 GitHub 导入,输入 GitHub 仓库地址后,它就会提示你已有镜像的地址。

导入仓库.png

镜像地址.png

安装驱动

驱动下载地址:CH343 USB UART Board

我一开始就犯了个错误,导致虽然 ESP32C3 管理包安装成功了,也能够成功连接上板子,但是就是无论如何无法烧录程序,一直提示 :

A fatal error occurred: Failed to write to target RAM (result was 01070000: Operation timed out)
Upload error:上传失败:上传错误:exit status 2

上传代码错误.jpg

后来才意识到是没有安装驱动导致的。

我购买的这块板子使用的是 CH343 芯片将 TTL 串口转为 USB 接口,所以需要安装一个 CH343 的驱动。

最终 Google 找到一个驱动。下载地址在上面。直接下载安装就行。

对了,如何区分驱动是否安装成功也很简单,就看一下你的串口名称是否改变即可:

查看驱动方法.png

未安装驱动前,串口名称是类似 tty.usbmodemxxxx,安装后变为 tty.wchusbserialxxx

例如,安装驱动后,在 Arduino 中看到的串口名称:

串口地址.png

查看当前串口的方法:

cd /dev
ls tty.*

# 或者
ls cu.*

开始使用

  1. 选择开发版为 ESP32C3 Dev Module

选择开发版.png

  1. 更改设置,将 flash mode 改为 DIO,否则即使 IDE 提示代码上传成功,实际也并没有上传成功:

设置flash_mode.png

  1. Enjoy it!