Other Parts Discussed in Thread: DAC63204EVM, SN74HCS367
Hi,
I have a DAC53204 that I'm intending on using in 4-wire SPI mode. I am using the following programming sequence and am not seeing the expected results.
#define DAC53204_REG_COMMON_TRIGGER ((uint8_t) 0x20) #define DAC53204_REG_GENERAL_STATUS ((uint8_t) 0x22) #define DAC53204_REG_INTERFACE_CONFIG ((uint8_t) 0x26) // Unlock device registers uint16_t reg = 0x5000; err = write_register(p_handle, chip_select, DAC53204_REG_COMMON_TRIGGER, ®); // Enable SDO for 4-wire SPI. reg = 0x1; err = write_register(p_handle, chip_select, DAC53204_REG_INTERFACE_CONFIG, ®); // Validate the hardware by checking the ID register (read_register issues a NOP per Figure 7-15. SPI Read Cycle of TRM) err = read_register(p_handle, chip_select, DAC53204_REG_GENERAL_STATUS, ®);
I'm currently seeing the following on my logic analyzer:
CPOL=1, CPHA=0
CPOL=0, CPHA=1
After the SDO-EN bit is written, I do see MOSI go low which according to some other DAC53204 posts, seems to be the correct behavior.
I do not see the DEVICE-ID (should be DAC53204: 02h) in the final NOP access in either case. I do see that the MSB (bit 24) of the read access and NOP is set in 3 different points here but since that is not where the read data is coming from it doesn't seem important.
Any insight on why I'm unable to read the DEVICE-ID?
I have tried 0.5MHz and 1.0MHz SCLK frequencies.
Thanks,
Mark