Other Parts Discussed in Thread: DAC63001, , DAC80501, DAC8881
We have issues with DAC8551IDGKR on some boards. The Vout does not match with the input.
The chip does not have reset. We are using GPIO to simulate the SPI signal. Most of the boards work okay. Few gave me intermittent issues. If I power cycle, it might work again.
Sometime we replace the chip and it works.
I notice the chip does not have RESET, GPIO power up may have random signal to its SPI pins. Not sure if that is the reason.
inline void write_dac(unsigned short dac_value)
{
uint32_t dummy;
uint32_t value1;
uint32_t temp;
value1 = dac_value;
temp=0x800000;
AT91F_PIO_SetOutput(PORT_DAC, DAC_CLK);
for (dummy = 0; dummy < 24; dummy++)
{
if (temp & value1)
AT91F_PIO_SetOutput(PORT_DAC, DAC_DIN);
else
AT91F_PIO_ClearOutput(PORT_DAC, DAC_DIN);
AT91F_PIO_ClearOutput(PORT_DAC, DAC_CLK);
temp=temp>>1;
AT91F_PIO_SetOutput(PORT_DAC, DAC_CLK);
}
}