微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 硬件电路设计 > TI模拟硬件电路设计 > ADS1299的初始化问题

ADS1299的初始化问题

时间:10-02 整理:3721RD 点击:

这是我的初始化代码,初始化完毕后直接读ID结果读出来的值全是0x80或0xff或0xaa这样数值,实际1299的ID是0x3e,帮忙看一下,有什么问题?


void Stop_Read_Data_Continuous(void) //发送SDATAC指令函数
{
ads_cs_low();

SPI_WriteReadByte(SDATAC); //SDATAC(0x11)

ads_cs_high();
}


void ADS_INIT(void)
{
ads_clkselhigh(); //CLK_SEL=1,选择内部时钟

ads_powerup(); //PDWN=1

ads_startlow(); //START=0

ads_resethigh(); //RESET=1

delay_ms(1000);

ads_resetlow(); //RESET=0

delay_ms(100);

ads_resethigh(); //RESET=1

delay_ms(1);

ads_cs_high(); //CS_DISABLE

Stop_Read_Data_Continuous(); //先发送SDATAC指令
}


uint8_t ADS_Read_Version(void) //读ID函数
{
uint8_t Version_ID = 0;

ads_cs_low();

SPI_WriteReadByte(Read_ID); //Read_ID(0x20)

SPI_WriteReadByte(SINGLE_BYTE_READ_WRITE); //SINGLE_BYTE_READ_WRITE(0x00)

delay_us(10);

Version_ID = SPI_WriteReadByte(SPI_TEST_DATA); //SPI_TEST_DATA(0xDD)

ads_cs_high();

return Version_ID;
}

发送完SDATAC命令之后,没有配置寄存器1和2吗? 采用的内部参考还是外部参考?

ADS1299 datasheet Page62中给出了初始化的顺序,可以参考一下。

发送完SDATAC命令之后,配置了所有寄存器,然后才读的ID,只是我配置寄存器的部分代码我没有贴出来。采用的是内部参考电压,我有参照ADS1299 datasheet Page62中的初始化的顺序

出现这样的情况,还有什么需要特别注意的吗?

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top