Как устроены и как работают прерывания в esp8266?

Каковы особенности организации прерываний в микроконтроллере esp8266, поскольку в документации отсутствует информация о схеме с таблицей векторов, как в atmega328p?
  • 17 июля 2024 г. 22:32
Ответы на вопрос 2
В микроконтроллере ESP8266 прерывания работают похожим образом, как и в других микроконтроллерах, но есть некоторые особенности:

1. В ESP8266 нет явно определенной схемы с таблицей векторов прерываний, как в ATmega328P. Вместо этого в ESP8266 используется регистр "E3FF20F4: ETS_INTR_ATTACH(параметры)", который позволяет установить обработчик прерывания и его приоритет. 

2. Прерывания в ESP8266 могут быть использованы для обработки различных событий, таких как таймеры, внешние сигналы, прерывания от внешних устройств и другие.

3. Для использования прерываний в ESP8266 необходимо установить обработчик прерывания с помощью функции "ETS_INTR_ATTACH", инициализировать прерывание с помощью функции "ETS_INTR_ENABLE", и затем вызывать функцию "ETS_INTR_DISABLE" для запрета прерываний.

4. Прерывания в ESP8266 могут быть использованы как для одиночных событий, так и для периодических. Это позволяет эффективно управлять временными задержками, счетчиками и другими важными задачами.

Таким образом, хотя в ESP8266 отсутствует таблица векторов прерываний как в ATmega328P, прерывания все еще могут эффективно использоваться для обработки различных событий и управления временными задержками в микроконтроллере.
Нашел документацию по ISA Xtensa

Если вопрос действительно "каким образом прерывания работают", то isa book -- правильное место чтобы начать разбираться.

В memory map esp8266 этот вектор заносится по адресу 0x40000050
Не уверен, конечно, что это так


Это так, можно посмотреть в конфигурационном оверлее .
Похожие вопросы