ubuntu18.04 esp32c3 开发环境及简单外设开发
有朋友让帮忙调一下毕设的开发,于是写了这篇。
esp32c3 pwm 小风扇 步进电机 温湿度 彩灯 还有一个 无源峰鸣器
先是开发环境配置,以 ubuntu 18.04 为例介绍配置
安装常用的开发软件包
sudo apt-get install gcc git wget make libncurses-dev flex bison gperf python python-pip python-setuptools python-serial cmake minicom
sudo apt-get install python3.8 python3-pip
ubuntu 中 ttyUSB0 没有权限的2种解决方法
1,sudo usermod -a -G dialout $USER
2,sudo vi /etc/udev/rules.d/70-snap.core.rules
KERNEL=="ttyUSB0", GROUP="uucp",MODE="0666"
下载源码,注意不能下载最新的,有问题
git clone -b release/v4.4 --recursive https://github.com/espressif/esp-idf.git
git submodule update
配置 python3.8
mkdir ~/bin && cd ~/bin
~/bin$ ln -s /usr/bin/python3.8 python
vi ~.bashrc
export PATH=~/bin:$PATH
cd esp-idf
./install.sh esp32c3
需要能正常联网,you 懂
正常安装成功以后,会提示一个
All done! You can now run:
. ./export.sh
每次进行开发前,需要先执行这个,用来初始化开发环境
source ~/esp-idf/export.sh
编译自带的 hello_world
cp ~/esp-idf/examples/get-started/hello_world/ . -rf
cd hello_world
idf.py set-target esp32c3 #设置 cpu
idf.py build #编译
idf.py -p /dev/ttyUSB0 flash #下载
使用 minicom 打开查看 程序运行情况
特别说明:如果你使用 vmware 上 的 ubuntu 18.04 进行开发,需要安装上 vmtools 否则 usb 识别会有问题。
接线要求:绝对不能双电源供电,有概率会烧电脑主板。
1,使用外置供电 维修电源 ,考虑到有线损,电压稍大一点 CV 5.3V CC 限流 2A
2,使用外置 12V 电源 或 笔记本电源 20V ,接到 7805 的左侧,7805 最大可以输入 35V,一般路由器的12V 2A 电源即可,笔记本电源一般是 19V或20V 4.5A,正反不区别,因为有4个二极管的桥式整流
3,使用 ESP32的 5V USB 供电,要求主板输出电流要大,当外设全功率工作时,电流可能带不动
4,外设单独供电,不要连接 ESP32 5V 到 7805 转换输出的 5V 上面,非常需要注意,双电源供电有概率会烧主板
外设接线:
温湿度传感器:
+ 3V3
OUT IO9
- GND
为什么会这样接呢?此模块支持 3.3V - 5V 供电,但是如果使用5V 供电,那么控制的 OUT 也是5V 电平,而ESP32 不像 STM32 可以兼容 5V IO ,所以改用 3.3V 这样可以节省一个 电平转换的电路。
RGB 灯环:
红线 5V
黑线 GND
绿线 RGB 控制输入脚 IO4
蓝线 B 按键 上拉到5V ,不需要接
无源蜂鸣器:
VCC 5V
I/O IO6
GND
PWM 调速正反转风扇:
黑线 G GND
红线 V 5V
蓝线 INA IO0
绿线 INB IO1
步进电机 ULN2003 :
- GND
+ 5V
IN1 IO3
IN2 IO10
IN3 IO8
IN4 IO2
结束,其实外设的IO 接线并没有什么限制,主要是看功能和程序中怎么样编程控制使用。
演示效果:gif 图较大,耐心等待