ADF4371-EV - unable to communicate via 4-wire spi STM32uC


We've been trying to communciate with this evaulation board using an STM32L552 uController for about two weeks.

The CE pin is powered at 3.3V (because the SDP-S board is normally the one that powers it).

6V is suppied at the plug to power all the Vcc pins.

Current is showing 230mA when powered up and SPI pins connected to the uC. Not sure if that is correct or not.

Pretty much been spinning our wheels because the MUXOUT pin is always at about 1.8V, and I've never able to read anything back from the device.

"Also, I want to make sure that SPI write is successful, you can write to Reg0x1E=0x4C for power-down and Reg0x1E=0x48 for power-up and observe the current."

I am pretty sure my writes are not getting to the device either, because I've tried to turn off the PLL register to see a current drop, but it was unchanged.

I tried using the no-os drivers provided by AD, but they didn't work.

I am able to use ACE fine to talk to the board, so I copied the register values shown for the configuration I want and tried direcly writing those registers. First 0x00 and 0x01,

then the rest of the registers in the reverse order like explained in the datasheet/user guide. Doesn't seem like its taking anything.

I added resistors 1.5KOhm to the MOSI, MISO lines because another post said to do so, but nothing changed. I don't see why this would make a difference besides cleaning the line though.

I've been using the HAL_SPI Drivers from STM to communicate to all my other parts in the system via SPI, including other AD components, but this ADF part won't work.

I see ACE is able to write in 1 24-cycle clock spurt, but HAL drivers can only do 8 or 16 bits spurts with that small paused shown in the images. I don't think this should be an issue though right?

I'm attaching a bunch of images so if anyone can point me to something I haven't tried, it would be much appreciated.

This is the last attempt

  • This is the register map from ACE that I tried writing

    0x0000 0x18 RegMap1
    0x0001 0x00 RegMap1
    0x0003 0x06 RegMap1
    0x0004 0x01 RegMap1
    0x0005 0x00 RegMap1
    0x0006 0x09 RegMap1
    0x000C 0x56 RegMap1
    0x000D 0x04 RegMap1
    0x0010 0x4B RegMap1
    0x0011 0x00 RegMap1
    0x0012 0x40 RegMap1
    0x0014 0x00 RegMap1
    0x0015 0x00 RegMap1
    0x0016 0x00 RegMap1
    0x0017 0x00 RegMap1
    0x0018 0x00 RegMap1
    0x0019 0x01 RegMap1
    0x001A 0x00 RegMap1
    0x001B 0x00 RegMap1
    0x001C 0x00 RegMap1
    0x001D 0x00 RegMap1
    0x001E 0x48 RegMap1
    0x001F 0x01 RegMap1
    0x0020 0x14 RegMap1
    0x0021 0x00 RegMap1
    0x0022 0x00 RegMap1
    0x0023 0x00 RegMap1
    0x0024 0x080 RegMap1
    0x0025 0x0F RegMap1
    0x0026 0x15 RegMap1
    0x0027 0x0C5 RegMap1
    0x0028 0x083 RegMap1
    0x002A 0x00 RegMap1
    0x002B 0x01 RegMap1
    0x002C 0x44 RegMap1
    0x002D 0x11 RegMap1
    0x002E 0x12 RegMap1
    0x002F 0x094 RegMap1
    0x0030 0x2A RegMap1
    0x0031 0x02 RegMap1
    0x0032 0x04 RegMap1
    0x0033 0x22 RegMap1
    0x0034 0x085 RegMap1
    0x0035 0x0FA RegMap1
    0x0036 0x30 RegMap1
    0x0037 0x00 RegMap1
    0x0038 0x00 RegMap1
    0x0039 0x07 RegMap1
    0x003A 0x55 RegMap1
    0x003D 0x00 RegMap1
    0x003E 0x0C RegMap1
    0x003F 0x080 RegMap1
    0x0040 0x50 RegMap1
    0x0041 0x28 RegMap1
    0x0042 0x00 RegMap1
    0x0043 0x00 RegMap1
    0x0044 0x00 RegMap1
    0x0045 0x00 RegMap1
    0x0046 0x00 RegMap1
    0x0047 0x0C0 RegMap1
    0x0052 0x0F4 RegMap1
    0x006C 0x00 RegMap1
    0x006E 0x00 RegMap1
    0x006F 0x02 RegMap1
    0x0070 0x03 RegMap1
    0x0071 0x60 RegMap1
    0x0072 0x32 RegMap1
    0x0073 0x00 RegMap1
    0x0079 0x00 RegMap1
    0x007A 0x00 RegMap1
    0x007B 0x00 RegMap1
    0x007C 0x00 RegMap1
  • +1
    •  Analog Employees 
    on Jan 12, 2021 10:56 AM 3 months ago in reply to Rikerq


    To start SPI communication you need to write to below register with given values before writing other registers. 



    Reg0x20[3]=0 (for 4-wire). 

    Do you write these registers at the beginning?

Reply Children
No Data