MicroPython
本章节包含以下部分,请按需阅读:
MicroPython 入门教程
初次接触 ESP32 MicroPython 开发,想要快速上手?我们为您准备了一套通用的 ESP32 MicroPython 入门教程。
- 第 1 节 搭建开发环境
- 第 2 节 基础知识
- 第 3 节 GPIO 数字输出/输入
- 第 4 节 ADC 模拟输入
- 第 5 节 PWM 输出
- 第 6 节 UART 通信
- 第 7 节 I2C 通信
- 第 8 节 SPI 通信
- 第 9 节 Wi-Fi 基础用法
- 第 10 节 网页服务器
- 第 11 节 蓝牙
- 第 12 节 综合项目
配置开发环境
1. 烧录 MicroPython 固件和配置 Thonny
请参考 搭建 MicroPython 开发环境教程 烧录 MicroPython 固件。
2. 其他提示
-
ESP32-S3-Pico MicroPython 固件下载链接:https://micropython.org/download/ESP32_GENERIC_S3/
-
若通过 乐鑫 Flash 下载工具 为 ESP32-S3-Pico 烧录 MicroPython 固件,烧录地址为
0x0。
示例程序
MicroPython 示例程序位于 示例程序包 中。 例程大部分基于Pico-Sensor-Kit-B进行编写 为了更好的使用体验我们的固件内部集成了一个 py 文件,用于将零散的 GPIO 包装成按照 pico 引脚顺序排列。 源码如下:
from micropython import const
D0 = const(11)
D1 = const(12)
D2 = const(13)
D3 = const(14)
D4 = const(15)
D5 = const(16)
D6 = const(17)
D7 = const(18)
D8 = const(33)
D9 = const(34)
D10= const(35)
D11= const(36)
D12= const(37)
D13= const(38)
D14= const(39)
D15= const(40)
D16= const(42)
D17= const(41)
D18= const(1)
D19= const(2)
D20= const(4)
D21= const(5)
D22= const(6)
D26= const(7)
D27= const(8)
D28= const(9)
A1= const(7)
A2= const(8)
A3= const(9)
RGB_PIN= const(21)
USB_ADC= const(3)
| 示例程序 | 基础例程说明 |
|---|---|
| 01_GPIO | Blink 与 Key 示例程序 |
| 02_PWM | fade 与 Siren 示例 |
| 03_UART | uart 示例 |
| 04_SD_I2C | I2C-OLED 与 I2C-SCAN 示例 |
| 05_SPI | 驱动 Pico-LCD-1.3 示例 |
| 06_ADC | adc 示例 |
| 07_RGB | 点亮板载 RGB LED |
| 08_SYS | FLASH-SIZE、RAM-SIZE、RTC、SLEEP 和 WDT 示例 |
| 09_WIFI | 扫描周围的 wifi |
01_GPIO
程序说明
- 展示 GPIO 输入输出的使用
硬件连接
- 将ESP32-S3-Pico 接入 Pico-Sensor-Kit-B 中
- 开发板接入电脑
Blink运行效果
- Pico-Sensor-Kit-B 上的 LED 模块(连接D10)以1秒的频率闪烁
Key运行效果
- 读取 Pico-Sensor-Kit-B 上的 KEY 模块(连接D3)
- 若为低电平(按键按下)则将LED 模块(连接D10)的电平翻转
02_PWM
程序说明
- 展示 PWM 的使用
硬件连接
- 将ESP32-S3-Pico 接入 Pico-Sensor-Kit-B 中
- 开发板接入电脑
Fade运行效果
- Pico-Sensor-Kit-B 上的 BUZZER 模块(连接D12)以输出 PWM 频率在 1000Hz ,占空比为 0%-100% 之间递增或者递减
Siren运行效果
- Pico-Sensor-Kit-B 上的 BUZZER 模块(连接D12)以输出 PWM 占空比为 30% ,频率在 600-1400Hz 之间递增或者递减
03_UART
程序说明
- 展示 UART 的使用
硬件连接
- 将ESP32-S3-Pico 的 GP11 与 GP12 连接到一起
- 开发板接入电脑
Uart运行效果
- ESP32-S3-Pico 的 GP11 和 GP12 做为 UART 的 TX 和 RX 引脚,做 UART 回响
04_I2C
程序说明
- 展示 I2C 的使用
硬件连接
- 将ESP32-S3-Pico 接入 Pico-Sensor-Kit-B 中
- 开发板接入电脑
I2C-OLED运行效果
- Pico-Sensor-Kit-B 上的 OLED 模块以 I2C 通信的方式显示文字图案
I2C-SCAN运行效果
- ESP32-S3-Pico 通过 D8 和 D9 设置成 I2C 模式,扫描出 Pico-Sensor-Kit-B 上的 I2C 模块并输出相应的 I2C 地址
05_SPI
程序说明
- 展示 SPI 接口驱动 LCD 屏幕
硬件连接
-
将 ESP32-S3-Pico 接入 Pico-LCD-1.3 的扩展板
-
开发板接入电脑
按默认 SPI 引脚连接 LCD 模块
Pico-LCD-1.3运行效果
- 成功驱动 Pico-LCD-1.3 模块并显示测试内容
06_ADC
程序说明
- 展示 ADC 模拟量采样功能
硬件连接
-
使用 USB_ADC、A1、A2 和 A3 作为 ADC 输入
-
开发板接入电脑
Adc运行效果
-
依次读取 USB_ADC、A1、A2 和 A3 的电压值
-
串口输出对应采样数据
07_RGB
程序说明
- 展示 RGB LED 控制
硬件连接
-
使用板载 RGB LED
-
开发板接入电脑
RGB运行效果
- RGB LED 持续变化颜色并循环显示
08_SYS
程序说明
- 展示系统相关功能,包括 FLASH、RAM、RTC、SLEEP、WDT
硬件连接
-
仅使用 ESP32-S3-Pico 开发板
-
开发板接入电脑
FLASH-SIZE运行效果
- 输出剩余 FLASH 空间
RAM-SIZE运行效果
- 输出 RAM 使用与剩余空间
RTC运行效果
- 设置 RTC 时间并循环读取 RTC 数值
SLEEP运行效果
- 设置 ESP32-S3 深度睡眠 10 秒并自动复位
WDT运行效果
- 启用看门狗并等待看门狗复位
09_WIFI
程序说明
- 展示 WiFi 扫描功能
硬件连接
-
使用 ESP32-S3-Pico 板载 WiFi
-
开发板接入电脑
scan运行效果
- 扫描周围 WiFi 并输出相关信息