蓝牙音频模块IIS数传BLE模块I2S音频总结说明

一、简介

I2S音频的接口包含MCLK、BCK、LRCK、SDATA

1、BT401模块音频输出,既支持DAC立体声输出,同时也支持I2S输出。只能二选一。

2、但是请注意,虽然BT401模块是一样,但是I2S输出版本的固件和DAC输出的固件是不同的

3、I2S的输出,支持主或者从。但是目前我们开发的固件,只支持BT401作为主机使用

二、问题

1.1测试环境硬件说明[BT401测试DEMO板 + PCM5102A]

左图是对应的测试 环境   。。  右图是BT401所使用到IO口的定义

演示的效果如下链接:https://v.qq.com/x/page/s0861wjlidg.html

 

注意:如果使用I2S版本的BT401模组,那么模组的一些IO口的定义就有变化 ---  如上右图

UART口,就变成了PA3[TX]  和  PA4[RX]   其中PA3接MCU的RX

1.2实测I2S正常输出的波形如下:【目的是方便调不通的时候对比看看】

   

 

2、实测IIS音频基础信息说明:

1、好多IC的IIS脚位标注都不按照标准来,给初次使用IIS的朋友带来麻烦,我也是如此

2、IIS的标准接口如下:

(1)、数据:输入或者输出数据,一般的DSP芯片标注为:SDATA

(2)、位时钟 (BitcLOCk,BCK):确立数据流中两个相邻位之间边界的信号。JL叫SCLK

(3)、左/右时钟 (LRCK)/字时钟 (Wordclock):一个在采样速率下运行、占空比为 50% 的慢时钟,它确立数据流中两条相邻通道(左和右)之间的边界。注意有的IC叫WCK,有的叫LRCK。。他们是同一个意思。

3、IIS是既可以做主,也可以做从的,目前我们的版本只做了“主机”

原文地址:https://www.cnblogs.com/qyvhome/p/11040559.html

时间: 2024-08-04 01:55:08

蓝牙音频模块IIS数传BLE模块I2S音频总结说明的相关文章

解决"System.AccessViolationException”类型的未经处理的异常在 未知模块(IIS Worker Process 已停止工作)导致无法连接远程数据库的问题

解决方法: 用管理员身份运行CMD,输入netsh winsock reset并回车(注意,必须是已管理员身份运行,这个重置LSP连接) 解决"System.AccessViolationException"类型的未经处理的异常在 未知模块(IIS Worker Process 已停止工作)导致无法连接远程数据库的问题

使用.NET Framework开发IIS 7.0模块和处理程序拦截请求实现跳转

扩展IIS的两种方法:模块与处理程序. 模块,类似于以前的IIS版本中的ISAPI筛选器,它参与每个请求处理.IIS中一些现成的模块包括身份验证模块(用于处理请求的身份验证状态),压缩模块(用于压缩返回响应)以及日志记录模块(用于将有关请求的信息记录到请求日志中).模块是一个类,该类需要实现System.Web.IHttpModule接口,然后就可以使用System.Web中的API参与asp.net的请求处理. 处理程序,类似于以前iis版本中的ISAPI扩展,负责处理请求并生成特定内容类型的

I2S音频总线学习

IIS音频总线学习(一)数字音频技术 一.声音的基本概念 声音是通过一定介质传播的连续的波. 图1 声波 重要指标: 振幅:音量的大小 周期:重复出现的时间间隔 频率:指信号每秒钟变化的次数 声音按频率分类: 图2 声音的频率(语音信号频率范围:300Hz-3kHz) 声音的传播携带了信息,它是人类传播信息的一种主要媒体. 声音的三种类型: 波形声音:包含了所有声音形式 语音:不仅是波形声音,而且还有丰富的语言内涵(抽象→提取特征→意义理解) 音乐:与语音相比,形式更规范.音乐是符号化的声音.

第三百二十三节,web爬虫,scrapy模块以及相关依赖模块安装

第三百二十三节,web爬虫,scrapy模块以及相关依赖模块安装 当前环境python3.5 ,windows10系统 Linux系统安装 在线安装,会自动安装scrapy模块以及相关依赖模块 pip install Scrapy 手动源码安装,比较麻烦要自己手动安装scrapy模块以及依赖模块 安装以下模块 1.lxml-3.8.0.tar.gz (XML处理库) 2.Twisted-17.5.0.tar.bz2 (用Python编写的异步网络框架) 3.Scrapy-1.4.0.tar.gz

ldd3-2 构造和运行模块:Hello World模块笔记

实验环境: 按照之前的搭建方法,已经在Ubuntu 5.04版本上构建了linux原始的2.6.10版本内核树: GCC是用的安装镜像自带的版本: 一切准备就绪后对虚拟机做了快照,防止内核损坏: 因为Ubuntu 5.04虚拟机下编程很麻烦,所以编码和调试都不在虚拟机下运行了: 编辑在windows下运行,然后把代码文件通过Xftp传输到虚拟机里: 调试的话通过Xshell: 笔记基本是按照书上小结的标题来的,每个标题能做实验的就做实验,理论性的就小结一下,不易过多记忆,因为没代码实践,理论也理

python基础知识8——模块1——自定义模块和第三方开源模块

模块的认识 模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要多个函数才能完成(函数又可以在不同的.py文件中),n个 .py 文件组成的代码集合就称为模块. 如:os 是系统相关的模块:file是文件操作相关的模块 模块分为三种: 自定义模块 内置模块 第三方开源模块 自定义模块 1.定义模块 2.导入模块 Python之所以应用越来越广泛,在一定程度上也

python模块学习:os模块

一.os模块概述 Python os模块包含普遍的操作系统功能.例如文件的复制.创建文件及文件夹... 二.常用方法 1.os.listdir()   返回指定目录下的所有文件和目录名. 2.os.remove()  删除一个文件. 3.os.system()  运行shell命令. 4.os.path.split()   函数返回一个路径的目录名和文件名 5.os.path.isfile()和os.path.isdir()   函数分别检验给出的路径是一个文件还是目录,返回值分别为Ture或F

seajs实现JavaScript 的 模块开发及按模块加载

seajs实现了JavaScript 的 模块开发及按模块加载.用来解决繁琐的js命名冲突,文件依赖等问题,其主要目的是令JavaScript开发模块化并可以轻松愉悦进行加载. 官方文档:http://seajs.org/docs/#docs 首先看看seajs是怎么进行模块开发的.使用seajs基本上只有一个函数"define" fn.define = function(id, deps, factory) { //code of function- } 使用define函数来进行定

Python/模块与包之模块

Python/模块与包之模块 1.什么是模块? 模块就是py文件 2.为什么要用模块? 如果在解释器上进行编码,把解释器关闭之前写的文件就不存在了,如果使用模块的话就能永久保存在磁盘中. 3.如何使用模块? 3.1 import    通过import导入要使用的模块 1 #spam.py 2 print('from the spam.py') 3 4 money=1000 5 6 def read1(): 7 print('spam->read1->money',1000) 8 9 def