This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

ADS1247读出寄存器的值全是0 ,是坏了吗?

Other Parts Discussed in Thread: ADS1247
初始化函数
void ADS1247_init(void)
 {
		SPI2_Config();
	 	Delay_ms(2);
	        START_HIGH;	
	 	Delay_ms(2);
		CS_LOW;
	 	Delay_ms(2);
	 	RESET_HIGH;
	 	Delay_ms(2);
		while(GPIO_ReadInputDataBit(GPIOD, GPIO_Pin_8) ==1);
		SPI2_SendByte(CMD_Reset);
		Delay_ms(2);
		ADS1247WREG(Reg_MUX0,0x0A);////¹Ø±ÕµçÁ÷Ô´£¬ÕýÊäÈëͨµÀAIN1£¬¸ºÊäÈëͨµÀAIN2.
		Delay_ms(2);
		ADS1247WREG(Reg_VBias,0x00);//¹Ø±ÕÆ«Öõçѹ
		Delay_ms(2);
	  ADS1247WREG(Reg_MUX1,0x38);//ʽÖдò¿ªÄÚ²¿²Î¿¼
		Delay_ms(2);
		ADS1247WREG(Reg_SYS0,0x22);//PGA=4, 20sps
		Delay_ms(2);
		ADS1247WREG(Reg_IDAC0,0x06);//µçÁ÷Ô´µçÁ÷1ma
		Delay_ms(2);
		ADS1247WREG(Reg_IDAC1,0x03);//µÚÒ»¸ö¼¤ÀøµçÁ÷Êä³öÒý½ÅAIN0£¬µÚ¶þ¸öÊÇAIN3
		Delay_ms(2);		
		SPI2_SendByte(CMD_SYNC);
		Delay_ms(2);		
		//ADS1247_Calibrate();
		CS_HIGH;		
}

读出的寄存器值

我查了好久代码,初始化的值是没问题的,难道是芯片坏了吗?

SPI2_Config(); Delay_ms(2);  START_HIGH; Delay_ms(2); CS_LOW; Delay_ms(2); RESET_HIGH; Delay_ms(2); while(GPIO_ReadInputDataBit(GPIOD, GPIO_Pin_8) ==1); SPI2_SendByte(CMD_Reset); Delay_ms(2); ADS1247WREG(Reg_MUX0,0x0A);////¹Ø±ÕµçÁ÷Ô´£¬ÕýÊäÈëͨµÀAIN1£¬¸ºÊäÈëͨµÀAIN2. Delay_ms(2); ADS1247WREG(Reg_VBias,0x00);//¹Ø±ÕÆ«Öõçѹ Delay_ms(2);  ADS1247WREG(Reg_MUX1,0x38);//ʽÖдò¿ªÄÚ²¿²Î¿¼ Delay_ms(2); ADS1247WREG(Reg_SYS0,0x22);//PGA=4, 20sps Delay_ms(2); ADS1247WREG(Reg_IDAC0,0x06);//µçÁ÷Ô´µçÁ÷1ma Delay_ms(2); ADS1247WREG(Reg_IDAC1,0x03);//µÚÒ»¸ö¼¤ÀøµçÁ÷Êä³öÒý½ÅAIN0£¬µÚ¶þ¸öÊÇAIN3 Delay_ms(2);// ADS1247WREG(Reg_GPIOCFG,0x00);// Delay_ms(20);// ADS1247WREG(Reg_GPIODIR,0x00);// Delay_ms(20);//  ADS1247WREG(Reg_GPIODAT,0x00); // Delay_ms(20); SPI2_SendByte(CMD_SYNC); Delay_ms(2); //ADS1247_Calibrate(); CS_HIGH;