news 2026/8/10 22:51:18

A2B AD2433 ADXL317调试总结

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
A2B AD2433 ADXL317调试总结

关于A2B AD24xx调试步骤:

  • 编译 ADI 代码:首先需要下载 ADI 提供的 A2B 软件开发工具包(SDK),A2B 软件 SDK 官方下载,

  • 文中提到的所有代码和文档都在这款软件的安装路径下。然后按照SDK提供的AE_09_A2B_Stack_UserGuide.pdf文档编写需要的代码的Makefile,并将代码加入到自己驱动中。

  • 必须的函数实现:我们需要实现 I2C 和 time 功能接口。这些接口通常由硬件提供商或芯片制造商提供,然后需要参考 ADI 提供的AE_09_A2B_Stack_UserGuide.pdf文档3.2.1章节,按照说明实现adi_a2b_pal.c中的一些接口,建议复制 a2b-bf 目录下东西作为自己开发基线。

  • SigmaStudio+ 导出配置:SigmaStudio+ 是一款音频处理软件,可以用于对 AD24xx 系列芯片进行配置。在使用 SigmaStudio+ 导出之前,需要先配置 A2B 链路,然后导出生成.c、.h 或者 .xml文件。这些需要参考 SigmaStudio+ 相关文档,按照说明完成。

设备发现流程

I2S Global Configuration Register

Address: 0x41

I2S/TDM Port Programming Concepts

Driving Edge ≠ Sampling Edge

Bit SettingData and Clock Format
A2B_I2SGCFG.EARLY = 0SYNC 引脚在数据通道 0 的 MSB(最高有效位)所在的周期内发生变化Early Sync
A2B_I2SGCFG.EARLY = 1早期 SYNC 模式。SYNC 引脚在数据通道 0 的 MSB 前一个周期发生变化
A2B_I2SGCFG.ALT= 0脉冲 SYNC 模式。SYNC 引脚在每个采样周期开始时激活一个 BCLK 周期Sync Mode
A2B_I2SGCFG.ALT= 150% 占空比 SYNC 模式。SYNC 引脚在每个采样周期开始时为高电平,在周期中间为低电平
A2B_I2SGCFG.INV = 0SYNC 信号为高电平有效模式。SYNC 的上升沿对应第一个通道(通道 0)Sync Polarity
A2B_I2SGCFG.INV = 1SYNC 信号为低电平有效模式。SYNC 的下降沿对应第一个通道(通道 0)
A2B_I2SCFG.TXBCLKINV = 0DRX 和 SYNC 引脚在 BCLK 的上升沿采样(Driving Edge)DTXn Change BCLK
A2B_I2SCFG.TXBCLKINV = 1DTX 和 SYNC 引脚在 BCLK 的上升沿发生变化
A2B_I2SCFG.RXBCLKINV = 0DRX 和 SYNC 引脚在 BCLK 的下降沿采样(Sampling Edge)DRXn Sampling BCLK
A2B_I2SCFG.RXBCLKINV = 1DTX 和 SYNC 引脚在 BCLK 的下降沿发生变化

如 “I²S/TDM8 示例时序” 图所示,TDM 通道数据采用 MSB 优先格式(最高有效位在前)。当通过 A²B 总线交换的数据不是恰好 32 位时,收发器会期望输入的 TDM 数据通道以 MSB 优先格式到达,并忽略任何低位数据。

在输出到本地节点时,收发器会将接收到的 A²B 槽位数据以 MSB 优先格式呈现给 I²S/TDM 端口,并将未使用的低位填充为零。例如,如果 A²B 槽位配置为 12 位数据(上行槽位设置 A2B_SLOTFMT.UPSIZE = 1,或下行槽位设置 A2B_SLOTFMT.DNSIZE = 1),则 12 位输入数据必须在 TDM 通道中左对齐,输出数据由 12 位 A²B 槽位数据加上 4 个零位组成。

A²B 收发器支持 SYNC 引脚在通道 0 的 MSB 位所在周期或提前一个周期发生变化。在 早期 SYNC 模式下,SYNC 信号始终提前一个位到达,并可重新相位以匹配数据在 SYNC 信号相关边沿之后一个位到达的情况。

A²B 收发器支持对信号的驱动边沿和采样边沿进行独立设置,可通过 A2B_I2SCFG 寄存器进行配置。

Driving Edge ≠ Sampling Edge图展示了 I²S/TDM 接口的典型时序,其中输出数据在 BCLK 的一个边沿提供,输入数据在相反的边沿采样(即A2B_I2SCFG.TXBCLKINV ≠ A2B_I2SCFG.RXBCLKINV)

⚠️ 注意: 较高的TDM模式(如TDM16或TDM32)会将位时钟(BCLK)速率提升至可能引发建立时间和保持时间冲突的水平,从而导致I2S/TDM操作异常。对于高TDM速率的情况,需针对TDM接口执行时序分析,同时综合考虑A2B收发器和接口设备的时序要求与开关特性。对于高 TDM 速率,应对 TDM 接口进行时序分析,考虑 A²B 收发器与所连接设备的时序要求和开关特性。有关 A²B 收发器的时序要求和开关特性,请参阅产品数据手册。

在较高的 TDM 模式下,可以通过提前driving edge或延迟sampling edge来获得有效的设置时间余量,因为driving edgesampling edge的设置是完全可配置的。

AD2433(TDM8)

/dev/i2c-16writedevice(0x68)reg=0x12 018,val=0x04(0000 0100),cnt=1sleep0x19ms /dev/i2c-16readdevice(0x68)reg=0x16 022,val=0x00(0000 0000),cnt=1/dev/i2c-16readdevice(0x68)reg=0x02 002,val=0xAD(10101101),cnt=3/dev/i2c-16readdevice(0x68)reg=0x03 003,val=0x33(0011 0011),cnt=3/dev/i2c-16readdevice(0x68)reg=0x04 004,val=0x20(0010 0000),cnt=3/dev/i2c-16readdevice(0x68)reg=0x5E 094,val=0x00(0000 0000),cnt=1/dev/i2c-16writedevice(0x68)reg=0x12 018,val=0x84(10000100),cnt=1sleep0x19ms /dev/i2c-16readdevice(0x68)reg=0x16 022,val=0x80(10000000),cnt=1/dev/i2c-16readdevice(0x68)reg=0x17 023,val=0xFF(11111111),cnt=1Interrupt Source: Master - Interrupt Type: Ignorable interrupt(Code:255)sleep0x19ms /dev/i2c-16readdevice(0x68)reg=0x16 022,val=0x00(0000 0000),cnt=1/dev/i2c-16readdevice(0x68)reg=0x02 002,val=0xAD(10101101),cnt=3/dev/i2c-16readdevice(0x68)reg=0x03 003,val=0x33(0011 0011),cnt=3/dev/i2c-16readdevice(0x68)reg=0x04 004,val=0x20(0010 0000),cnt=3/dev/i2c-16writedevice(0x68)reg=0x1B 027,val=0x77(0111 0111),cnt=3/dev/i2c-16writedevice(0x68)reg=0x1C 028,val=0x78(01111000),cnt=3/dev/i2c-16writedevice(0x68)reg=0x1D 029,val=0x0F(00001111),cnt=3/dev/i2c-16writedevice(0x68)reg=0x96150,val=0x02(0000 0010),cnt=1/dev/i2c-16writedevice(0x68)reg=0x1A 026,val=0x01(0000 0001),cnt=1/dev/i2c-16writedevice(0x68)reg=0x0F 015,val=0x95(10010101),cnt=1/dev/i2c-16writedevice(0x68)reg=0x12 018,val=0x81(10000001),cnt=1sleep0x01ms /dev/i2c-16readdevice(0x68)reg=0x16 022,val=0x00(0000 0000),cnt=1/dev/i2c-16readdevice(0x68)reg=0xA5165,
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/10 22:50:14

2026年GEO营销系统哪个牌子口碑好?从认知辨析到品牌测评

当用户向AI提问“哪个品牌更值得选”时,答案里出现的是你的品牌,还是竞争对手的名字?这正在成为决定企业线上获客效率的核心变量。GEO(生成式引擎优化)已从营销可选项升级为品牌必选项。然而,面对市场上能力…

作者头像 李华
网站建设 2026/8/10 22:45:53

从js闭包谈到作用域、作用域链、执行上下文、内存管理

文章目录 作用域 函数作用域和全局作用域 块级作用域和暂时性死区 执行上下文和调用栈 代码执行的两个阶段 调用栈 闭包 内存管理 内存泄漏场景举例 浏览器垃圾回收 如何避免内存泄漏 如何利用闭包实现单例模式 ✍创作者:全栈弄潮儿 🏡 个人主页: 全栈弄潮儿的个人主页 🏙…

作者头像 李华
网站建设 2026/8/10 22:45:49

KernelSU WebUI终极指南:让Android模块管理像打开网页一样简单

KernelSU WebUI终极指南:让Android模块管理像打开网页一样简单 【免费下载链接】KernelSU A Kernel based root solution for Android 项目地址: https://gitcode.com/GitHub_Trending/ke/KernelSU 你是否曾因Android模块配置的复杂性而感到困惑?…

作者头像 李华
网站建设 2026/8/10 22:44:37

好“哪些资料能入库”

“ RAG 不是“资料存储系统”,而是企业认知筛选系统。 很多企业做 RAG,第一步就走偏了。 不是模型没选对,也不是向量库不够强,而是企业一开始默认了一个错误前提: 只要资料够多,AI 就能把知识库做出来。…

作者头像 李华
网站建设 2026/8/10 22:43:53

GSE:魔兽世界终极宏编辑器完整指南 - 告别繁琐按键操作

GSE:魔兽世界终极宏编辑器完整指南 - 告别繁琐按键操作 【免费下载链接】GSE-Advanced-Macro-Compiler GSE is an alternative advanced macro editor and engine for World of Warcraft. 项目地址: https://gitcode.com/gh_mirrors/gs/GSE-Advanced-Macro-Compi…

作者头像 李华