__disable_irq() in the complete callback and re-enabling them with __enable_irq(), but considering my high-priority button interrupt was still active—and not knowing whether this technique could guarantee exactly 6ms—I tried another approach of only deactivating the specific DMA interrupt by utilizing __set_BASEPRI(priority << (8 - __NVIC_PRIO_BITS)). _ _set_BASEPRI(0) upon elapsed period time completing successfully executed timed actions—nonetheless,it did not work since it kept switching between both types of call-backs without allowing freertos tum to operate independently.