本帖最后由 babyrabbit 于 2018-5-11 21:42 编辑
用stm32配置的cs5530,配置代码如下,现在采集的数,放大一倍,能稳定到零点几个毫伏,精度不够。看芯片手册,需要进行校准,没太看懂,那个CC2-CC0位没找到。请问大神这个怎么具体执行校准啊,还有就是硬件电路输入信号部分我直接输入的,有什么滤波电路推荐吗?(除了算法滤波) // 设置偏移寄存器
Write_CS5530_Register(Write_OFFSET,0x00000000);
delay_ms(50);
// 设置增益寄存器
Write_CS5530_Register(Write_GAIN,0x0f000000);
delay_ms(50);
// 设置配置寄存器,设置参考电压,信号极性,字速度等等
//Write_CS5530_Register(Write_CONFIG,0x02004800);
//Delay_ms(50);
temp = 0x00;
temp |= UNIPOLAR_MODE; // 单极性
temp |= LINE_FREQ_60; // 滤波选择缺省滤波字
temp |= DATARATE_25;
temp |= NORMAL_MODE; // 普通操作
temp |= VREF_HIGH; // VREF_HIGH 为 2.5V 基准; VREF_LOW 为 1-2.5V 基准
temp |= CR_A0_0;
temp |= CR_A1_0;
temp |= TURN_OFF_300NA; // 不激活电流源
Write_CS5530_Register(Write_CONFIG,temp);
delay_ms(50);
Write_CS5530( SYSTEM_OFFSET_CAL); //执行系统偏移校准
Write_CS5530( SYSTEM_GAIN_CAL); // 执行系统增益校准
//启动转换
Write_CS5530( START_CONTINUOUS + NORMAL_CONVERSION); // 单次转换
|