диод
Никакие либы не используются. Пишу на C
Делаю так:
1. Включаю тактирование для GPIOA и GPIOB (RCC_AHBENR)
2. Включаю тактирование для SYSCFG (RCC_AHB2ENR)
3. Устанавливаю режим работы GPIOA на вход, GPIOB на выход
4. Включаю прерывание для 0ой линии по растущему фронту
5. Привязываю порт А к 0ой линии
6. Включаю прерывания
Вот в коде ровно то, что написал, что-то еще нужно сделать?
Вот кстати сам код https://gist.github.com/IliyVas/0a58c18093867ca494b3860b9c692fd7
Насколько я понял при нажатии на кнопку у меня срабатывает Error_handler
EXTI_Line0_IntHandler ? уверен что он так называтся должен?
Мой опыт подсказывает не делать на новых платформах все сразу, сперва просто мигаем светодиодом, потом просто получаем значение кнопки, потом обрабатываем кнопку в прерывании. Даже на таких простых задачах, а то начинается, не работает, грешишь на прерывания, а косяк в том что кнопка сломана.
Обсуждают сегодня