Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Własny sterownik urządzenia a wysłanie komendy.

Cygan1231 24 Jan 2020 22:45 147 3
  • #1
    Cygan1231
    Level 6  
    Witam wszystkich. Jako że lubię sobie ułatwiać życie, chciałbym mieć możliwość szybkiego przełączania się pomiędzy planami zasilania na WIN 10. Zmieniam plany bardzo często, zależnie czy potrzebuję wydajności czy ciszy, używanie panelu sterowania niestety trwa długo, więc napisałem sobie skrypt batch, którym mogę łatwo zmieniać ustawienia. Jednak często potrzebuję zmienić plan "w locie", dla przykładu gram sobie w jakąś grę i w pewnej lokacji FPS spadły do 59 zamiast 60, potrzeba więcej mocy!. Minimalizuję grę odpalam skrypt, zmieniam plan, odminimalizowuje grę. A jeśli mógłbym to zrobić fizycznym przyciskiem? W mojej głowie narodził się piękne marzenie o takich oto przyciskach. Moim pomysłem realizacji jest użycie Arduino z guzikami i magistrali USB. naciskam guzik, mikrokontroler konwertuje to na coś zrozumiałego dla portu USB a sterownik tego portu uruchamia w tle polecenie powercfg /s <GUID>. Jest to możliwe, czy istnieje inna metoda na ten efekt? może to być uruchomiony program w tle, czekający na wejście z kontrolera.


    TL;DR
    1. Czy jest możliwe napisanie własnego sterownika dla urządzenia USB, chodzi konkretnie o arduino?
    2. Czy sterownik może wykonać polecenie linii komend? (dla mnie to najprostsza metoda osiągnięcia zamierzonego efektu), najlepiej jeśli polecenie wykona się w tle.
    3. Jeśli powyższe odpowiedzi brzmią twierdząco. Jest jakiś prosty kurs pisania sterowników?
    Do you have a problem with Arduino? Ask question. Visit our forum Arduino.
  • #3
    Cygan1231
    Level 6  
    Zwierzak_PAH wrote:
    1. Już jest.
    2. Sterownik odpowiada za komunikację.
    3. NDT

    1, 2. Standardowy sterownik Arduino, który nie zrobi tego co chcę ale widzę że sterownik z natury nie zrobi tego co ja chcę ;P
    Chyba rozwiązanie malutkiego programiku który binduje przycisk/kombinacje do konkretnego polecenia (ale czy owy program wykona polecenie powercfg /s GUID w tle jako administrator) i ewentualnie użycie arduino jako kontrolera gier na USB (tu są chyba nawet gotowce do takiego użycia arduino) powinien to załatwić bez konwersji na UART tylko standardowym sterownikiem Arduino, później rozpoznanym jako kontroler gier USB.
    A czy system mógłby wysłać potwierdzenie aktualnie ustawionego planu energii do arduino? Było by możliwe wykonać interaktywny przełącznik, który wyświetla aktywny stan planu i aktualizuje się przy jego zmianie, nawet inna metodą niż tymże kontrolerem. Kwestie "rozjechania" się aktualnego stanu z położeniem fizycznego przełącznika to sobie rozwiąże na poziomie arduino, więc to pomijamy.

    Nie chce kupować dodatkowych sprzętów, mam już PC i arduino, liczę że tyle wystarczy (pomijam inne elementy jak diody i inne pierdoły)
  • #4
    Zwierzak_PAH
    Level 24  
    Chyba nie rozumiesz. Sterownik do andruino ma tylko 1 zadanie. Zapewnić komunikację andruino <-> PC. Resztę musisz zrobić sam.

    1. Piszesz sobie program który wgrywasz do andruino (podany link to przykład jak to robić)

    2. Na swoim PC w jakimś Ci znanym języku programowania piszesz programik który odczytuje z andruino stan naciśnięcia przycisku i robi to co mu tam zaprogramowałeś.

    Inny przykład bardziej przejrzysty choć dotyczy odczytu temperatury z andruino na PC.
    https://majsterkowo.pl/arduino-i-visual-c/