当前位置:   article > 正文

【A2B配置入门指南】_a2b_setup_alsa

a2b_setup_alsa

一、硬件准备

主节点:A2B评估板或带有A2B主节点的电路板
其中带有A2B主节点的电路板DSP必须工作,给A2B提供音频时钟,否则A2B无法正常工作。
从节点:A2B评估板或A2B接口功放/A2B麦克风

二、软件准备

SigmaStudio(4.4以上版本):
https://www.analog.com/en/search.html?q=SigmaStudio

三、软件setup

1. 安装SigmaStudio

安装完成后,先不要启动。

2. 安装ADI_A2B_Software

安装完成后, 检查a2b.dll 和a2bstack.dll有没有自动复制到SigmaStudio安装目录。如果没有,则需
要手动复制到SigmaStudio安装目录。
两个.dll文件位置如下:
在这里插入图片描述
将这两个.ll文件复制到SigmaStudio的安装目录下:
在这里插入图片描述

3. 运行SigmaStudio

运行SigmaStudio,File->open打开如下工程:
在这里插入图片描述
依次点击Link->Compile->Download,如果硬件连接正常,工程中的三个组件都会变成绿色,代表通信已经成功。
注意:如果要把工程移动到其他目录,则需要连同工程目录下的xml文件夹一起移动,并保证目录结构不变。
在这里插入图片描述
在这里插入图片描述

四、基于实际场景的软件设计调试

1. 软件设计调试

运行SigmaStudio,File->New Project,新建一个工程,在左侧ToolBox选择AD24xx和A2B-USBi,拖拽到右侧的Hardware Configuration页面。
连接A2B-USBi和AD24xx,A2B-USBi上根据硬件设计选择对应的I2C地址,此处为7bit地址(0x68对应0xD0)。
在这里插入图片描述

2. 原理图设计

切换到Schematic页面,按照硬件电路把对应的组件拖拽到设计区,并且连接。

Transceiver下面可以选择对应的AD24xx组件,这里以AD242x为例,组件上的下拉列表可以选择具体的芯片型号:
AD242x Master node:主机上的AD242x
AD242x Slave node:功放或者MIC上的AD242x

Peripheral device下面可以选择音频器件,主要作用是连接AD242x上的管脚,连接后会对应使能AD242x的管脚。
Source and Sink:既有音频输入也有音频输出的组件
Source:只有音频输出的组件
Sink:只有音频输入的组件
Host:用于模拟主机上的DSP
Generic:普通的I2C设备, 例如EEPROM等

Processor代表A2B-USBi或者主机里面的MCU
在这里插入图片描述

3. 音频格式设置

在Master Node上点击右键,选择Device Properties,弹出如下窗口。有三个页面可以选择:
General View:以图形化方式进行配置
Register View:以寄存器方式进行配置
Stream View:查看该节点上的音频流信息
通常使用General View即可直观的完成配置。

下方的Config and Control页用于配置A2B总线。
Up/Down Stream Settings:配置上下行的音频。
Downstream指从Mater到Slave的音频;Upstream指从Slave到Master的音频。Slot Size配置每个声道的有效位宽。
在这里插入图片描述
Audio Config页面配置音频接口的具体格式。

  1. AD242x必须与在同一电路板上的DSP或Codec芯片的I2S/TDM格式一致。
  2. 不同A2B节点的音频格式可以不同。
    主要设置选项如下:
    TDM Mode:选择一个采样周期传输的声道数,如TDM8,TDM2(I2S)。
    TDM Channel Size:每个声道内有多少个BCLK。
    Sync Mode:FS(LRCK)占空比为50%或者脉冲形式。
    Sync Polarity:FS的上升沿或下降沿开始算作第一声道。
    DRXn Sampling BCLK:AD242x的RX脚在BCLK的上升沿或下降沿读取数据。
    DTXn Change BCLK:AD242x的TX脚在BCLK的上升沿或下降沿改变数据。一般上升沿发送数据,下降沿采集数据,主机的AD242x需要跟DSP对应好。
    Early Sync:Enable代表FS后的第一个BCLK对应的数据忽略,同I2S。否则不忽略。
    Rx Interleave:Enable代表RX0是第1 3 5 7…声道,RX1是第2 4 6 8…声道;否则RX0是1 2 3 4…,RX1跟随其后。
    RX0 RX1 TX0 TX1的Enable/Disable是在画原理图的时候确定的。
    在这里插入图片描述
    按照同样方法设置A2B Slave的音频格式,需要跟功放PCB上与AD242x直连的芯片格式对应。
    在这里插入图片描述

4. 音频流设置

音频传输设计主要有两步:

  1. 定义音频流:设计几个不同ID的音频流。例如Stream0定义为48kHz,24bit,8声道;Stream1定义为48kHz,24bit,2声道。
  2. 分配音频流:把上面定义的音频流分配到系统。例如Stream0是从主机到功放,Stream1是从功放到主机。

设计方法:
在原理图的Processor0上点击右键,选择Stream Config。
在这里插入图片描述
点击+号可以新建一条音频流,自定义名称,设置好对应的属性。
在这里插入图片描述
切换到Stream Assignment页面,设置刚刚设置好的音频流的Source和Destination。勾选Auto Slot Calculate后点击Apply,然后关闭窗口。
在这里插入图片描述
再回到SigmaStudio的Schematic界面,点击Link-Compile-Connect,此时可以看到Master上已经显示总共的Up Stream和Down Stream通道数。Slave上显示了AD242x RX脚收到和TX脚发送的通道数。

在这里插入图片描述
按照之前的介绍,切换到Stream View也可以看到定义的stream的情况。
在这里插入图片描述

5. 系统运行

此时把USBi的SCL、SDA和GND连接到主机内AD242x的I2C接口上。如果硬件系统连接OK,主机内
DSP正常工作,功放正常上电,点击SigmaStudio主界面的Link-Compile-Download,系统会成功连接。
如果无法连接,系统会提示具体的错误原因,可按照提示检查对应的设置。

6. 数据导出和软件集成

到这里,系统应该已经可以正常工作,接下来可以进行A2B系统配置的导出。
后续开发如果没有USBi,可以忽略掉上一步的运行步骤,直接导出数据,集成到MCU后进行验证。
导出方式如下:
在Processor0点右键,选择Export System Config Files…
在这里插入图片描述
弹出窗口可以选择两种导出方式:
Bus Config File(BCF):导出的是.c文件,用于协议栈代码集成方式。
I2C command list:导出的是.h文件,内容是需要写入AD242x的寄存器列表,用于直接写寄存器的方式。
在这里插入图片描述
BCF格式导出.c文件替换参考代码里的adi_a2b_busconfig.c之后,系统的配置即可切换到刚刚设计的原理图了。
在这里插入图片描述
在这里插入图片描述

另外一种方式就是导出.h文件,以直接寄存器的方式写入,如下图所示:
![在这里插入图片描述](https://img-blog.csdnimg.cn/af267894b66e48b78f8227e799ebdad4.png
其中:
Include Modified A2B Registers Only:仅导出改变了的寄存器,如果是上电默认值则不导出。
Include Peripheral Configuration Data:导出原理图内其他的Codec等的配置,此处文档没有设计外部codec等的寄存器配置,一般不选择。

使用command list方式的参考程序如下图,但是这个参考程序只是刷写寄存器,并没有集成诊断等功能,需要MCU自行判断IRQ脚变化来判断是否发生了错误中断需要处理。
在这里插入图片描述

五、总结

前面所述为最基本的入门配置指导,具体各项配置的说明以及移植工作需参考a2b software安装后的文档:
AE_09_A2B_QuickStartGuide.pdf:介绍软硬件环境的搭建
AE_09_A2B_SigmaStudio_UserGuide.pdf:介绍SigmaStudio的操作
AE_09_A2B_Stack_UserGuide.pdf:介绍协议栈方式的集成

如果不需要协议栈方式,可以直接用command list初始化系统,然后根据technical reference里的流程图来设计诊断功能。
https://www.analog.com/media/en/technicaldocumentation/userguides/AD242x_TRM_Rev1.1.pdf

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号