Кто любит RISC в жизни, заходим, не стесняемся.
Ответить

TM4C1294 Регистрация обработчика прерываний UART

Пн июн 19, 2023 10:53:04

Всем привет!

Пытаюсь сделать обработчик прерываний по UART-у. Пока учусь!!!!
Вот ссылка на код, который я использую:
https://www.programmersought.com/article/9640953879/
Однако, при инициализации UART-а контроллер зависает на регистрации функции обработчика прерываний:
Код:
UARTIntRegister(UART0_BASE, vUART0_IntHandler);

(под отладчиком проверял вход в эту функцию, заполнение вектора прерываний, но при выходе из этой функции отладчик дальше не идет. Делал даже семафор из светодиодов, чтоб убедиться что после этой функции контроллер прекращает дальнейшее выполнение кода)
Причем функция vUART0_IntHandler - может быть так и заполненной, так и совершенно пустой.

Чувствую что я упустил какую то деталь.
Что там не хватает в коде?
Кто знает - помогите пожалуйста!

Re: TM4C1294 Регистрация обработчика прерываний UART

Вт июн 20, 2023 09:46:13

Это же Cortex-M4. У него таблица векторов прерываний в стартапе прописана. Смотрите название функции-обработчика и просто определяете функцию с таким именем. Затем разрешаете прерывание с помощью функции NVIC_EnableIRQ из CMSIS и всё.
Ответить