[241] SAADC: Static 400 µA current after SAADC is disabled

This anomaly applies to Revision 3, build codes QFAA-Fx0, QIAA-Fx0, CKAA-Fx0.

It was inherited from the previous IC revision Revision 2.

Symptoms

Static current consumption between 400 µA and 450 µA occurs.

Conditions

SAADC is disabled after sampling with BURST when multiple channels have been enabled.

Consequences

Current consumption is higher than expected.

Workaround

Execute the following code after disabling SAADC:

volatile uint32_t temp1;
volatile uint32_t temp2;
volatile uint32_t temp3;

temp1 = *(volatile uint32_t *)0x40007640ul;
temp2 = *(volatile uint32_t *)0x40007644ul;
temp3 = *(volatile uint32_t *)0x40007648ul;

*(volatile uint32_t *)0x40007FFCul = 0ul;
*(volatile uint32_t *)0x40007FFCul;
*(volatile uint32_t *)0x40007FFCul = 1ul;

*(volatile uint32_t *)0x40007640ul = temp1;
*(volatile uint32_t *)0x40007644ul = temp2;
*(volatile uint32_t *)0x40007648ul = temp3;
After the workaround is executed, the SAADC configuration is reset and all registers must be configured again.