Does anyone else using AD5270 digital-potentiometer? I would, but I have problems.
I think I am sending out the right commands through SPI, yet the resistance just stuck at midpoint. Normally I would think the IC is faulty, but I have two identical boards behaving exactly the same way. I have a third (yet unpopulated) IC, but since they came from the same source, same reel, I am not very excited to replace it.
I even made two scope shots for you, one with zero-wiper and the other with full-open wiper setting, the device just stuck at midpoint.
Am I missing something obvious?
Your SPI writes do seem correct to me. This is an unusual device- its not a pot with a wiper and two ends, its actually a resistor with a wiper and one end. Are you measuring "ohms" or somehow reading like a resistor?
How's your device initialization? Do you properly disable write protection?
How's your device initialization? Do you properly disable write protection?
What initialization do you mean? From my understanding I should just send whicever "command" I like to the device. In this case I don't want to use the memory function, I only want to operate with direct RSET (command 1)
Something is odd with your data signal.
Why is the 0x07FF data serrated?
And why is the data rising edge 1/2 cycle delayed?
How's your device initialization? Do you properly disable write protection?
What initialization do you mean? From my understanding I should just send whicever "command" I like to the device. In this case I don't want to use the memory function, I only want to operate with direct RSET (command 1)
The data sheet is poorly written and doesn't explain the interface well. But, it does contain an example command string to set the wiper. Did you try using the example?
Something is odd with your data signal.
Why is the 0x07FF data serrated?
And why is the data rising edge 1/2 cycle delayed?
Data must be present on the clock's falling edge. Serrations due o how the program was written is that a problem?
I don't know.
SPI is very simple and normally poses no problem. But as someone else wrote, the data sheet is lousy.
And perhaps the program should be modified to be correct SPI?
Unusually sloppy datasheet from Analog indeed.
What initialization do you mean? From my understanding I should just send whicever "command" I like to the device. In this case I don't want to use the memory function, I only want to operate with direct RSET (command 1)
Read carefully the Write Protection section at page 20. The device will boot into internal preprogrammed value only by default. You need to clear the write protect bit to allow direct register control. Control bit is listed on table 11, and command formats are at table 12. Or if you're completely lost there's example initialization at table 15, you need to send
0x1C03 first.
you need to send 0x1C03 first.
Indeed, this did the trick! Now it works, thanks!