物联网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)  
相关推荐
xiami_world5 分钟前
Xmind、Miro、博思白板AI怎么选?思维导图/流程图自动生成
人工智能·ai·信息可视化·流程图·xmind
逐步前行5 分钟前
ESP32-S3-PCNT(脉冲计数控制器)
单片机·嵌入式硬件
会周易的程序员7 分钟前
STVM OSAL 层设计方案
物联网·iot·软plc·iec61131·stvm·open plc
wp123_19 分钟前
圆盘拨动电位器机电转换原理,国内外产品性能与成本比拼
人工智能·科技·硬件工程
数字新视界20 分钟前
国产信创动环监控系统的未来趋势分析
物联网·3d·数字孪生·三维可视化·数据可视化
小师兄吃牛肉27 分钟前
Java语法 | 多重循环
java·开发语言·python
会周易的程序员33 分钟前
STVM OSAL 层架构设计文档
c++·物联网·嵌入式·虚拟机·iot·软plc·iec61131
蜡台40 分钟前
AI Agent 架构终极教程:从原理分层、四大范式到生产级落地实战
网络·人工智能·架构
乐维_lwops43 分钟前
2026选择运维监控系统时应该重点考察哪些功能?
大数据·运维·人工智能
咖丨喱1 小时前
【中断与收包】
单片机·嵌入式硬件