AnsweredAssumed Answered

Problems with ADE9000 SPI

Question asked by Jeronymo on Jun 12, 2017
Latest reply on Jun 21, 2017 by TomRK


So I built a board for the ADE9000 IC and connected the MISO, MOSI, SCK, CS and IRQ1 pins to my Arduino Uno. VDD and RESET to 3.3V, all GNDs of the IC, PM0 and PM1 to the GND of the Arduino.

On my code, I wait for the IRQ1 pin to go low and start sending the 16bit SPI message to read the contents of the address PART_ID. In the datasheet, it says that the bit 20 will be set, which means that I'm using the IC ADE9000.

But when I run the code, I get the following message from the IC:


The bit 20 is set, but some other reserved bits are also set, so I don't kow if what I'm reading is right.

Right after that, I try to read the LAST_CMD address and get the message:


This response clearly means that something is wrong.

Q1. Could somebody help me figure out what am I getting wrong? The code is attached to the post.

The message displayed on the serial port is the following:

Sent: 100011100101000
Answer1: 1110000000010000
Answer2: 101010010100
Sent: 100101011101000
Answer1: 1111111111111111


Q2. In the datasheet it is said that the Version address can be read by using logical AND with the value 0xFFC0 to obtain the current version. Does this means that I have to 0x4FE8 &  0xFFC0?


Thanks in advance,