欢迎光临散文网 会员登陆 & 注册

Esp8266与Esp32-C3 从硬件到应用开发的区别是什么

2021-10-09 10:40 作者:启明云端  | 我要投稿

ESP8266 & ESP32-C3硬件区别

从上表可以看出ESP32-C3和ESP8266在硬件上的区别:

Ø ESP32-C3 搭载 RISC-V 32 位单核处理器,而ESP8266EX 集成的是 32 位 Tensilica 处理器;

Ø 工作电压方面,ESP32-C3也略低于ESP8266;

Ø GPIO口,ESP32-C3 具有 22 个可编程 GPIO 管脚、内置 400 KB SRAM,支持通过 SPI、Dual SPI、Quad SPI 和 QPI 接口外接多个 flash; 而ESP8266只有17个GPIO 管脚、内置160KB SRAM;只有两个SPI接口;

Ø ESP32-C3集成 2.4 GHz Wi-Fi和长距离的 Bluetooth 5 (LE);而ESP8266只集成了集成 2.4 GHz Wi-Fi 

附:ESP32-C3和ESP8266都是支持应用乐鑫成熟的物联网开发框架 ESP-IDF;支持在从机模式下工作,可通过 ESP-AT 和 ESP-Hosted SDK 为外部主机 MCU 提供 Wi-Fi 或 Bluetooth LE 连接功能。

ESP8266 & ESP32-C3环境搭建的区别

工具链设置

1. ESP8266 ESP32-c3 环境变量设置 区别

ESP8266 准备工具
sudo apt-get install gcc git wget make libncurses-dev flex bison gperf python python-serial

ESP32-c3 准备工具

ESP8266 准备sdk :

git clone --recursive 

https://github.com.cnpmjs.org/espressif/ESP8266_RTOS_SDK.git

输入 git submodule update --init --recursive更新 

需要多次尝试直到完全克隆

ESP32-c3 :
mkdir esp
cd ./esp 
git clone --recursive https://github.com/espressif/esp-idf.git
克隆文件到当面路径下,也就是刚刚创建的文件夹esp

输入 git submodule update --init --recursive更新 ,需要多次尝试直到完全克隆.

设置工具链及环境变量:

ESP8266:
cd ~/Desktop/esp8266/ESP8266_RTOS_SDK
python -m pip install --user -r ./requirements.txt
ESP8266 Linux 工具链可从乐鑫网站下载:
对于 64 位 Linux:
https://dl.espressif.com/dl/xtensa-lx106-elf-gcc8_4_0-esp-2020r3-linux-amd64.tar.gz
对于 32 位 Linux:
https://dl.espressif.com/dl/xtensa-lx106-elf-gcc8_4_0-esp-2020r3-linux-i686.tar.gz
cd ~/Desktop/esp8266;
tar -xzf ~/Downloads/xtensa-lx106-elf-linux64-1.22.0-100-ge567ec7-5.2.0.tar.gz;

gedit ~/.bashrc
将工具链写入环境
alias get_lx106='export PATH="$PATH:/home/yonghu/Desktop/esp8266/xtensa-lx106-elf/bin"'
alias get_sdk='export IDF_PATH="~/Desktop/esp8266/ESP8266_RTOS_SDK"'

设置python环境 :
python2.7 -m pip install --user -r ./ESP8266_RTOS_SDK/requirements.txt

运行在环境中配置的指令

get_lx106
get_sdk

ESP32-c3 :
. $HOME/esp/esp-idf/export.sh
此外,如果您希望在当下命令提示符窗口使用 ESP-IDF,请使用下方代码:
复制并粘贴以下命令到 shell 配置文件中(.profile, .bashrc, .zprofile 等)
alias get_idf='. $HOME/esp/esp-idf/export.sh'
通过重启终端窗口或运行 source [path to profile],如 source ~/.bashrc 来刷新配置文件。
设置 idf.py 工具链,
这里的 ~ 表示 家目录 /home/yonghu 
然后 : ./install.sh esp32c3

接着 :.  ./export.sh esp32c3  ( esp32c3打不打无所谓)

ESP8266 & ESP32-C3 Demo测试示例

拷贝目录
cd ../
cp ESP8266_RTOS_SDK/examples/get-started/hello_world/ ./hello_world -r 

ESP32-c3:
cp ./esp-idf/examples/get-started/hello_world/ ./ -r

2.编译和烧入
ESP8266 :
配置 串口波特率为115200
make menuconfig

Y保存

插入开发板ESP8266

将设备连接到虚拟机

sudo ls /dev 显示 /dev下的usb设备

改变该端口权限

烧录:

ESP32-C3
cd hello_world 跑到hello_world 目录下 

idf.py build 编译该工程

ls /dev/ttyUSB* 显示当前串口连接 

得到 端口号为 /dev/ttyUSB0
每次烧入前必须输入sudo chmod 777 改变该USB的权限
idf.py -p PORT [-b BAUD] flash  烧入即可看见

3. 观察串口打印信息

打开串口
ESP8266:
make ESPBAUD=115200  monitor 

ESP32-c3 :

idf.py -p (PORT) monitor
这个PORT即端口号, 如上则是 /dev/ttyUSB0 命令 : idf.py -p /dev/ttyUSB0 monitor

就可以看见所有打印信息













Esp8266与Esp32-C3 从硬件到应用开发的区别是什么的评论 (共 条)

分享到微博请遵守国家法律