-
- Я может чего то не понимаю, но зачем внутри EXTI0_IRQHandler запрещать HAL_NVIC_DisableIRQ(EXTI0_IRQn)? Оно и так не вызовется пока обрабатывается. Есно, если новое EXTI0_IRQ возникнет при обработке текущего, то флаг события возникнет и при выходе 0men(142 знак., 02.10.2017 18:45)
- Разобрался! У вас (и у меня) EXTI0_IRQHandler() вызывается один лишний раз, без флага EXTI->PR1&0x01!!! надо сбрасывать NVIC_ClearPendingIRQ(EXTI0_IRQn)! - IBAH(02.10.2017 17:01)
- лишний раз? Как это? Т.е. EXTI->PR1|=0x01 не сбрасывает прерывание? - Лагунов(02.10.2017 17:14)
- Не сбрасывает! Переход на EXTI0_IRQHandler() происходит сразу же после разрешения NVIC_EnableIRQ(), но флаг события сброшен (EXTI->PR)!, надо перед HAL_NVIC_EnableIRQ, сбрасывать не только флаг события (EXTI->PR1|=0x01), но и флаг прерывания IBAH(114 знак., 02.10.2017 17:22 - 17:26)
- ну мне как-то это не влияет. По крайней двойного нажатия кнопки в клавиатуре не фиксирую. - Лагунов(03.10.2017 08:22)
- Не сбрасывает! Переход на EXTI0_IRQHandler() происходит сразу же после разрешения NVIC_EnableIRQ(), но флаг события сброшен (EXTI->PR)!, надо перед HAL_NVIC_EnableIRQ, сбрасывать не только флаг события (EXTI->PR1|=0x01), но и флаг прерывания IBAH(114 знак., 02.10.2017 17:22 - 17:26)
- лишний раз? Как это? Т.е. EXTI->PR1|=0x01 не сбрасывает прерывание? - Лагунов(02.10.2017 17:14)
- Именно так и делаю, нефига не работает. то исчезаю прерывания вообще, то повторный вызов, причем как именно не работает зависит от момента когда сбрасываю пендинг - IBAH(02.10.2017 14:06)
- Трэш и угар!!! Как это развидеть? - SciFi(02.10.2017 13:14)
- что "развидеть"? - Лагунов(02.10.2017 13:21)
- Больше всего, конечно, доставляет так называемая задержка на 2,5 мкс. Кубический обработчик прерывания - тоже милота. Ну и остальные мелочи типа while вместо for, отступы и вообще. - SciFi(02.10.2017 13:24)
- ага, из меня программист, как из ... (ну вы поняли). :-) Тем не менее - работает же. - Лагунов(02.10.2017 17:13)
- Удивительно! Теперь я понял, кому нужен куб :-) - SciFi(02.10.2017 17:15)
- А что против куба по существу? - vllv(02.10.2017 13:28)
- Кроме того, что он исходник превращает в уродливое говно? Нет. Ну и вызывает скепсис сама концепция того, что я тут кликну пару раз, а оно выплюнет индусский говнокод (по слухам) и всё будет работать. - SciFi(02.10.2017 13:38)
- "Вам шашечки или ехать?" (с) - Лагунов(02.10.2017 17:15)
- У меня этим занимается специально обученный человек и как-то же у него получается. Правда, я не все понимаю, но оно мне надо? PS. По моему индусы в неимоверном количестве только в TI. - vllv(02.10.2017 17:06)
- Ага! Кто мне такого спец. обученного дал. :-) - Лагунов(03.10.2017 08:30)
- Меня привлекла бы библиотека со следующими особенностями. 1) Качество. То есть некая репутация типа "А, это библиотека ZYX? Круть!" 2) Разбито на кусочки, которые без труда можно соединить руками, а не при помощи неведомого кубического куба. 3) SciFi(91 знак., 02.10.2017 17:11)
- Кроме того, что он исходник превращает в уродливое говно? Нет. Ну и вызывает скепсис сама концепция того, что я тут кликну пару раз, а оно выплюнет индусский говнокод (по слухам) и всё будет работать. - SciFi(02.10.2017 13:38)
- ага, из меня программист, как из ... (ну вы поняли). :-) Тем не менее - работает же. - Лагунов(02.10.2017 17:13)
- Больше всего, конечно, доставляет так называемая задержка на 2,5 мкс. Кубический обработчик прерывания - тоже милота. Ну и остальные мелочи типа while вместо for, отступы и вообще. - SciFi(02.10.2017 13:24)
- что "развидеть"? - Лагунов(02.10.2017 13:21)