AnsweredAssumed Answered

Strange problem with ADC injected single conversion

Question asked by bil.til on Jul 13, 2012
I had some strange problems with injected conversions.

To look deeper in the problem, I used the "minimized" Single conversion mode, as described in 10.3.4 of RM000090. For regular conversion, the description there is perfectly correct, but for injected conversion it does not work - measuring the internal Tmp of ADC1 (Channel 16), only the first conversion would be (fairly) ok, but the next conversions then strangely drift to zero.

The only possibility to get this working, was that I needed to set JSQ4 in the JSQR register also to 16 (=10H) - so the value of JSQR= 0x00000010 did NOT work, but with JSQR=0x00080010 it works as expected (although channel 4 is not scanned ...).

This is quite a strange difference between regular conversion and injected conversion - just also for other users for reference (it would be nice of ST to include some warning in 10.3.4. of RM00090 - I needed about 4 hours to find a solution for this problem ...).

PS: The JSQR register generally seems to be a bit sensitive - it also seems to be very crucial, that the JSWSTART bit is set only some commands later (not directly after write to the JSQR register - it would be really helpful, if there would be some hint about this situation in the RM - perhaps also at the JSQR register description).