ESP32 祝大家 端午安康
最近痴迷于研究物联网开发,经过几天的摸索,最终把小红书刷成了学习 Ardunio 物联网开发的学习社群。
经过对比和大佬推荐,最终选择了ESP32-WROOM-32
这个型号的开发版加IIC OLED 1306
的0.96
寸屏幕。
知识点: IIC:IIC 是一种硬件设备间常用的接口通讯协议,全称是 Inter-Integrated Circuit,也可以写为 I2C。他的设计时的理念是:信号线尽量少并且速率要尽量高。信号线少,可以减少引脚占用,这对早期的芯片(引脚很少)的很重要。 1306:SSD1306 芯片驱动的 OLED 屏幕。他的分辨率是 128*64,意思就是横向有 128 个像素点,纵向有 64 个。
ESP32+OLED
还买了麦克风和喇叭,还没到货,第一次玩,先研究下屏幕使用不。
我本身是一名java程序员,对于面向对象编程是信手拈来,所以针对ESP32编程,我选择的是MicroPython。
关于开发环境的搭建建议搭建查看极客侠的教程,具体教程地址,我会在文末给出。这里只列出必须的步骤。
Thonny
IDEESp32 Thonny 开发环境
虽然教程上有说明如何点亮OLED屏幕,但是型号有差异,对于新手来说怎么接线是最大的问题,为了快速实验,我们请出我们的万能老师ChatGPT出场。
使用GPT4o提问:
esp32开发版接 iic oled 1306 屏幕应该如何接线,并且给出显示hello world的micropython代码
GPT4O回复
ESP32 接线 IIC OLED 1306 屏幕
要将 ESP32 开发板连接到 IIC OLED 1306 屏幕,请按照以下接线图进行连接:
VCC: 连接到 ESP32 的 3.3V 电源引脚
GND: 连接到 ESP32 的 GND 引脚
SCL: 连接到 ESP32 的 GPIO 22 (默认 I2C SCL 引脚)
SDA: 连接到 ESP32 的 GPIO 21 (默认 I2C SDA 引脚)
注意看上面的连线配对,信息,我们按照默认22 21进行连接
ESP32 连线
ESP32 引脚示意
首先,确保你的 ESP32 开发板已经安装了 MicroPython 固件。然后,通过 USB 连接 ESP32 到电脑,并使用串口终端或 IDE(如 Thonny)进行编程。
安装 ssd1306
模块:
在 REPL 中执行以下命令下载并安装 ssd1306
模块:
import upip
upip.install('micropython-ssd1306')
使用此命令需要ESP32联网
要将 ESP32 开发板连接到 IIC OLED 1306 屏幕,请按照以下接线图进行连接:
首先,确保你的 ESP32 开发板已经安装了 MicroPython 固件。然后,通过 USB 连接 ESP32 到电脑,并使用串口终端或 IDE(如 Thonny)进行编程。
python复制代码from machine import Pin, I2C
import ssd1306
# 设置 I2C 引脚
i2c = I2C(scl=Pin(22), sda=Pin(21))
# 设置 OLED 显示器, 128x64 为屏幕分辨率
oled_width = 128
oled_height = 64
oled = ssd1306.SSD1306_I2C(oled_width, oled_height, i2c)
# 清屏
oled.fill(0)
# 显示 "Hello, World!"
oled.text("Hello, World!", 0, 0)
# 更新显示
oled.show()
这段代码会初始化 I2C 接口并设置 OLED 显示器,然后在屏幕上显示 "Hello, World!"。
ssd1306
模块:
在 REPL 中执行以下命令下载并安装 ssd1306
模块:
python复制代码import upip
upip.install('micropython-ssd1306')
恭喜你,成功了。
我也是刚刚接触物联网开发,文中有不正确的地方欢迎指正。
请关注我的公众号,回复ESP32
获取本文中提到的所有代码和工具。期待你的留言与互动!
最后祝大家端午安康。