初级会员
- 积分
- 100
- 金钱
- 100
- 注册时间
- 2020-7-29
- 在线时间
- 28 小时
|
楼主 |
发表于 2022-12-8 13:41:16
|
显示全部楼层
问题解决了,1248的校准参考1246的。
/*---------------------------------------------------------
执行校准---系统校准->偏移校准->增益校准
---------------------------------------------------------*/
uint8 ADS1246_Calibrate(uint8 Gain)
{
uint8 R=0,Cmd;
ADS1246_WriteReg(ADC_REG_SYS0,&Gain,1); //设置校准增益
Cmd=0x00;
ADS1246_WriteReg(ADC_REG_MUX,&Cmd,1); //恢复正常模式
ADS1246_WriteCmd(ADC_CMD_SELFOCAL); //系统偏移自校准
R|=ADS1246_WaitBusy(); //等待校准完成
Cmd=0x01;
ADS1246_WriteReg(ADC_REG_MUX,&Cmd,1); //设置AINP+AINN=(AVDD+AVSS)/2
ADS1246_WriteCmd(ADC_CMD_SYSOCAL); //系统偏移自校准
R|=ADS1246_WaitBusy(); //等待校准完成
Cmd=0x02;
ADS1246_WriteReg(ADC_REG_MUX,&Cmd,1); //设置AINP=VREF+,AINN=VREF-; for gain calibration
ADS1246_WriteCmd(ADC_CMD_SYSGCAL); //系统增益校准
R|=ADS1246_WaitBusy();
return R;
} 参考:https://blog.csdn.net/chinazhangzhong123/article/details/54151103
|
|