Вопросы с тегом «interrupts»

Механизм управления потоком программ в компьютере. Когда компьютер прерван, он сохраняет свое текущее рабочее состояние и переходит к выполнению кода, который зависит от того, какое прерывание было сгенерировано. Прерывания могут быть как аппаратными, так и программными; программные прерывания называются ловушками. Это альтернативный механизм опроса и основа, на которой реализуется большинство операций ввода-вывода, многозадачности и управления.

3
Критические разделы на Cortex-M3
Я немного интересуюсь реализацией критических участков кода на Cortex-M3, где исключения не допускаются из-за ограничений по времени или из-за проблем параллелизма. В моем случае я использую LPC1758, и у меня есть трансивер TI CC2500 на борту. CC2500 имеет контакты, которые можно использовать в качестве линий прерывания для данных в буфере …

4
STM32: прерывание по таймеру работает немедленно
Это код для таймера в моем проекте на STM32F429: //timer initialization void timerInit() { uwPrescalerValue2 = (uint32_t) ((SystemCoreClock / 2) / 100000) - 1; RS485Timer.Instance = TIM5; RS485Timer.Init.Period = 67400000; // high value to notice interrupt even without debugging RS485Timer.Init.Prescaler = 400000; RS485Timer.Init.ClockDivision = 0; RS485Timer.Init.CounterMode = TIM_COUNTERMODE_UP; HAL_TIM_Base_Init(&RS485Timer); } …

5
Обработка прерываний в микроконтроллерах и пример FSM
Начальный вопрос У меня есть общий вопрос об обработке прерываний в микроконтроллерах. Я использую MSP430, но я думаю, что вопрос может быть распространен на другие СК. Я хотел бы знать, является ли хорошей практикой частое включение / отключение прерываний по всему коду. Я имею в виду, если у меня есть …

2
STM32F4 Cube HAL UART. Это ошибка или я что-то упустил?
Я использую прерывание на основе UART IO (без DMA). HAL_UART_Transmit_ITфункция устанавливает EIEбит в CR3регистре. В соответствии с таблицей данных STM32F407 (и реальным поведением), это генерирует прерывание только в многобуферном режиме (когда DMARбит установлен). EIEпозволяет генерировать прерывания для ошибки кадра ( FE), ошибки переполнения ( ORE), ошибки шума ( NE). Эта …

3
Использование нескольких внешних прерываний в PIC
Я использовал PIC16F877( таблица данных ) для нескольких проектов. Для прерывания смены одного внешнего вывода вы можете использовать PORTB0прерывание. Но теперь мне нужно поддерживать 8 независимых внешних прерываний смены контактов в одной цепи. В таблице указано, что в ней 15 прерываний PIC16F877, но я думаю, что они учитываются, включая прерывания …

2
Определение того, какой вывод вызвал прерывание PCINTn?
Правильно ли я считаю, что если у вас есть два контакта, вызывающих одно и то же прерывание AVR PCINT (например, вектор PCINT0, вызванный выводами PCINT0 или PCINT1 - я думаю, что совпадение имен векторов и выводов сбивает с толку), то единственный способ определить, какой вывод (s) вызвало прерывание, чтобы записать …
9 avr  interrupts  atmel 

4
Как создать прерывание по таймеру с Arduino?
Я пытаюсь создать прерывание с задержкой с Arduino. Я хотел бы использовать функцию interrupts (), потому что это внутреннее прерывание. Пример: допустим, я бы хотел, чтобы индикатор включался и выключался только с учетом времени прерывания. Пример кода есть, но он использует внешние прерывания (attachInterrupt ()). Я хотел бы продолжать использовать …

3
Как реализованы обработчики прерываний в CMSIS Cortex M0?
У меня есть комплект LPC1114. Последние несколько дней я копал CMSIS-реализацию Cortex M0, чтобы узнать, как в ней все делается. До сих пор я понимал, как каждый регистр отображается и как я могу получить к нему доступ. Но все же я не знаю, как в нем реализованы прерывания. Все, что …
9 arm  interrupts 

2
ATtiny13A - Не удается сгенерировать программный ШИМ в режиме CTC
Я пытаюсь сделать пульт дистанционного управления RGB LED подсветкой с помощью ATtiny13A. Я знаю, что ATtiny85 лучше подходит для этой цели, и я знаю, что в конечном итоге я не смогу уместить весь код, но сейчас моя главная задача - сгенерировать программный ШИМ с использованием прерываний в режиме CTC. Я …
8 avr  pwm  interrupts  attiny 

5
Какой смысл иметь прерывания, основанные на уровне?
Где бы я ни искал практическую реализацию основанного на уровне прерывания, я находил только одно предложение, которое давали люди, то есть отключать прерывание, как только оно входит в ISR, чтобы оно не продолжало запускаться обратно. Еще одна вещь, которую я прочитал, заключается в том, что она используется для создания цикла, …

4
Задержка прерывания на MCU STM32F303
Я работаю над проектом, включающим микроконтроллер STM32 (точнее, на плате STM32303C-EVAL), который должен реагировать на внешнее прерывание. Я хочу, чтобы реакция на внешнее прерывание была максимально быстрой. Я изменил пример стандартной периферийной библиотеки с веб-страницы ST, и текущая программа просто включает светодиод на каждом последующем фронте на PE6: #include "stm32f30x.h" …

6
Различия между прерываниями и выборкой для аппаратной кнопки?
У меня есть аппаратная кнопка, которую я подключил к прерыванию, но моя проблема в том, что она немного отскакивает, делая нажатие кнопки ненадежным. Я думаю, что многие из этих проблем будут решены с помощью выборки в основном цикле, но это технически неверно. Являются ли прерывания более подходящими для внутрисхемной связи …

2
Очистить флаги прерываний USART (UART) в STM32?
Я использую STM32F105 для связи с чипом Linx GPS с помощью UART. Если я не использую прерывания (если я просто опрашиваю флаг RX), то это работает просто отлично. Но я получаю неожиданные результаты, когда пытаюсь использовать прерывания. Например, если я включаю только прерывание RXNE («RX not empty») USART_ITConfig(USARTx, USART_IT_RXNE), то …

1
включить / отключить прерывания PCI
Я реализую драйвер PCIe, и я хотел бы понять, на каком уровне прерывания могут быть или должны быть включены / отключены. Я намеренно не указываю ОС, так как полагаю, что это должно быть актуально для любой платформы. Под уровнями я имею в виду следующее: Специфичная для ОС структура обработки прерываний …
8 interrupts  bus  pcie 

1
Как работает стек вызовов во время прерывания на AVR?
(Специально для Arduino Uno ...) Что происходит со стеком, когда на микроконтроллере AVR происходит прерывание, и я вызываю функцию? Встроен ли компилятор в код? Кэширует ли он где-нибудь стек, а затем сбрасывает указатель стека? Есть ли у него вторичный стек только для прерываний? Как я понимаю, вектор для прерывания - …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.