Post Go back to editing

AD7604-4串行SPI读值为0,4个通道一次读取,64个clk脉冲时firstdata输出16个脉冲

Thread Summary

用户在使用AD7606-4与STM32H723进行SPI通信时遇到读值全为0的问题。最终解决方案指出,必须在BUSY引脚下降沿出现之前完成数据读取。用户已确认硬件配置正确,但firstdata和outA引脚状态不正常,且hben和bytesel引脚上有1kHz幅度0.3V的波动,建议优化AD7606外围硬件电路。
AI Generated Content
Category: Hardware
Product Number: AD7606-4

设计需求:AD7606-4单次读取4路电压,循环读值

芯片渠道:贸泽

主控芯片:STM32H723

AD7606-4:Range配置为5V,基准电压2.5V, DB0~DB6接地,DB8悬空,CONVSTA、B短接接定时器PWM输出,1KHz 、占空比50%,OS0~2接H723引脚控制,CS、CLK接SPI2通讯,busy接外部中断引脚

控制逻辑:上电配置后Reset,脉宽165ns,PWM脉冲1ms定时开启转换,busy中断处理中拉低CS,开启SPI读值,SPI中断中拉高CS

遇到的问题:读值全为0,示波器测试了各引脚状态,配置引脚电压正常,CONVST、CS、CLK(单次读值64个脉冲)、busy波形正常,firstdata引脚测出单次读数时有16个脉冲,DB0、DB1也是

busy(1)+clk(2):

busy(1)+clk(2)

busy(1)+cs(2):

busy(1)+cs(2)

convst(1)+busy(2):

convst(1)+busy(2)

firstdata(1)+clk(2):

firstdata(1)+clk(2)

firstdata(1)+outA(2):

DB1(1)+DB0(2):

DB1(1)+DB0(2)

Parents Reply Children
  • BUSY 的下降沿表示转换数据已经被锁存到输出数据寄存器中,经过一个 t4 时间 后即可读取。


    在 BUSY 为高电平期间进行的数据读取,必须在 BUSY 下降沿出现之前完成

  • 是的,目前是busy外部中断下降沿触发读取,读取时clk脉冲时间在100us以内,小于1ms的开启转换间隔,芯片引脚状态只有firstdata和outA不正常,测试中出现过hben和bytesel引脚上有1khz 幅度0.3V左右的波动,割断与MCU连线,MCU引脚上电平正常,现在把重点放在AD7606外围硬件上,优化电路,增加配置引脚限流电阻和分割布局