как сделать так, чтобы микроконтроллер Arduino не разбудил компьютер

У меня есть Arduino Pro Micro, которая отправляет данные только через COM-порт, подключенный к ПК. Я не использую протокол USB, и я думаю, что Arduino отправляет запрос через USB, и это причина, по которой мой компьютер просыпается

Я проверил диспетчер устройств и обнаружил, что для Arduino нет вкладки управления питанием, поэтому я не могу запретить Arduino пробуждать систему. Также в моем BIOS нет возможности просыпаться при определенной комбинации клавиш

, 👍0

Обсуждение

Это «я не использую протокол USB» сбивает с толку. Arduino подключен через USB, верно? Таким образом, он использует один из более чем дюжины протоколов USB. Скорее всего USB/CDC. Или вы пытаетесь эмулировать клавиатуру с помощью Arduino. В этом случае USB/HID. Убрав это, людям будет легче ответить на ваш вопрос., @st2000

Нет, я использую его как стандартный Arduino, только используя com-порт., @Hadrox1

В Aduino Pro Micro используется процессор [Atmel,теперь Microchip, ATMEGA15U4](http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-7766-8-bit-AVR-ATmega16U4-32U4_Summary.pdf) со встроенной в USB. Поскольку он встроен в процессор (другие Arduino имеют USB вне процессора), ваша программа может его изменить. Я подозреваю, что при нормальной работе порт настроен на USB / CDC и представляет себя как COM-устройство для компьютера Win. Вы проверили COM-устройство, связанное с Arduino, на вкладку управления питанием? Если нет COM-устройства Arduino, может ли ваша программа изменить протокол USB?, @st2000

Мой Arduino отображается в коммуникационном устройстве как Arduino Leonardo. И программа, в которой я работаю, — это проект deej, который я нашел на GitHub., @Hadrox1

Ну, я в замешательстве. Я только что провел много времени, просматривая [проект github](https://github.com/omriharel/deej), к которому не прикасались в течение 2 лет, пытаясь выяснить, нужно ли хост-компьютеру Win запускать GO. программа или нет. Затем гоняемся за тем, что выглядит как устаревшая учетная запись разногласий (которая, вероятно, была бы лучшим местом для обсуждения). В конце концов, я больше не знаю, что предложить. Я думаю, что Arduino выглядит как USB / CDC, и я думаю, что ваш компьютер необычен тем, что он включается, когда видит активность USB / CDC. Или, может быть, любая активность USB. Я НЕ ЗНАЮ., @st2000

Платы Arduino с USB-модулями, встроенными в микроконтроллер, могут объявлять себя составными устройствами, состоящими из COM-устройства, клавиатуры и мыши. По крайней мере, так делает Леонардо, и я подозреваю, что и ваш тоже. Возможно, вы захотите найти такие устройства с таким же VID/PID, а затем проверить свои предпочтения по питанию., @the busybee


2 ответа


1

Предположим, что компьютер включается благодаря данным, полученным по USB-кабелю от DEEJ-бокса, а не простому подключению USB- кабеля от DEEJ-бокса.

Подумайте, если этот проект работает иначе, перепишите Arduino Sketch, чтобы он не отправлял никаких данных до тех пор, пока определенный цифровой вывод GPIO не изменится с 1 на 0. Поместите кнопочный переключатель NO на землю на этом цифровом выводе GPIO. Не забудьте запрограммировать этот контакт как вход GPIO с подтягиванием. Если это сработает, коробка DEEJ не только будет управлять громкостью, но и сможет включать компьютер.

,

Прежде чем приступить к переписыванию Sketch и добавлению переключателя, вы можете попробовать стереть Arduino и убедиться, что простое подключение Arduino не включает ваш компьютер., @st2000


-1

Я только что понял, что окно просыпается, когда программа deej работает с подключенным Arduino, но когда Arduino подключен без запущенной программы, проблем нет. Так что беда глубокая

,

Ваш ответ может быть улучшен с помощью дополнительной вспомогательной информации. Пожалуйста, [измените], чтобы добавить дополнительные сведения, такие как цитаты или документация, чтобы другие могли подтвердить правильность вашего ответа. Дополнительную информацию о том, как писать хорошие ответы, можно найти [в справочном центре](/help/how-to-answer)., @VE7JRO

да, но вопросы звучали как не будить комп такой прошивкой в Микро, @Juraj

Нет проблем с ответом на ваш вопрос @Hadrox1. Но, похоже, вы ищете причину, а не решение. Здесь (как и на всех веб-сайтах stackexchange) рекомендуется улучшить вопрос, отредактировав его. Итак: 1) Вы используете программу Windows для DEEJ на своем компьютере с Windows? 2) "без запуска программы" Это программа на Arduino или на компьютере с Windows? 3) Что возвращается, когда вы вводите «powercfg -requests» в командную строку на вашем компьютере с Windows после того, как DEEJ включил его?, @st2000