微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 硬件电路设计 > TI模拟硬件电路设计 > ADS1292R测试数据有对的有错的

ADS1292R测试数据有对的有错的

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

用ADS1292R的内部测试信号,数据返回的有时是对的有时是错的,比如C0 60 00 00 74 FA 00 4C 77 C0 60 00 00 74 FA 00 4C 77 C0 60 00 00 74 FA 00 4C 77 C0 60 00 00 60 30 00 00 3A 47 80 26 46 E0 30 00 00 3A 47 80 26 46 E0 30 18 00 00 1D 2B 00 13 1C F0 18 00 00 1D 2B 00 13 1C F0 0C 06 00 00 07 4F 20 04 C8 2C 06 00 00 07 4F 20 04 C8 2C 06 03 00 00 03 A6 A0 02 63 DE 03 00 00 03 A6 A0 02 63 DE 03 00 00 03 A6 A0 02 63 DE 03 00 00 03 A6 A0 02 30 18 00 00 1D 3B 80 13 1F B0 18 00 00 1D 3B 80 13 1F B0 18 0C 00 00 0E 9D 20 09 90 98 0C 00 00 0E 9D 20 09 90 98 0C 06 00 00 07 51 20 04 C7 FC 06 00 00 07 51 20 04 C7 FC 03 01 80 00 01 D4 E4 01 31 E3 01 80 00 01 D4 ,每9个数据一个循环,前面是这样的,后面就没规律了。

没有太看明白, 能说明一下错在哪里呢

正确的发送方式应该是每次发九个数据,循环发送,前面三个数据是状态子,为C0 60 00,后面六个是测试信号,比如C0 60 00 00 74 FA 00 4C 77 C0 60 00 00 74 FA  00 4C 77 ,但是很多数据不符合这个规律

我现在的问题是每三个SCLK就出现一个DRDY中断,而不是九个,因此数据发不完,九个数据只能发三个,这是怎么回事,求指导!

我用的ADS1292R,现在可以正确读写寄存器,但是问题是没连续发送模式配置有问题,本来是每发送九个数据DRDY拉低,但是现在是发送一个数据就拉低,不知道什么原因。还有是不是每次向芯片发送一个命令是不是可以立刻读出来,

void ADS1x9x_SPI_Command_Data(unsigned char Data)
{
 unsigned char delayVar;
 Set_ADS1x9x_Chip_Enable();
 for (delayVar = 0; delayVar < 50; delayVar++);
 Clear_ADS1x9x_Chip_Enable();
 Set_ADS1x9x_Chip_Enable();
 
 UCB0TXBUF = Data;                                     // Send the data sitting at the pointer DATA to the TX Buffer
  while ( (UCB0STAT & UCBUSY) );

 delayVar = UCB0RXBUF;

 for (delayVar = 0; delayVar < 150; delayVar++);

}

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

网站地图

Top