2013-10-21 05:34 AM
Hello. I want to process each set of readings from the L3GD20 as they become available. The DRDY signal seems the most appropriate way to do this. I've verified with an STMicro engineer that my register settings are correct (simply use the DRDY signal in its normal mode), but I can't see the DRDY signal transitioning from high to low. It stays high all the time. I'm using an HP mixed signal 'scope and I'm watching all the other signals (SPI/chip selects, etc) with no problem. I can get DRDY to transition to low when I turn the FIFO on and configure the DRDY signal to indicate when the FIFO fills beyond the watermark (which I set to 1), but DRDY is supposed to work without the FIFO.
Has anybody seen this behavior?2013-10-21 09:21 AM
I figured out what was going on. My initialization routine set the registers up as they should be set, then called my _GetReadings routine to perform that initial read of the axis values. However, I wasn't setting the register number correctly prior to calling that routine, so it really wasn't reading the axis registers. The chip would then bring DRDY high and simply leave it there, since I wasn't ''reading'' the values from memory.
Once I corrected this problem, the chip started transitioning DRDY as expected, and I'm now gathering readings as required. This configuration does NOT use the FIFO and the DRDY/INT2 signal is simply enabled in the configuration registers.2013-10-22 06:45 AM
Hello Richard,
Thank you for posting your question and also providing a solution to the issue. Please do let me know if there is anything that I can do to support you. Thank you, Thiago