物联网AI MicroPython学习之语法 I2S音频总线接口

学物联网,来万物简单IoT物联网!!

I2S 介绍

  • 模块功能:

I2S音频总线驱动模块

接口说明

I2S - 构建I2S对象

  • 函数原型:I2S(id, sck, ws, sd, mode, bits, format, rate, ibuf)
  • 参数说明:
参数 类型 必选参数? 说明
id int Y I2S音频外设模块 id:0,1
sck object Y 时钟:创建Pin对象
ws object Y 左右声道:创建Pin对象
sd object Y 数据:创建Pin对象
mode enum Y 工作模式 I2S.TX - 发射器 I2S.RX - 接收器
bits int Y 位宽 16 :16位
format enum Y 传输格式 I2S.STEREO I2S.MONO
rate int Y 采样率 44100 - 44.1Khz 22050 - 22.05Khz
ibuf int Y i2s内部收发buffer大小设置
  • 返回值:
    构建的I2S对象。

readinto - 从I2S设备读数据

  • 函数原型:readinto(buffer)
  • 参数说明:
参数 类型 必选参数? 说明
buffer array[] Y 从I2S设备读数据的buffer数据缓冲区
  • 返回值:

write - 向I2S设备写数据

  • 函数原型:write(buffer)
  • 参数说明:
参数 类型 必选参数? 说明
buffer array[] Y 向I2S设备写数据的buffer数据缓冲区
  • 返回值:
  • 代码示例
python 复制代码
from machine import I2S, Pin

# 创建I2S对象
i2s = I2S(0, sck=Pin(13), ws=Pin(14), sd=Pin(34), mode=I2S.TX, bits=16, format=I2S.STEREO, rate=44100, ibuf=40000)
# 向I2S设备写数据
i2s.write(buf)   

# 创建I2S对象
i2s = I2S(1, sck=Pin(33), ws=Pin(25), sd=Pin(32), mode=I2S.RX, bits=16, format=I2S.MONO, rate=22050, ibuf=40000) 
# 从I2S设备读数据
i2s.readinto(buf)  
相关推荐
Hong_Youth几秒前
OpenCV + YOLOv5 落地工程:视频实时计数、追踪、画线统计
opencv·yolo·音视频
墨染天姬1 分钟前
【AI】2026年4月开源视频生成模型
人工智能·音视频
XINVRY-FPGA2 分钟前
XC7VX485T-2FFG1157I Xilinx Virtex-7 FPGA
arm开发·嵌入式硬件·fpga开发·硬件工程·fpga
AI医影跨模态组学2 分钟前
EJNMMI(IF=7.6)四川大学华西医院田蓉、李康等团队:基于深度学习的PET‑CT生物标志物用于滤泡淋巴瘤早期进展预测及生存分层
人工智能·深度学习·医学·医学影像
计算机安禾4 分钟前
【数据结构与算法】第20篇:二叉树的链式存储与四种遍历(前序、中序、后序、层序)
c语言·开发语言·数据结构·c++·学习·算法·visual studio
Yao.Li5 分钟前
PVN3D ONNX 转换与测试记录
人工智能·3d·具身智能
低调小一6 分钟前
Harness Engineering:把大语言模型从“能说”变成“能稳定交付”的四层系统
人工智能·语言模型·自然语言处理·harness
m0_5648768410 分钟前
提示词工程Zero-Shot、One-Shot、Few-Shot
人工智能·深度学习·学习
GinoWi10 分钟前
Chapter 8 Python中的类
python
Thomas.Sir14 分钟前
第六章:RAG知识库开发之【深入浅出RAG使用效果评估:从指标到实践】
人工智能·python·ai·rag·效果评估