EXT behaviour before driver is enabled
Posted: Fri Dec 05, 2014 4:14 pm
Hi,
On a STM32L1 device, I am interfacing with an acceleration sensor via I2C. The device tells me when it has data ready via an IRQ pin that I have connected to PA2, and installed a suitable EXT callback to get the interrupts and set a semaphore.
I am noticing some strange behaviour that I can't explain yet. Before I enable the EXT driver for PA2, I reset the acceleration sensor and set up its registers. During the reset time, I can see there is a glitch on the IRQ pin, but note that the EXT driver is not enabled yet.
After the sensor is set up, I enable the EXT driver, and immediately get called back, but there has not been an interrupt asserted on PA2 since I enabled the EXT driver. Does the EXT unit buffer these events? Is there a way for me to clear them via software, or do I need to manage this another way?
Thanks
Dave
On a STM32L1 device, I am interfacing with an acceleration sensor via I2C. The device tells me when it has data ready via an IRQ pin that I have connected to PA2, and installed a suitable EXT callback to get the interrupts and set a semaphore.
I am noticing some strange behaviour that I can't explain yet. Before I enable the EXT driver for PA2, I reset the acceleration sensor and set up its registers. During the reset time, I can see there is a glitch on the IRQ pin, but note that the EXT driver is not enabled yet.
After the sensor is set up, I enable the EXT driver, and immediately get called back, but there has not been an interrupt asserted on PA2 since I enabled the EXT driver. Does the EXT unit buffer these events? Is there a way for me to clear them via software, or do I need to manage this another way?
Thanks
Dave