I'm developing an energy meter based on a LPC1114 from NXP and the ADE7880 from Analog Devices.
I'm using current transformers and the current measurement is working pretty good, but the RMS values for the voltage channels give me always 0.
Checked: Power mode, it is in PM0 mode, so its correct. (Measuring the voltage in the pins)
I write this configuration via SPI (Checking every write with a read).
I checked twice every value.
/* 1º: Set the PGA gain in the current and voltage channels in the gain register at the desired values.* */
I set the gain to 1 (register to 0).
/* 2º: Enable the high-pass filter (HPF) in the data path by setting HPFDIS = 0x0. */
/* 3º: Clear Bit 0 (INTEN) of the CONFIG register if a regular current transformer (CT) is used. */
/* 4º: Initialize the CF1DEN, CF2DEN, and CF3DEN registers with the CFxDEN value of 1. */
/* 5º: Initialize the VLEVEL register (with the formula in the document) */
/* 6º: Enable the CF1, CF2, and CF3 pins by setting Bit 9 (CF1DIS), Bit 10 (CF2DIS), and Bit 11 (CF3DIS) to 0 in the CFMODE register. */
/* 7º: Set COMPMODE = 0x3911 to enable the CF1 function of the Phase A energy, the CF2 function of the Phase B energy, and the CF3 function of the Phase C energy. */
/* 8º: Set the RUN register to 0x1 to start the internal DSP. */
And then I initialize with the formulas in the datasheet:
And then I make a loop reading from the current and voltage RMS values. As I said, current is reading right. xVRMS Is always 0.
I hope you could help me.