stm32驱动AD7124调试流程
AD7124-8
本文采用低噪声、基准电压源的8通道24位 ad7124-8 ADC芯片,此芯片为spi通信。
片内寄存器
AD7124有包括通信寄存器与状态寄存器在内的15个寄存器,要了解AD7124的工作模式及其工作流程,
首先要熟悉的就是AD7124的所有寄存器。
其中,通信寄存器是一个8位的只写寄存器(注意RS),其实在每操作一个寄存的时候就已经访问了通信寄存器。
写入通信寄存器的数据决定了要访问哪一个寄存器。
其他寄存器详见手册。
通信协议
Pin 定义:
pin31: CLK
pin27: #SYNC
pin32: #CS
pin30: SCLK
pin29: DIN
pin28: DOUT/#RDY
原理设计
采用外部参考,内部提供电流,开尔文连接(具体可参照后面驱动设计)。
spi 读写时序如下:
stm32f103通信示例如下:
void AD7124_8_Write(u8 Data)
{
for( i=0;i<8;i++)
{
AD7124_8_SCLK_L;
if(Data&0x80)
AD7124_8_DIN_H;
else
AD7124_8_DIN_L;
Delay(100);
AD7124_8_SCLK_H;
Delay(100);
Data <<= 1;
}
}
u32 AD7124_8_Read(void)
{
u32 DATA;
u8 i;
DATA=0;
for( i=0;i<24;i++)
{
DATA <<= 1;
AD7124_8_SCLK_L;
Delay(180);
if(AD7124_8_DOUT)
DATA++;
AD7124_8_SCLK_H;
Delay(180);
}
Delay(180);
return DATA;
}
驱动设计
本历程驱动按如下配置:
ADC模式:
全功率模式,快速建立滤波器(Sinc4 + Sinc1滤波器),505.26SPS(两个通道轮流转换);
模拟输入:
全差分输入,启用BUFFER,PGA全部关闭;
第一路:signal1-P/N为输入;
第二路:signal2-P/N为输入;
电压基准:
外部基准1或2,启用REF_BUFP;
第一路:signal1-GND引脚为正端,GND为负端;
第二路:signal2-GND引脚为正端,GND为负端;
电流激励:
两路各100uA;
第一路:从signal1-VP输出;
第二路:从signal2-VP输出;
校准:
增益误差在环境温度下且增益为1时经过出厂校准,因此不需要执行增益为1时的内部满量程校准。
stm32f103参考程序见链接:
https://download.csdn.net/download/qq_45417394/68801347