Вот не вижу никакой проблемы обрабатывать кнопки в задаче. Оно работает нормально. С энкодером ситуация другая, его лучше подключать к таймеру если это STM, результаты так же вполне нормально обрабатываются в потоке RTOS.
Вот не вижу никакой проблемы обрабатывать кнопки в задаче. Оно работает нормально. С энкодером ситуация другая, его лучше подключать к таймеру если это STM, результаты так же вполне нормально обрабатываются в потоке RTOS.
Начал изучать FreeRTOS. Не могу понять вот что. Как правильно обработать прерывание? Вот, например, простенькая задача. Обрабатывать... Читать далее
Господа, по гайду решил припаять к своей звуковухе 2 кондера. Только вышло не 22мкф как в инструкции, а 10v 1000мкф Собственно,... Читать далее
Всем привет. Время глупых вопросов: Купил мать на учебу в диагностике: P5g41t-m le Сиптомы, не стартует, греется юг При снятии... Читать далее
И все же я считаю, что через прерывание сложнее. Вот например каким образом делать фильтрацию дребезга контактов? В потоке... Читать далее
мне больше интересно, как предполагается оплачивать работу в компаниях, где деньги зарабатывают сами сотрудники компании... Читать далее
Добрый день! Извините за беспокойство и если не по адресу. Возможно кто-то может помочь, подсказать, возможно ли восстановить... Читать далее
Комментарии: 13
Aleksandr
А если надо усыпить процессор?
Anonim
>в отдельном потоке с высоким приоритетом
Aleksandr
и пробудить по кнопке, например?
Anonim
отлично, пусть ядро молотит по-максимуму
Anton
Это уже совсем другая задача, которой изначально в вопросе небыло :) Почему оно должно молотить по - максимуму, задача исполняется допустим с частотой 100Гц, этого более чем достаточно, чтобы обрабатывать нажатия кнопок. У меня в рабочем проекте около 60 кнопок, многие из них вообще не возможно обрабатывать по прерыванию... все работает прекрасно :)
Anonim
В freertos почитай про функции FromISR зачем молотить даже по 100гц, если вполне можно не молотить? и механизмы для "не молотить" встроены в OS
Aleksandr
Спасибо. Это мне ещё рано. Я это придумал, только чтобы продемонстрировать невозможность задачи с высоким приоритетом в некоторых случаях.
Anonim
Я не про просыпание, я в целом про твой вопрос FromISR это функции для обмена данными из прерывания в задачи семафоры, очереди
Aleksandr
Про очереди сам думал, но мне кажется, что оно не совсем то, что нужно.
Anonim
почему?
Aleksandr
Да фиг знает. Читать надо подробнее.
Anonim
там ещё нотификации, стримы, сообщения есть но всё равно всё упирается в глобальную переменную и в примерах у них именно через глобальную всё решается
Anton
Как я уже сказал, не всегда возможно обрабатывать по прерыванию, мне вот состояния кнопок вообще приходят по SPI от рядом стоящей ПЛИС. Опрос клавиатуры в задаче универсален и работает нормально. К тому же поток обработки клавиатуры исполняется очень быстро и засыпает.