Pull to refresh
32K+
199

Embedded SW/Firmware Engineer

95,4
Rating
511
Subscribers
Send message

Как заполнять переменную pin_a_changed?

Есть ли у компьютерных игр интерфейс командной строки для отладки программы?

Напишите, пожалуйста, текст про то как работает программа ArtMoney для взлома компьютерных игр и прочих программ.

 - энкодеры помоему худшее что могло произойти с железными интерфейсами

Почему тогда осциллографы и блоки питания все еще настраиваются энкодерами?

В любом mcu есть куча таймеров, и несколько из них аппаратно поддерживают энкодеры

А как быть если нужен не просто энкодер, а энкодер с ограничением?
Чтобы упершись в максимум можно было крутить только назад CCW.
И напротив, упершись в минимум, можно было крутить только вперед CW.
Вернее крутить можно всегда, а софт должен программно накладывать пределы.
Ведь это основа любого HMI.

Не всё так просто.
В драйвер энкодера еще надо заложить ограничители.
Чтобы не позволять увеличивать счетчик выше конкретного порога.
Чтобы не позволять уменьшать счетчик ниже конкретного порога.
Сами пороги прописывать в конфиг- файле.

Конечные автоматы - дело хорошее, но необходимо рассмотреть их применение более тщательно. 

Конечный автомат золотой шаблон проектирования системного ПО.
Выручал много раз при решении прикладных задач.

Декодирование BPSK Модуляции из Звука (или передача данных по воздуху) https://habr.com/ru/articles/848068/

Задача про две ёмкости для жидкости
https://habr.com/ru/articles/662561/

Запуск I2S Трансивера на Artery [часть 2] (DMA, FSM, PipeLine) https://habr.com/ru/articles/834304/

Квантование на Триггерах Шмитта
https://habr.com/ru/articles/1003262/

Конечный Aвтомат Аппаратного I2C-Трансивера
https://habr.com/ru/articles/856548/

Обзор Протокола ISO-TP [ISO 15765-2]
https://habr.com/ru/articles/798489/

ПасТильда: ещё одна прошивка
https://habr.com/ru/articles/706470/

Передача и прием данных по лазерному лучу (SDR декодирование BPSK в реальном времени)
https://habr.com/ru/articles/1023062/

Принцип Определения Дальности Между UWB Трансиверами (Конечный Автомат Для DS-TWR)
https://habr.com/ru/articles/723822/

Протокол TBFP
https://habr.com/ru/articles/969948/

Пуск Беспроводной CLI на Микроконтроллере
https://habr.com/ru/articles/929086/

Синтаксический разбор CSV строчек
https://habr.com/ru/articles/765066/

Теория управления шаговым двигателем (или как вертеть PTZ камеру) https://habr.com/ru/articles/709500/

Техникум: Конечный Aвтомат Обработки Сигнала с Кнопки https://habr.com/ru/articles/760088/

Техникум: Распознавание Вещественного Числа из Строчки https://habr.com/ru/articles/757122/

Cross-Detect для Проверки Качества Пайки в Электронных Цепях https://habr.com/ru/articles/762142/

H-мост: Load Detect (или как выявлять вандализм)
https://habr.com/ru/articles/709374/

Load-Detect для Проверки Качества Пайки
https://habr.com/ru/articles/756572/

Настоящее "искусство" начинается там, где надо устанавливать энкодером довольно большой интервал значений, 

Для этого энкодеры HMI делают с кнопкой, чтобы нажатием переключать десятичный разряд, который надо устанавливать.

По крайней мере так сделано на лабораторных блоках питания (AC-DC).

Что понятно, то и делаю. Что не понятно - пропускаю.

Вот она
ISO 26262-6 разбор документа (или как писать безопасный софт)

https://habr.com/ru/articles/757216/

Пожалуйста. Надеюсь это поможет создать полезные устройства с энкодером.

Сделано по iso26262

20 файлов для для библиотеки работы с энкодером - не многовато ли?

Если проводить аналогию из медицины, то это как центрифугирование крови. Кровь делится на плазму, эритроциты , тромбоциты, красные кровяные тельца и прочее. Так и программный компонент тоже делится на свои фракции. Это ядро, константы, типы данных, диагностика, параметры для NVRAM, файл скрипта сборки, зависимости, конфиги, CLI и тесты. Вот как-то так.

В stm32 тоже некоторые аппаратные таймеры обладают режимом энкодера.

Но что бы будете делать если надо к одному МК подключить 30 энкодеров?

Драйвер написан согласно вот этой методичке.

Архитектура Хорошо Поддерживаемого Программного Компонента
https://habr.com/ru/articles/683762/

Если коротко, то много файлов нужны для выборочной компиляции в зависимости от располагаемых в MCU ресурсами.

Ядро драйвера в файле incremental_encoder_mcal.c

Читаю

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

Понимаю

Использую чат для слива фирменного техзадания и слива финальных исходников организации, бесценный инструмент для НАТО.

У меня вот такой модуль. Как определить его распиновку?

Не рекомендую LittleFS, она раскручена в среде ардуиещиков, но имеет кучу проблем. 

Спасибо, что еще можно попробовать где присутствует "Power-loss resilience" и "Wear leveling"?

читаю

Я вот активнее всего использую ИИ для анализа кода, анализа текстов, анализа логов, и ещё для саммаризации изменений во время ревью пул реквестов.

понимаю

Я вот активнее всего использую ИИ для слива компанейского кода в сеть, слива в интернет внутренней документации , расскрытия коммерческой тайны .

код работает, то он почти никогда не следует каким-либо best-practice. Он многословен, избыточен, а порой и неэффективен по использованию ресурсов. 

Да. Так и есть.

1
23 ...

Information

Rating
79-th
Location
Москва, Москва и Московская обл., Россия
Registered
Activity

Specialization

Инженер встраиваемых систем, DevOps-инженер
Старший
Git
Bash
CI/CD
C
Встраиваемая система
Программирование микроконтроллеров
Разработка программного обеспечения
Алгоритмы и структуры данных
Системное программирование
Разработка драйверов