Witam. Próbuję zrobić z µC - atmega8 - i diody odbierającej sygnały w podczerwieni, urządzenie co będzie wyświetlało na wyświetlaczu LCD otrzymany adres po przyciśnięciu przycisku na pilocie i komendę. Mój problem tkwi w tym, że urządzenie co odbiera sygnał w podczerwieni moim zdaniem nie przesyła żadnych danych do µC. Posiadam takie coś :
(sorki za jakość, nie miałem lepszego aparatu pod ręką)
Do atmegi8 podpinam to krótszą nóżką do pinu b 1 a dłuższą do R = 220Ω a następnie do +. No i gdy uruchomię atmege8 to na wyświetlaczu pisze: adres = 255 a komenda = 127. A gdy nacisnę jakiś przycisk na pilocie to nic się nie dzieje. Pilot jest sprawny na 100%. µC jest zaprogramowany na odbiór danych w standardzie RC5.
Ma ktoś pomysł jak rozwiązać ten problem ??
Kod programu:
(sorki za jakość, nie miałem lepszego aparatu pod ręką)
Do atmegi8 podpinam to krótszą nóżką do pinu b 1 a dłuższą do R = 220Ω a następnie do +. No i gdy uruchomię atmege8 to na wyświetlaczu pisze: adres = 255 a komenda = 127. A gdy nacisnę jakiś przycisk na pilocie to nic się nie dzieje. Pilot jest sprawny na 100%. µC jest zaprogramowany na odbiór danych w standardzie RC5.
Ma ktoś pomysł jak rozwiązać ten problem ??
Kod programu:
$regfile = "m8def.dat"
$crystal = 8000000
Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , E = Portc.4 , Rs = Portc.5
Config Rc5 = Portb.1
Dim Address As Byte , Command As Byte
Enable Interrupts
Do
Getrc5(address , Command)
Command = Command And &B01111111
Cls
Lcd "Adres : " ; Address
Lowerline
Lcd "Komenda: " ; Command
Waitms 100
Loop
End