AF
Size: a a a
AF
D
AF
AF
D
D
D
AF
D
D
D
A
AF
gpio_get_level
происходит вне обработчика прерывания. GPIO_INTR_ANYEDGE
, то есть и по растущему, и по падающему фронтам, я могу понять внутри обработчика прерывания, какое именно прерывание у меня отработало путем измерения gpio_get_level
? Есть подводные камни ?GPIO_INTR_ANYEDGE
, как поведет себя чип, если новое прерывания запустится в то время, когда старое еще не отработало до конца? Надо это контролировать (отключать прерывание) ?AK
static void IRAM_ATTR gpio_isr_handler(void* arg)
{
uint32_t gpio_num = (uint32_t) arg;
xQueueSendFromISR(gpio_evt_queue, &gpio_num, NULL);
}
2 есть два пути - оба описаны в справке, мне лень искатьAF
AK
РР
MS
vs
MS