1) да, на счет misra я ошибся, но везде в основном увидите рекомендации о том, чтобы избегать использование полей. Все все остается под контролем программиста. В разных компиляторах и разных архитектурах поведение может быть разным.
2) Как на счет атомарного доступа к нескольким битам? :) Только не говорите что обернете все это через union...
Действительно, только лет существует CMSIS и вы думаете что никто не догадальься использовать битовые поля в структурах? А знаете почему?
1) они запрещены во многих стандартах таких как misra и т.п.
2) теперь у вас не uin32_t для накпример регистра SR а структура... Как мне из него или в него записать сразу несколько бит (реторический вопрос, хочу на ответ посмотреть)? Учитывая что вы используете FreeRTOS да и в принципе еще есть прерывания... обычно нужно сначало сформировать конкретную маску (например для установки битов) и одной инструкцией биты регистра установить. В вашем методе это не возможно.
П.С. CMSIS давно внедрили макросы для ститывания бита/битов из регистра, на читабельности никак не сказывается.
Лучшеб гнались за сокращением времени для понимания написанного кода! Строчку мы пишем один раз, а вот читаем гораздо чаще. И каждый раз всматриваться и вникать в каждый символ сильно утомляет… Хнык, хнык :-(
А зачем вы временные рамки ставите? Я вот хочу например сделать всем жизнь лучше, по утверждению выше я никого никогда нанимать не смогу и всегда всех буду вынужден уволить.
«В любом коллективе есть человек, увольнение которого сделает жизнь всех оставшихся лучше. Если ты не знаешь у себя в колективе такого человека, то вероятнее всего такой человек — ты» (с)
Эх, смотрю кто-то (плюсующие и автор данного бреда) не догоняют как это утверждение работает. Ну что же, разберем… В кол-ве из 5 человек есть один, которого надо уволить на благо других… Увольняем. Теперь в кол-ве из 4 человек ДОЛЖЕН быть чел, увольнение которого пойдет на благо других… Увольняем… 3, 2 и остался один… Его тоже увольняем… Теперь у нас коллектив из 0 человек… Кого увольнять будем?))
к сожалению нет, было под паролем. То что ESP8266 понял из за случаного название которое генерируется для WiFI в случае использование какой-то прошивки (уже не помню. node-mcu или arduino). Около 2 лет назад дело было. Еще владею стиралкой CANDY BWM 1410PH7R/1-S, в нее тоже ESP8266 запихнули (гады). Вычислил через роутер Mirkotik, так как в списке подключенный устройв можно много информации получить о wifi модуле… Как-то так…
мда, написать код на питоне, чтобы его потом подравить для генерации в С код, чтобы потом получить хз какое ускорение… Может нужно было вручную сразу переписать (необходимый) код на С?
Про энергопотребление — вранье полное. Сравнивать надо одинаковый код на минимально возможной частоте. И много чего еще поввключать, чего в ардуино нет.
Эмулировать программно нажатия можно разными способами. Вам ничего не мешает написать свой драйвер клавиатуры, который бы эмулировал нажатия на уровне ядра. То что у вас там не работает, я не знаю. Видимо програмы написанные кем-то и все… Я понимаю например, когда вам надо эмулировать нажатия на какой-нибудь платвоме, куда можно подключить клавиатуру, но ОС не windows/linux… Больше вариантов нет…
(сарказм on)ну да, действительно.. очень много и не понятно (сарказм off):
П.С. Сниппиты к сожалению устаревшие
1) да, на счет misra я ошибся, но везде в основном увидите рекомендации о том, чтобы избегать использование полей. Все все остается под контролем программиста. В разных компиляторах и разных архитектурах поведение может быть разным.
2) Как на счет атомарного доступа к нескольким битам? :) Только не говорите что обернете все это через union...
Так-то оно да, но статься исключительно об STM32... сответственно я и имею ввиду исходники CMSIS от ST ( а не LL, SPL или HAL)
Действительно, только лет существует CMSIS и вы думаете что никто не догадальься использовать битовые поля в структурах? А знаете почему?
1) они запрещены во многих стандартах таких как misra и т.п.
2) теперь у вас не uin32_t для накпример регистра SR а структура... Как мне из него или в него записать сразу несколько бит (реторический вопрос, хочу на ответ посмотреть)? Учитывая что вы используете FreeRTOS да и в принципе еще есть прерывания... обычно нужно сначало сформировать конкретную маску (например для установки битов) и одной инструкцией биты регистра установить. В вашем методе это не возможно.
П.С. CMSIS давно внедрили макросы для ститывания бита/битов из регистра, на читабельности никак не сказывается.
присоединяюсь к комментариям выше - ради повышенной типобезопасности
Эх, смотрю кто-то (плюсующие и автор данного бреда) не догоняют как это утверждение работает. Ну что же, разберем… В кол-ве из 5 человек есть один, которого надо уволить на благо других… Увольняем. Теперь в кол-ве из 4 человек ДОЛЖЕН быть чел, увольнение которого пойдет на благо других… Увольняем… 3, 2 и остался один… Его тоже увольняем… Теперь у нас коллектив из 0 человек… Кого увольнять будем?))