Skocz do zawartości

Obsługa RC5 z Arduino


mateusz797

Pomocna odpowiedź

Czesc przegladalem sobie kurs forbot. Chcialbym zrobic zadanie na arduino odnosnie odczytu kodow RC5. Jednak po wciskaniu przycisków z jakiegos powodu nie wysweitla sie kod dla danego przycisku pilota philipps. Moglby ktos pomoc

Skopiowałem ten o to program do arduino.

1.Kod z kursu

image.thumb.png.e2d1880bfa7aafd33c885d0f340be20f.png

 

2. Zawartosc biblioteki RC5

 

/*
 *  Wiring notes:
 *  
 *  Using IR sensor like this:
 *    http://www.adafruit.com/products/157
 *  wired as follows:
 *   pin1 - arduino pin 7 
 *   pin2 - ground
 *   pin3 - 5V
 *  
 *  This code will display address, command and toggle for decoded sequences.
 *  Pressing the power button twice gives this result:
 *     a:0 c:12 t:0  <- first press, a:0 => TV1, c:12 => Standby command.
 *     a:0 c:12 t:0
 *     a:0 c:12 t:0
 *     a:0 c:12 t:1  <- second press, toggle changes
 *     a:0 c:12 t:1
 *
 */
 
#include <RC5.h>

int IR_PIN = 7;
unsigned long t0;
RC5 rc5(IR_PIN);

void setup() {                
  Serial.begin(9600);
  Serial.println("Starting");
}

void loop() {
  unsigned char toggle;
  unsigned char address;
  unsigned char command;
  if (rc5.read(&toggle, &address, &command))
  {
    Serial.print("a:");
    Serial.print(address);
    Serial.print(" c:");
    Serial.print(command);
    Serial.print(" t:");
    Serial.println(toggle);
  }
}

3. Kod arduino

 

#define TSOP_PIN 10
 
#include <RC5.h>
RC5 rc5(TSOP_PIN); //Informacja o podłączeniu odbiornika TSOP
 
//Zmienne dla RC5
byte address; 
byte command;
byte toggle;
 
void setup() {                
  Serial.begin(9600);
}
 
void loop() {
  //Jeśli odebrano komendę
  if (rc5.read(&toggle, &address, &command))
  {
    Serial.print("A:");
    Serial.print(address);
    Serial.print(" K:");
    Serial.print(command);
    Serial.print(" T:");
    Serial.println(toggle);
    delay(200);
  }
}

image.thumb.png.97ebc4b8e621e37da4a7edd3276b21bc.png Podlaczenia i screeny, widac ze nic sie nie wyswietla

image.thumb.png.c68e5bf8807645cb731dfb8d3b04e9df.png

image.thumb.png.6e6afe082a10e30f2397422ceb27ee67.png

image.thumb.png.14d2369fcb4c1bbaf7d54d228db2448f.png

image.thumb.png.a8073f636bef453fc4dc5a07957cab09.png

image.thumb.png.a804a59a3b8ea5cc47dddfc8569276e0.png

image.png

Link do komentarza
Share on other sites

@mateusz797 Na przyszłość nie wrzucaj screenshotów kodów, tylko same kody programów - są bardziej czytelne. 

Coś tam się jednak pojawiło w monitorze portu. Podzespoły nie są z zestawu do kursu to ciężko coś doradzić, ale najwyraźniej układ TSOP nie jest kompatybilny z pilotem. Masz pewność, że ten układ się nadaje?

Link do komentarza
Share on other sites

Tak dlatego ze miesiąc temu mi normalnie działało. A teraz nagle nie. Naprawde nic nie zmienialem w programie ani w bibliotekach ani nigdzie, w wersjach arduino. Działa ten program z forbota bo jest podnstandard RC5. Niewiem dlaczego w pewnym momencie przestał dzialac. 

Link do komentarza
Share on other sites

@mateusz797 Głupie pytanie ale zapytam... a w pilocie są dobre baterie? Sprawdź czy dioda IR w pilocie miga - możesz to zobaczyć przy pomocy kamery ze smartfona - przednia albo tylna, w tych nowszych modelach tylne mają inne filtry i nie widać.

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • 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.