赞
踩
主节点:A2B评估板或带有A2B主节点的电路板
其中带有A2B主节点的电路板DSP必须工作,给A2B提供音频时钟,否则A2B无法正常工作。
从节点:A2B评估板或A2B接口功放/A2B麦克风
SigmaStudio(4.4以上版本):
https://www.analog.com/en/search.html?q=SigmaStudio
安装完成后,先不要启动。
安装完成后, 检查a2b.dll 和a2bstack.dll有没有自动复制到SigmaStudio安装目录。如果没有,则需
要手动复制到SigmaStudio安装目录。
两个.dll文件位置如下:
将这两个.ll文件复制到SigmaStudio的安装目录下:
运行SigmaStudio,File->open打开如下工程:
依次点击Link->Compile->Download,如果硬件连接正常,工程中的三个组件都会变成绿色,代表通信已经成功。
注意:如果要把工程移动到其他目录,则需要连同工程目录下的xml文件夹一起移动,并保证目录结构不变。
运行SigmaStudio,File->New Project,新建一个工程,在左侧ToolBox选择AD24xx和A2B-USBi,拖拽到右侧的Hardware Configuration页面。
连接A2B-USBi和AD24xx,A2B-USBi上根据硬件设计选择对应的I2C地址,此处为7bit地址(0x68对应0xD0)。
切换到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
在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页面配置音频接口的具体格式。
音频传输设计主要有两步:
设计方法:
在原理图的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的情况。
此时把USBi的SCL、SDA和GND连接到主机内AD242x的I2C接口上。如果硬件系统连接OK,主机内
DSP正常工作,功放正常上电,点击SigmaStudio主界面的Link-Compile-Download,系统会成功连接。
如果无法连接,系统会提示具体的错误原因,可按照提示检查对应的设置。
到这里,系统应该已经可以正常工作,接下来可以进行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文件,以直接寄存器的方式写入,如下图所示:
其中:
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
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。