Skocz do zawartości

Jak obsłużyć RC5 w Bascomie ?


Tolo

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

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

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 
Link do komentarza
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.

Link do komentarza
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.

Link do komentarza
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

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.