Transformer-V писал(а): Пн июн 01, 2026 17:55:48
Но рулится либо своим процем(то что ты показал выше, то о чем я писал ранее), либо штатным SoC как рабом. Не согласен подтверди!
Если ты приводишь какую то свою "очень ценную мысль". то потрудись привести какие то доказательства.
А так - тупой набор слов дилетанта.
В обычном мыше с оптическим сенсором и проводным подключением к USB или PS/2 есть только две микросхемы. Это оптический сенсор и обычный 8-битный МК. Если имеется беспроводной интерфейс, то применяется МК с этим интерфейсом, который ты гордо называешь SoC. Никакой разницы нет. Поскольку настройка сенсора происходит из ПК, сенсор выступает ВСЕГДА в роли периферии, а МК в роли управляющего сенсором моста. Естественно, что кнопки мыша висят на МК. Вешать их на сенсор никому в голову не придет
Впрочем, у тебя есть возможность привести даташит сенсора содержащего в себе кнопки. Это будет годное доказательство твоей "квалификации"...
Transformer-V писал(а): Пн июн 01, 2026 17:55:48Проецирование "выделенных" областей в RAM это не совсем блок DMA. Тебя просили найти реальный блок DMA, которым можно рулить.
Во первых, ты меня ни о чем не просил.
Во вторых, мне по барабану твой птичий язык. Если периферия пишет массив данных в выделенный участок ОЗУ без привлечения кода, это называется ПРЯМОЙ ДОСТУП К ПАМЯТИ. Есть там настройка или нет - совершенно фиолетово. В приведенном контроллере модуль USB самый простой реализующий единственный класс HID. Поэтому нет никакого смысла настраивать что либо в загрузке данных из модуля в ОЗУ. FIFO каждой конечной точки в ОЗУ перестает быть FIFO и получает произвольный доступ к шине. Это и есть DMA.
Но разговор был не про DMA, а про то, что модуль USB работает почти полностью автоматически и минимально грузит исполняемый код.
Transformer-V писал(а): Пн июн 01, 2026 17:55:48хост шлет инфу постоянно, проц дергается в конвульсиях либо отвечая, либо игнорируя.
Мыша не требует при своей работе никакой инфы от хоста. Нужны только запросы. Модуль USB полностью обрабатывает запрос и размещает его в соответствующем эндпойнте, генерируя прерывание. От МК требуется лишь зайти в обработчик и запустить ответ с данными от кнопок и сенсора. Основной поток данных идет оттуда. От ПК может идти только настройка сенсора.
Для загрузки данных в ПК код тупо пишет данные в эндпойнты (читай в ОЗУ) и запускает выгрузку этих данных в ПК.
Именно поэтому в мышах ставят простейшие МК, но с USB модулем. И в них нет никакой защиты от дребезга портов. Что мы и наблюдаем в оном Сайпрессе.
Так же мы наблюдаем, что светодиод подключен к сенсору, а не к МК и ему палкой не докинуть до кнопок. Разве только через общее питание.
