一、 产品概述
Adafruit 5691(ESP32‑S3 Reverse TFT Feather) 是美国Adafruit公司推出的Feather规格物联网开发板,集成ESP32‑S3无线模组、1.14英寸反向安装TFT彩屏,专为面板安装与带屏IoT原型设计,支持Arduino/CircuitPython双开发环境。
二、核心参数
- 主控:ESP32‑S3(Xtensa LX7双核,240 MHz),4 MB Flash + 2 MB PSRAM + 512 KB SRAM。
- 无线:Wi‑Fi 802.11 b/g/n(2.4 GHz)、Bluetooth 5.x BLE,模组带FCC/CE认证。
- 显示:1.14英寸IPS TFT,240×135像素,反向安装(背面出线)。
- 接口:STEMMA QT(I²C)、原生USB、GPIO排针,预留3个按键位置。
- 供电:3.3 V,支持USB/电池供电,Feather标准尺寸(51×23 mm)。
三、产品特点
1. 反向屏幕设计:TFT屏装在板背,适配面板嵌入安装,正面可贴面板/外壳。
2. 大容量存储:4 MB Flash+2 MB PSRAM,支持CircuitPython大程序与图像缓存。
3. 即插即用生态:STEMMA QT免焊传感器扩展,Adafruit IO云平台无缝对接。
4. 双编程支持:Arduino IDE与CircuitPython,适合入门到进阶开发。
5. 无线一体化:Wi‑Fi+BLE双模,覆盖IoT数据传输与蓝牙近场通信场景。
GROVE CREATOR KIT- 20 IN 1 FUNCT 是Seeed Studio推出的一款高性价比、入门级电子学习套件。它基于Grove模块化生态系统,包含了20个功能各异的输入输出模块,旨在帮助初学者快速、轻松地学习电子知识和项目开发,避免了繁琐的接线工作。
该套件兼容Arduino和Raspberry Pi两大主流平台,并提供了详细的免费教程。可以通过简单的Grove接口(4-pin统一接口)连接各个模块,非常适合用于电子原理教学和快速原型验证。
本次测评使用了esp32s3的ADC输入检测雨滴检测传感器,使用了A0引脚作为ADC输入,结果显示在OLED屏幕,并且通过串口发送到主机显示波形;接线图如下:
程序如下:
# SPDX-FileCopyrightText: 2021 ladyada for Adafruit Industries
# SPDX-License-Identifier: MIT
"""
This is an animation to demonstrate the use of Circle Setter Attribute.
"""
import gc
import time
import board
import displayio
import digitalio
from adafruit_display_shapes.circle import Circle
from analogio import AnalogIn
# 如果使用 Circuit Playground Express,可以用 cp.light
# 如果使用通用板子,使用 A0 引脚
# use built in display (MagTag, PyPortal, PyGamer, PyBadge, CLUE, etc.)
# see guide for setting up external displays (TFT / OLED breakouts, RGB matrices, etc.)
# https://learn.adafruit.com/circuitpython-display-support-using-displayio/display-and-display-bus
display = board.DISPLAY
led = digitalio.DigitalInOut(board.LED)
led.direction = digitalio.Direction.OUTPUT
# Make the display context
main_group = displayio.Group()
# Make a background color fill
color_bitmap = displayio.Bitmap(display.width, display.height, 1)
color_palette = displayio.Palette(1)
color_palette[0] = 0xFFFFFF
bg_sprite = displayio.TileGrid(color_bitmap, pixel_shader=color_palette, x=0, y=0)
main_group.append(bg_sprite)
# Setting up the Circle starting position
posx = 50
posy = 50
# Define Circle characteristics
circle_radius = 10
circle = Circle(posx, posy, circle_radius, fill=0x00FF00, outline=0xFF00FF)
main_group.append(circle)
# Define Circle Animation Steps
delta_x = 2
delta_y = 2
# Showing the items on the screen
display.root_group = main_group
adc = AnalogIn(board.A0)
while True:
value = adc.value/1000
# 关键:必须打印元组格式,且只包含数值
print((value,))
if circle.y + circle_radius >= display.height - circle_radius:
delta_y = -1
if circle.x + circle_radius >= display.width - circle_radius:
delta_x = -1
if circle.x - circle_radius <= 0 - circle_radius:
delta_x = 1
led.value = False
time.sleep(0.5)
if circle.y - circle_radius <= 0 - circle_radius:
delta_y = 1
led.value = True
time.sleep(0.5)
circle.x = 120
circle.y = int(value)
time.sleep(0.02)
gc.collect()
视频如下:
我要赚赏金
