1 官网给的例程里 AFE4404_init()函数里个别寄存器的参数和规格书有严格冲突不知道该如何去配置了 具体如下:
//下边几个寄存器和datesheet有冲突
AFE4404_Reg_Write(29, 39999); // 1Dh AFE_PRPCOUNT
高8位datesheet是必须为0 但官网的例程此处是16-19位是3不是0
AFE4404_Reg_Write(50, 5475); // 32h AFE_DPD1STC PDN_CYCLE 开始
不知道PDN_CYCLE的具体作用,datesheet中无描述。此处为什么给5475它代表何种配置。
AFE4404_Reg_Write(51, 39199); //33h AFE_DPD1ENDC PDN_CYCLE 结束、
高8位datesheet是必须为0 但官网的例程此处是16-19位位3不是0,此处为什么给39199它代表何种配置。
2 官网里给的工程中
/**********************************************************************************************************/
/* AFE4404_Enable_Read AFE4404读使能 */
/**********************************************************************************************************/
void AFE4404_Enable_Read (void)
{
unsigned char configData[3];
configData[0]=0x00;
configData[1]=0x00;
configData[2]=0x01;
I2C_write (AFE4404_I2C_WRITE_ADDRESS, CONTROL0, configData, 3);
}
/**********************************************************************************************************/
/* AFE4404_Disable_Read AFE4404读关闭(可能是写的开启) */
/**********************************************************************************************************/
void AFE4404_Disable_Read (void)
{
unsigned char configData[3];
configData[0]=0x00;
configData[1]=0x00;
configData[2]=0x00;
I2C_write (AFE4404_I2C_WRITE_ADDRESS, CONTROL0, configData, 3);
}
这两个函数是不是必须的。调试过程中发现当AFE4404_Disable_Read (void)运行完后不管读哪个寄存器读到的数据都是000001只有屏蔽此函数时才会实现正常的读功能。
3 现在按照官网初始化完成后SHF7050似乎不工作(灯不亮),用万用表量相关引脚电平如下:(AFE4404供电3.0V)
IR/RD+ 3V
IR 2.34V
RD 1.77V
INP 0.9V
INM 0.9V
贵公司能提供一个AFE4404正常工作时这几个引脚的参数状态
4 ADCRDY,当采集完数据后产生一个脉冲,具体采集是否完成程序里是通过哪段代码体现的。