作者: 孙鸿飞

104 篇文章

ESP32S3通过硬件解码
太棒了!你现在已经有: ✅ ESP32-S3✅ VS1053 音频解码模块✅ SD 卡模块✅ PAM8403 功放(放大 VS1053 输出)✅ 无源喇叭(连接 PAM8403) 我们现在就可以开始写一个完整的 MP3 播放系统,流程如下: 🔧 系统架构(数据流) less复制编辑[ESP32-S3] | ├── 读取 MP3 文件(来自 SD 卡…
ESP32实现类似对讲机功能
好嘞!我给你写一个用ESP32-S3实现的最简易UDP对讲机示例,包含: WiFi连接 I2S采集麦克风音频 UDP发送采集的音频数据 UDP接收对方音频数据并播放 按键控制“按住说话,松开听” 硬件前提 麦克风接ESP32-S3的I2S输入(I2S麦克风或模拟麦克风接ADC也行,这里用I2S麦克风示范) 扬声器接I2S或DAC输出(示例用I2S)…
C#读取WAV的头部信息
namespace ReadWav; public class ReadControl { public string FilePath { get; } public int ChunkSize { get; private set; } public int Subchunk1Size { get; private set; } public …
ESP32-S3引脚解释
图中是 ESP32-S3-WROOM 模块,以下是对各引脚不同类型含义的解释: 电源类 3V3:表示 3.3 伏特电源引脚,用于为模块及连接的外设提供 3.3V 的工作电压。 5V:表示 5 伏特电源引脚,用于输入 5V 电源 。 GND:接地引脚,是电路中的参考零电位点。 复位类 RST:复位引脚,通过对该引脚施加特定电平信号(通常是低电平脉冲)…
Arduino获取红外信号
#include <Arduino.h> #define IR_PIN 2 void setup() { Serial.begin(115200); pinMode(IR_PIN, INPUT); } unsigned long pulseDuration(bool level) { unsigned long t = micros(); w…
Arduino按钮消抖
const int buttonPin = 2; // 按钮连接的引脚 const int ledPin = 13; // LED连接的引脚 int buttonState = HIGH; // 当前按钮状态 int lastButtonState = HIGH; // 上一次按钮状态 unsigned long lastDebounceTime …
Udp组播解决多网段的问题
public class UdpControl : MonoBehaviour { // public LeftVideoControl leftControl; // public RightVideoControl rightControl; public PageControl pageControl; private UdpClient u…
Unity通过射线识别UI层
public GraphicRaycaster raycaster; public EventSystem eventSystem; private void Update() { PointerEventData pointerEventData = new PointerEventData(eventSystem); pointerEventD…
Socket Udp异步通信举例
在C#中,使用UDP接收消息也可以通过两种异步方式实现:一种是使用BeginReceive和EndReceive方法(基于APM模式),另一种是使用ReceiveAsync方法(基于TAP模式)。以下是两种方式的示例代码: 1. 使用 BeginReceive 和 EndReceive(APM模式) using Sys…