Skocz do zawartości
Zaloguj się, aby obserwować  
Tolo

Jak obsłużyć RC5 w Bascomie ?

Pomocna odpowiedź

Witam mam problem postanowiłem dorobić zdalne sterowanie do swojego robota przeszukałem internet oraz helpa Jednak nie wszystkie moje wątpliwości zostały wyjaśnione a więc według mnie program powinien wyglądać jakoś tak ;


$regfile = "attiny2313.dat"                              
$crystal = 1000000                                     
$lib "mcsbyte.lbx"
Config Portd = Input
Config Rc5 = Pind.5                                
Dim Address As Byte , Command As Byte
Enable Interrupts
                                                       'włączmy przerywania
Do
Getrc5(address , Command)
If Address = 0 Then
Command = Command And &B01111111
Wstecz
End If
loop

Ale nadal nie wiem kilku rzeczy czym jest Address oraz Command ?

Z góry dzięki

Udostępnij ten post


Link to post
Share on other sites

Pierwsze do kod urządzenia - przykładowo TV, drugie to komenda jaka jest wysłana przez pilot.

Udostępnij ten post


Link to post
Share on other sites

elektroda.pl/rtvforum/topic709624.html tutaj masz opisane jak sprawdzić jaką komendę ma każdy przycisk tylko musisz mieć wyświetlacz

Udostępnij ten post


Link to post
Share on other sites

Czyli co to powinno wyglądać jakoś tak :


$regfile = "attiny2313.dat"                              
$crystal = 1000000                                      
$lib "mcsbyte.lbx" 
Config Portd = Input 
Config Rc5 = Pind.5                                
Dim Address As Byte , Command As Byte 
Enable Interrupts 
                                                       'włączmy przerywania 
Do 
Getrc5(address , Command) 
If Address = 0  and Command = 0 
then gosub Naprzod 

End If 
loop 

Udostępnij ten post


Link to post
Share on other sites
No tak ale skąd mam wiedzieć jaki kod mam mój odbiornik ?

Twój odbiornik nie ma żadnego kodu, bo to ATTiny2313, co najwyżej twój nadajnik ma kod, właściwie to adres który go identyfikuje. Najprościej go poznać podpinając sobie wyświetlacz LCD i wyświetlić pole Adrres z które zwraca GETRC5.

Jeżeli nie możesz podpiąć wyświetlacz, to albo wyślij sobie tą wartość przez RS232 do terminala windowsa, albo zapisz w pamięci EEPROM CPU pod jakiś znany ci adres i odczytasz ją programatorem, poleceniem Read EEPROM.

Udostępnij ten post


Link to post
Share on other sites

Dobra to chyba użyje wyświetlacz

Udostępnij ten post


Link to post
Share on other sites

Zawsze można za pomocą polecenia "Print" wyświetlić informacje w terminalu. Później tylko skierować pilot do odbiornika podczerwieni i kod z pętli powinien na bieżąco Ci wyświetlać, który przycisk wcisnąłeś na pilocie.

Udostępnij ten post


Link to post
Share on other sites

Ok udało mi się napisać kod który po przyciśnięciu klawisza "6" zapala diodę podaje kod może komuś się przyda

$regfile = "attiny2313.dat"                                 'najpierw określamy typ proca
$crystal = 1000000                                          'definiujemy z jakim taktowaniem będzie pracował
$lib "mcsbyte.lbx"
Config Rc5 = Pind.5
Config Pind.3 = Output
Dioda Alias Pind.4
Enable Interrupts
Dim Address As Byte , Command As Byte
Do
 Getrc5(address , Command)

Reset Dioda
If Address = 0 Then
Command = Command And &B01111111
End If
If Command = 6 Then
Dioda = 1
  End If
Loop

End

Używam takiego pilota http://sklep.avt.pl/p/pl/488367/rc5-rc6.html

Dzięki wszystkim za pomoc

Udostępnij ten post


Link to post
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!

Gość
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.

Zaloguj się, aby obserwować  

×
×
  • Utwórz nowe...