Вопросы по теме 'isr'

Замените аппаратное прерывание в режиме плоской памяти на DOS32/A.
У меня вопрос о том, как заменить аппаратное прерывание в режиме плоской памяти... about my application... created by combining Watcom C and DOS32/A . написано для работы в режиме DOS (не в режиме ОС) с DOS32/A теперь я могу получить...
1189 просмотров
schedule 03.04.2022

Обеспокоен дрейфом значения micros() в программе Arduino
У меня есть программа, которая использует библиотеку Servo и внешнюю процедуру прерывания. Насколько я понимаю, библиотека Servo использует прерывание Timer1 для отправки импульсов сервоприводу для поддержания положения. Мне интересно, как это...
2074 просмотров
schedule 02.08.2022

Как читать из периферийного регистра ввода-вывода с помощью C/gcc?
У меня есть маршрутизация службы прерываний на AVR32. Мне нужно прочитать из регистра состояния прерывания, чтобы отменить прерывание. Однако я не использую результат чтения. Я бы предпочел не использовать инструкцию asm, но я обеспокоен тем, что...
1170 просмотров
schedule 21.04.2022

Как правильно использовать объекты C ++ (и изменчивые) внутри подпрограмм прерывания?
В настоящее время я работаю с микроконтроллерами Atmel AVR (gcc), но хотел бы, чтобы ответ применим к миру микроконтроллеров в целом, то есть обычно однопоточным, но с прерываниями. Я знаю, как использовать volatile в коде C при доступе к...
1274 просмотров
schedule 25.05.2024

структура кода ISR с WDT?
где должен быть сброс Watchdog во встроенном коде с подпрограммой обслуживания прерываний? в основном цикле или в разделе обслуживания прерываний?
217 просмотров
schedule 27.04.2023

Cortex M0 + (SAMD21) не выполняет отложенное прерывание
Я обнаружил эту проблему, когда попытался перевести микроконтроллер в спящий режим, а затем разбудить его как приложение, управляемое прерываниями. Я заметил, что мой код не возобновился со строки кода, которая была после моей инструкции «засыпать»....
1674 просмотров
schedule 08.11.2023

Процедура обслуживания прерывания в C++
Для встроенной системы реального времени я пытаюсь предоставить обработчик прерывания, который позволяет регистрировать любой указатель нестатического метода (а также экземпляр объекта, конечно), который вызывается, когда происходит прерывание....
5312 просмотров
schedule 18.06.2023

Оптимизация доступа к общему массиву с временным квалификатором volatile
Мне было интересно, приведет ли в следующем сценарии временный квалификатор volatile к правильному поведению. Предположим, что ISR собирает значения в массиве, и как только будет собрано достаточное количество значений, он сигнализирует о готовности....
165 просмотров
schedule 07.02.2023

Мой первый ISR PIC32MX не срабатывает, код зависает
Я только начинаю работать с PIC32MX340F12 и MPLABX. Моей первой попыткой было написать прерывание по таймеру, поэтому я работал с таблицей данных, руководством по компилятору и примерами и пришел к следующему. Но это не работает ... прерывание...
313 просмотров
schedule 13.02.2023

Разница между ISR RTOS и ОС общего назначения
Я изучаю ISR, но не могу найти, в чем разница между процедурой обслуживания прерываний RTOS и ОС общего назначения. Может ли кто-нибудь объяснить разницу между ними, если она есть?
1884 просмотров
schedule 29.04.2022

Синтаксис ISR с ARM-GCC
Демонстрационный код в Интернете для определения ISR для ARM обычно выглядит следующим образом: __irq void ISRFunc (void); Использование ARM-GCC дает синтаксические ошибки при компиляции, я пробовал очевидные варианты, такие как _irq , но у...
2395 просмотров
schedule 29.07.2022

отключение прерываний на гиперпоточном процессоре
Допустим, у меня есть гиперпоточный процессор, и ОС видит их как два разных виртуальных процессора vp1 и vp2. Теперь в LWP1 на vp1 я отключаю прерывания аппаратного прерывания. Разве это не означает, что оба виртуальных процессора не будут получать...
586 просмотров

Портативная ISR-безопасная передача данных
Во встроенном C я пытаюсь создать общий способ безопасной передачи значения из моего ISR (передний план) в мой основной цикл (фон). Под «общим» я подразумеваю, что я не хочу приостанавливать прерывания (потому что это зависит от компилятора/ЦП и...
539 просмотров
schedule 07.04.2022

IAR Embedded Workbench для ARM — как определить процедуру прерывания?
Я попытался создать подпрограмму обслуживания прерываний для прерывания переполнения Timer2 следующим образом: #include "stm32f10x.h" /* IRQ definitions in CMSIS startup_stm32f10x */ void TIM2_IRQHandler (void) { TIM2->SR...
1119 просмотров
schedule 22.05.2023

Правильный способ сбросить флаг прерывания на STM32
Я разрабатываю проект с нуля на STM32L4 и начинаю с существующей кодовой базы. ISR реализованы следующим образом: прочитать статус прерывания в периферийном устройстве, чтобы узнать, какое событие (события) спровоцировало прерывание сделай...
3126 просмотров
schedule 03.08.2022

Создать прерывание (ISR) для создания плавного движения робота-манипулятора
В моей школе есть роботизированная рука (UR-10), которая подключена к некоторым кнопкам, и я хотел запрограммировать ее так, чтобы рука могла плавно двигаться влево и вправо при нажатии этих кнопок. В настоящее время я нахожу, что рука просто...
124 просмотров
schedule 27.12.2022

C для приложения AVR - повторение ISR
Я пытаюсь заставить работать простую процедуру прерывания на ATMega328P. К PD6 подключен светодиод, а к PB7 - встроенная кнопка. Светодиод должен нормально мигать до тех пор, пока кнопка не будет нажата, а затем загорится ровным светом в течение 1,5...
211 просмотров
schedule 21.06.2022

Невозможно изменить регистр сегмента данных. При попытке общей защиты выдается ошибка
Я пытался создать обработчик ISR, следуя этому учебник Джеймса Моллоя, но я застрял. Всякий раз, когда я запускаю программное прерывание, регистры общего назначения и регистр сегмента данных помещаются в стек, а переменные автоматически помещаются...
261 просмотров
schedule 26.08.2022

Как я могу обнаружить нажатие трех переключателей с помощью процедуры обслуживания прерывания, подключенной только к одному выводу прерывания
Недавно я попытался использовать свою плату Arduino Uno (AtMega328) для обнаружения нажатия серии из трех переключателей с помощью процедуры обслуживания прерывания. Если есть три переключателя для R, G и B. Всякий раз, когда хотя бы один из этих...
395 просмотров
schedule 04.05.2023