Hello,
I was able to use AD5360 EVAL board in a C# application based on little information gathered from internet. All these evaluation boards use the ADI_CYUSB_USB4.dll that allows sending commands through the USB to SPI controller to the SPI chip (ADC or DAC). Here are the imports I used to have access to the dll functions:
[DllImport(@"\ADI_CYUSB_USB4.dll", EntryPoint = "Search_For_Boards")] publicstaticexternuint Search_For_Boards_Imp(uint VID, uint PID, refuint Number_Boards, ref char PartPath);
[DllImport(@"\ADI_CYUSB_USB4.dll", EntryPoint = "Connect")] publicstaticexternint Connect_Imp(uint VID, uint PID, char PartPath, ref uint Handle);
[DllImport(@"\ADI_CYUSB_USB4.dll", EntryPoint = "Download_Firmware")] publicstaticexternint Download_Firmware_Imp(uint Handle, IntPtr PartPath);
[DllImport(@"\ADI_CYUSB_USB4.dll", EntryPoint = "Vendor_Request")] publicstaticexternint
Vendor_Request_Imp(uint Handle, byte Request, ushort Value, ushort Index, byte Direction, ushort DataLength, refbyte Buffer);
[DllImport(@"\ADI_CYUSB_USB4.dll", EntryPoint = "Disconnect")] publicstaticexternint
Disconnect_Imp(uint Handle);
These are the commands that I found on line and I was able to use them successfully with AD5360 EVAL board:
// Request Value Index Direction Datalength Buffer
//for AD5360
//SPI_WRITE 0xDD 16LSB data 8 MSB data 0 0 0
//SPI_READ 0xDD 0 0 1 3 DATA[]
//SETRESET 0xDA 0 0 0 0 0
//CLRRESET 0xDB 0 0 0 0 0
//SETCLR 0xDC 0 0 0 0 0
//PULSE_LDAC 0xDE 0 0 0 0 0
//CLRCLR 0xDF 0 0 0 0 0
//SETLDAC 0xE2 0 0 0 0 0
//CLRLDAC 0xE3 0 0 0 0 0
//DATA returns 3 byte of data
Recently I purchased an AD5590 EVAL board hopping that I would be able to use it in the same way. Unfortunately, the commands are not the same (or not enough) and I couldn’t find any information about them. I ended up trying to find these commands with a USB Analyzer (sniffer). I was able to see the commands sent by the eval board and finally I might succeed but this is not the way I like to do it. Revers engineering is not the proper way to use an evaluation board.
I don’t understand why Analog Devices hide this information. The purpose of an evaluation board is to present all the info required for
using it.
Please, Analog Devices or any engineer that has this information, make it public.
Thanks,
suiraM