I'm using an STM32F302 to pilot DAC AD5724R by SPI.
I'm also using the EVAL -AD5754REBZ.
The STM32F3xx SPI2 is 16-bit frame. So no other way as my source is a 32-bit word I send 32 clocks and 2x16-bits (endian mode).
As far I understand the AD5754R needs exactly 24 clocks. So instead of using the DAC A voltage output I used the SDO serial output pin to get my voltage as Datasheet said:
Jumpers configuration is as followed:
Reference | Jumper | Function |
LK1 | A | REFIN chosen |
LK2 | Close | This link connects the VOUTA output of the AD5754R to the VIN0 input of the on-board ADC (AD7323): When inserted, the voltage at the VOUTA pin can be read back to the PC. When removed, the voltage at the VOUTA pin is disconnected from the on-board ADC input. |
LK3 | Close | This link connects the VOUTB output of the AD5754R to the VIN1 input of the on-board ADC (AD7323): When inserted, the voltage at the VOUTB pin can be read back to the PC. When removed, the voltage at the VOUTB pin is disconnected from the on-board ADC input. |
LK4 | Close | This link connects the VOUTC output of the AD5754R to the VIN2 input of the on-board ADC (AD7323): When inserted, the voltage at the VOUTC pin can be read back to the PC. When removed, the voltage at the VOUTC pin is disconnected from the on-board ADC input. |
LK5 | Close | This link connects the VOUTD output of the AD5754R to the VIN3 input of the on-board ADC (AD7323): When inserted, the voltage at the VOUTD pin can be read back to the PC. When removed, the voltage at the VOUTD pin is disconnected from the on-board ADC input. |
LK6 | A | USB port selected as the 5 V digital circuitry power supply source. |
LK7 | B | Position B selects the evaluation board to be controlled by the external source J8. |
LK8 | B | This link selects the digital supply voltage value for the AD5754R and the on-board ADC (AD7323): +3.3V chosen. |
LK9 | B | This link selects the negative supply voltage: Position B selects the AVSS connection of J9 as the negative supply voltage (bipolar operation). |
LK10 | Open | This link connects the voltage reference input of the on-board ADC to the selected voltage reference source. |
LK11 | Open | LDAC pin is pulled to DVCC through a 10 kΩ resistor. LDAC |
LK12 | Open | CLR pin is pulled to DVCC through a 10 kΩ resistor. CLR |
LK13 | Open | This link sets the state of the BIN/pin (LK7 must be in Position B): the BIN/pin is pulled to DVCC through a 10 kΩ resistor. |
I first send the output range for DAC A to be +/- 5V sending 0x00080003.
Then I power up DAC A sending 0x00100001
Then I send my data 0x0000FFFF and then 0x00000000.
I expected a square waveform moving from +5V to -5V
Here what I've got!!!
Yellow: MOSI / Green: Clock/ Pink: CS=SYNCn / Violet: SDO
I don't understand where is my mistake as there should be one!
Many thanks for your help.