主题中讨论的其他器件:AFE4300
大家好、
我正在努力通过 SPI 将 AFE4300 (使用 PDK 进行评估)与 MediaTek IOT 芯片组76x7相连。 我所面临的基本问题是无法读取寄存器、RDY 引脚也不会变得很低、让我读取 ADC 数据寄存器。
下面是我迄今所做的工作的简要总结。
a.电源[PDK 的 J102连接器]:-
我使用 MMB3板为 AFE4300 PDK 供电、并通过 SPI 连接 MediaTek 芯片组。 在此之前、我确保 PDK 可以使用 TI 提供的 GUI 应用。
b. SPI 连接[PDK 的 J103连接器 ]:-
SPI CLK:- 2MHz (在 AFE4300 PDK 中使用)
2. RDY :-输入 GPIO 引脚(始终显示为高电平)
3. RST:-输出 GPIO 引脚(工作正常)
4. mosi:-我可以在这条线上看到数据。
5. MISO:-它默认为低电平,但当执行写操作或执行读操作时,它会变为高电平,因此输出始终为(0xFFFF)
6. STE:-在通过 SPI 访问 AFE4300期间,工作正常,工作正常。
7. AFE CLK:- 1MHz,如数据表中所建议。
8. GND:-连接至 MediaTek 芯片组开发板接地引脚
c. MediaTek 中 SPI 控制器的 SPI 配置(使用 MediaTek LinkitSDK 4.5.1V 中提供的 HAL SPI 驱动程序、对于76x7为公共配置):-
MSB 位优先。
SPI CLK -> 2MHz
CLK 相位= 1.
4. CLK 极性= 0
D.软件驱动程序和测试:-
我可以通过逻辑分析仪看到我尝试写入的任何数据。
要开始初始化,我已将 afe4300寄存器配置为以下值:-
WRITE_REG (REG_ADC_CTRL1、0x5140);
WRITE_REG (REG_MISC_R1、0x0000);
WRITE_REG (REG_MISC_R2、0xFFFF);
WRITE_REG (REG_DEV_CTRL1、0x0004);//关闭两个信号链
WRITE_REG (REG_ISW_MUX、0x0000);
WRITE_REG (REG_VSEN_MUX、0x0000);
WRITE_REG (REG_IQ_MODE、0x0000);
WRITE_REG (REG_WS_CTRL、0x0000);
WRITE_REG (REG_BCM_DAC_FREQ、0x0040);
WRITE_REG (REG_DEV_CTRL2、0x0000);
WRITE_REG (REG_ADC_CTRL2、0x0011);
WRITE_REG (REG_MISC_R3、0x00C0);
以下是逻辑分析仪的输出:-
但是、当我尝试读取同一个寄存器时、它始终如逻辑分析仪中所示。 另外,当我在配置后尝试读取 ADC 寄存器以进行重量测量时,如下面所述。 就绪引脚未将其状态更改为低电平。
配置体重秤测量值:-
WRITE_REG (REG_ADC_CTRL1、0x4120);//差分测量模式、32SPS
WRITE_REG (REG_DEV_CTRL1、0x0005);//加电称重秤信号链
WRITE_REG (REG_ADC_CTRL2、0x0000);//ADC 选择称重秤的输出
WRITE_REG (REG_WS_CTRL、WS_CTRL_PGA_GAIN (DAC_GAIN_3));//增益= 3 DAC 偏移=-1
WRITE_REG (REG_BCM_DAC_FREQ、0x0040);//频率=默认值
WRITE_REG (REG_IQ_MODE、0x0000);//禁用 IQ 模式
WRITE_REG (REG_ISW_MUX、0x0000);//通道 IOUTP1和 IOUT0
WRITE_REG (REG_VSEN_MUX、0x0000);//通道 VSENSEP1和 VSENSEN0
我也关注了 E2E 论坛中发布的几个相关问题。
在这方面,我要求得到帮助和指导。
提前感谢您的帮助
谢谢你
此致、
Nitish

