2019-12-10 01:53 AM
Steps to reproduce:
1. Configure peripheral, i.g. UART or SPI to work with DMA
2. Go to NVIC Settings Tab at peripheral. By default all interrupts are enabled.
Interrupts generated by peripheral itself can be disabled by unchecking respective checkbox
In order to disable DMA channel interrupt one has to go to NVIC peripheral and uncheck a
checkbox called "Force DMA channel interrupts".
IMHO, a need to go to seemingly unrelated place to enable a desired action, is a bad user interface
decision. But it's not a bug.
After the checkbox at NVIC is unchecked one can come back to NVIC Settings Tab at peripheral
and disable DMA channel interrupt(s).
3. Now the project can be saved and/or code can be generated and everything would be
written to files as expected.
Close project. So far so good.
4. Open project again.
DMA channel interrupt(s) are re-enabled. You can save project immediately after opening
even without touching any other user interface element except File menu - the damage is
done already and can be observed in ***.ioc. It's not the same project that you saved last time.
2020-04-01 09:39 AM
This bug is not fixed in V5.6.0-RC6 Build: 20200218-1639 (UTC)!
2020-10-11 07:54 PM
this bug really exists in CubeMX version 6.0.1
2022-05-23 07:26 PM
This bug appears to be fixed in version 6.4.0. My generated code had DMA interrupts in it at the start. I uncheck the "Force DMA channels Interrupts" box, uncheck the box for the DMA interrupt, generated code, and closed cubeMX. The generated code is correct (no DMA interrupts). I re-opened cubeMX, and the check boxes are still unchecked. I generated code and it is identical to the previously generated code - no DMA interrupts.