ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
25 апреля
1209236 Топик полностью
Chum_A (17.05.2022 08:49, просмотров: 198) ответил IBAH на я учил, но забыл. Как в Кортексе программно в взвести флаг прерывания? т.е. Как только прерывания будет разрешено, произойдет переход по вектору. Я так понимаю это только через контролер прерываний (NVIC->ISPR)? Периферия (например DMA) так не умеет?
В CMSIS, не оно? 
/** \brief  Set Pending Interrupt

    The function sets the pending bit of an external interrupt.

    \param [in]      IRQn  Interrupt number. Value cannot be negative.
 */
__STATIC_INLINE void NVIC_SetPendingIRQ(IRQn_Type IRQn)
{
  NVIC->ISPR[((uint32_t)(IRQn) >> 5)] = (1 << ((uint32_t)(IRQn) & 0x1F)); /* set interrupt pending */
}