ADI 技术
直播中

潘务单

7年用户 201经验值
私信 关注
[问答]

请教关于ADE7758通信以及关于电流有效值测量的一些问题

现在使用ADE7758出现问题,感谢路过大神指导一下。
问题描述如下:
1.使用SPI通讯读回来的全部是1,包括操作寄存器的值。SPI是软件模拟的,晶振8M,没有倍频。代码如下:
/*  SPI传输1个字节  */
uint8_t SPI_MasterTransmit(uint8_t data)
{
  uint8_t  j,d;
  d=0x00;
  for (j=0;j<8;j++)
  {
    if ((data & 0x80) != 0) SPI_MOSI_Hi;else SPI_MOSI_Lo;
  SPI_SCK_Hi;
  data = (data << 1);
    d = d<<1;
  if (SPI_MISO_Hi)  d |= 0x01;
  SPI_SCK_Lo;
  delay_l(1);
  }
  return d;
}

2.IRQ引脚始终为低电平,已经将中断屏蔽寄存器全部写0了。测量还是0.2V。
3.参考手册上的描述,电流输入通道的±500mv应该是峰值,但是看网上很多都是作为有效值去匹配电阻的,有点疑惑,是不是超过了这个峰值也可以?比如说我现在差分最大是700mv,是不是寄存器的值就会比 “60Hz 时的满刻度正弦信号的同等有效值数值为 1,914,753(0x1D3781) ” 高?而且这个50Hz和60Hz对电流有影响吗?

4.我在手册上看到IRSM的测量建立时间在积分器关闭的情况下是960ms,请问这个寄存器的值是960ms覆盖一次吗?


附连接电路图:

回帖(1)

夏房釜

2018-8-1 10:21:05
您好,
 
     1、if (SPI_MISO_Hi)  d |= 0x01;请问这一句话是不是永久都满足条件并执行,这里的SPI_MISO_Hi是A=B的结构吧?应该至少修改成A==B的结构。另外请您计算一下延时等语句,在所给定的时钟条件下能否满足时序,也请用示波器看一看波形上是否真正的产生电平变化而后写入到芯片。
     2、有一些中断是会在上电过程中产生的,这个时候需要您进行清中断操作,如果不进行清中断操作,IRQ引进也会一直为低电平的,即便是使用MASK,因为中断已经产生了。所以您可以先用MASK屏蔽中断,然后进行清中断操作,然后再观测IRQ。
     3、这个取值是根据您个人喜好的,如果用有效值,那么就一直用有效值,如果用峰峰值,就一直用峰峰值,不能够穿插使用,避免造成混乱。从信号源输出来看,如果定义信号源输出的有效值,那么接下来的链路都使用有效值,峰峰值也是如此。系统的一些滤波器一类的链路对频率响应是不同的,所以一些值会受频率影响的,不过手册里都有说明。
     4、建立时间与更新时间不是一个概念,建立时间是在RMS计算初期,需要等待的时间,建立时间过后进行RMS值采集为正确的值。也就是程序需要先延时经过这个建立时间后再进行RMS采集,采集的速率可以是RMS更新速率。
 
谢谢
举报

更多回帖

发帖
×
20
完善资料,
赚取积分