i am trying to interface an external controller pic24 to the ade7878 development board , i set the spi to 1 MHz clock which is lower than 2.5 Mhz. Idle clock state as high. data toggles at falling edge and samples at rising edge -- everything as per data sheet. The controller works alone and the development board also works alone..but the problem is when i am trying to connect them.
what i am doing is basically, starting the ade in sleep mode. then after the controller are initialized the power mode is set back to normal.
the sequence to toggle the spi slave is done three times.. and i am locking it , by by writing zeros to the config2 register.
one thing i can note is that the IRQ0 pin goes low showing that the power mode switching was successful.
to make it high again , i have to reset the RSTdone bit in status 1 register and i am writing zeroes to it and reading it back, But the data read back is not what it is supposed to be. it is high impedance. All the data read back are 0xff.
i have a logic analyzer parallel to the bus , so i know that the data are send correctly. i had also analyzed the spi bus when the NXP was the active controller. the MISO line had high impedance as it is supposed to be and valid data as needed for the NXP controller.. but with the pic24 controller there are some noise in the MISO line. there are some toggles in the miso line even when the slave select is not active.
it goes 0xff when there should be valid data for the read command irrespective of the address i am sending.
i switched off the jumper 7 that powers the nxp controller and jumper that powers the isolation circuits.. and connected the controller pins to the development board using the connection points for MOSI, MISO and other points. I rechecked the connections
i connected the grounds and vdd as same for both the controller and the ADE7878.
i just want to know if i am doing anything wrong .. spend a day on this.