Можно ли через ардуино по USB при помощи кнопки или сенсора включить или выключить монитор компютера

Тема в разделе "Arduino & Shields", создана пользователем Narek, 7 янв 2016.

  1. Narek

    Narek Нуб

  2. geher

    geher Гуру

    Если монитор поддерживает (а если монитор не совсем древний и хоть как-то соответствует стандартам, то должен поддерживать), в любом случае понадобится программа на ПК, принимающая команду по USB и выключающая монитор. Программа на ПК должна просто подать команду выключения.
    Как подать эту команду, можно посмотреть, например, тут:
    http://forum.ixbt.com/topic.cgi?id=22:73173

    Альтернативный вариант - механически давить на кнопку монитора сервой, а текущее состояние считывать фотодатчиком с индикатора включения монитора. :)
     
  3. Narek

    Narek Нуб

    Мне нужно чтобы по usb при нажатии на кнопу отключился монитор , а при отпускании нажтии на кнопку монитор включился.
     
  4. geher

    geher Гуру

    Кнопка подключается к ардуино, ардуино при нажатии на кнопку посылает в последовательный порт команду. Программа на ПК читает с последовательного порта, соответствующего ардуине, команду, определяет текущее состояние монитора (если возможно) и, если монитор включен, посылает команду выключения, или, если монитор выключен, команду включения.
    Копать в сторону управления питанием в используемой ОС.
    Вроде даже какой-то API должен наличествовать для этого дела.
     
  5. Narek

    Narek Нуб

    Определение текущего состояния монитора (если возможно) -- но ведь на всех клавиатурах есть кнопка включить и выключить монитор
     
  6. geher

    geher Гуру

    Во-первых, кнопка выключения монитора есть далеко не на всех клавиатурах. Обычно вообще присутствует (и то не всегда) только кнопка "усыпления" компьютера.
    Во-вторых, сам монитор может не в полной мере поддерживать протокол управления и не возвращать в ОС свое состояние.

    Если же имелось ввиду именно "усыпление" ПК, то теоретически проще всего взять что-то леонардоподобное (поддерживающее режим HID устройства на USB) и посылать при ее помощи в USB код клавиши "усыпления" по нажатию кнопки на ардуине. Но не всякий ПК (зависит от прошивки на материнке, подключенной клавиатуры) сможет "пробудиться" в этом случае.

    Если ориентироваться на ранее описанный вариант со взаимодействующими программами на ПК и ардуине, то программой на ПК "разбудить" его в таком случае не получится. Придется настраивать "пробуждение" ПК по сигналу с USB, если возможно.