Skocz do zawartości

Program do game pada DIY


Yanko

Pomocna odpowiedź

Witam. Z nudów zbudowałem kontroler do gier sterowany arduino. Niestety moja wiedza jeśli chodzi o programowanie jest dosyć średnia więc kontroler nie działa. Budowę ma bardzo prostą. Ot kilkanaście guzików i joystick na krańcówkach. Problemów jest kilka:

1)chciałbym to zrobić przy użyciu dwóch arduino gdyż suma wejść idealnie zgadza się z ilością guzików. Mam arduino leonardo, które by służyło za komunikację z komputerem i Uno, które by odpowiadało za połowę guzików i wysyłało dane przez piny RX/TX

2)czy mogę jakoś połączyć te dwa arduino tak by Uno było zasilane z Leonardo a Leonardo z usb

3)chcialem sprawdzić czy wszystko dobrze podłączyłem ale ten mój testowy program sprawia że każda płytka wypluwa przez serial zapętlony ciąg znaków(qwertyuiopa) niezależnie czy ma jakieś guziki wpięte czy nie. 

Za każdą pomoc serdecznie będę wdzięczny. 

void setup() {
pinMode(1, INPUT);
pinMode(2, INPUT);
pinMode(3, INPUT);
pinMode(4, INPUT);
pinMode(5, INPUT);
pinMode(6, INPUT);
pinMode(7, INPUT);
pinMode(8, INPUT);
pinMode(9, INPUT);
pinMode(10, INPUT);
pinMode(11, INPUT);
pinMode(12, INPUT);
pinMode(13, INPUT);
Serial.begin(9600);
}
 
void loop() {
  // put your main code here, to run repeatedly:
  if (digitalRead(3) == HIGH) {
    //Send an ASCII 'q',
    Serial.print('q');
  }  
  if (digitalRead(4) == HIGH) {
    //Send an ASCII 'w',
    Serial.print('w');
  }
    if (digitalRead(5) == HIGH) {
    //Send an ASCII 'e',
    Serial.print('e');
  }
    if (digitalRead(6) == HIGH) {
    //Send an ASCII 'r',
    Serial.print('r');
  }
    if (digitalRead(7) == HIGH) {
    //Send an ASCII 't',
    Serial.print('t');
  }
    if (digitalRead(8) == HIGH) {
    //Send an ASCII 'y',
    Serial.print('y');
  }
    if (digitalRead(9) == HIGH) {
    //Send an ASCII 'u',
    Serial.print('u');
  }
    if (digitalRead(10) == HIGH) {
    //Send an ASCII 'i',
    Serial.print('i');
  }
    if (digitalRead(11) == HIGH) {
    //Send an ASCII 'o',
    Serial.print('o');
  }
    if (digitalRead(12) == HIGH) {
    //Send an ASCII 'p',
    Serial.print('p');
  }
    if (digitalRead(13) == HIGH) {
    //Send an ASCII 'a',
    Serial.print('a');
  }
}

 

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.