Прерывание в микроконтроллерах
Я занимаюсь ПО для микроконтроллеров. Часе всего для чистого железа без ОС. Как правило ARM или MIPS архитектуры.
У меня возник вопрос. Больше исследовательского характера.
Предположим срабатывает прерывание. Можно ли каким либо образом. Анализируя стек, регистры мк, счетчик команд, выяснить в какой точке программы произошло прерывание? И сопоставить эту точку с исходным кодом ПО.
Ну например так:
- Происходит прерывание.
- В обработчики прерывания происходит анализ стека, регистров.
- Обработчик отправляет данные на ПК.
- И ПК сопоставляет данные с исходным кодом, линковачным файлом.
- Затем ПК указывает на файл и строку исходника из которой произошло прерывание.
Возможно ли , что то подобное реализовать?
Источник: Stack Overflow на русском