PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : rc5 sender funktioniert nicht richtig



Grillmeister Markus
13.11.2005, 14:41
hallo
ich bin gerade dabei mir einen rc5 sender zu bauen. Das teil soll 4 "kanäle" haben um eben 4 verschiedene dinge damit zu schalten. Die Schaltung und das programm funktioniert auch prizipell, aber es läuft nich sehr "stabiel". manchmal wird das signal sofort vom fernseher erkannt, manchmal muss man aber auch ca. 5 sec. auf der taste bleiben, bis der fernseher dem signal entsprechend umschaltet. verwendent habe ich einen at90s2313 und die LD 274. Diesen code hab ich jetzt:

$regfile = "2313def.dat"
$crystal = 3686400

Ddrd = &B0111100
Ddrb = &B00000000
Portd = &B0111100

Do
If Pind.2 = 0 Then
Rc5send 0 , 0 , 32
Waitms 200
End If

If Pind.3 = 0 Then
Rc5send 0 , 0 , 33
Waitms 200
End If

If Pind.4 = 0 Then
Rc5send 0 , 0 , 16
Waitms 200
End If

If Pind.5 = 0 Then
Rc5send 0 , 0 , 17
Waitms 200
End If
Loop

End

hat jemand von euch eine idee was daran falsch ist?
mfg Maggus

linux_80
13.11.2005, 16:19
Hallo,

was mir so einfällt, ist zB. das Togglebit,
es heisst so, weil es jedesmal anders sein soll,
das gehört dazu, das der Empfänger weiss, das es sich um ein neues signal handelt.
Anders als zB beim verstellen der Lautstärke, da kann man immer draufbleiben.

Schau Dir auch dazu den Befehl Toggle an, könnte hilfreich sein.

Looser
13.11.2005, 16:54
$regfile = "2313def.dat"
$crystal = 3686400

Dim Togbit As Byte , Command As Byte , Address As Byte

Ddrd = &B0111100
Ddrb = &B00000000
Portd = &B0111100

Togbit = 0
Address = 0

Do
If Pind.2 = 0 Then Command = 32
If Pind.3 = 0 Then Command = 33
If Pind.4 = 0 Then Command = 16
If Pind.5 = 0 Then Command = 17
Gosub Senden
Loop

Senden:
Rc5send Togbit , Address , Command
Toggle Togbit
Return


Versuch das mal !!!

super_castle
13.11.2005, 18:38
Du musst auch 8 Bit setzen und bestimmen und keine 7.
Schau deine Port-zuweisung einmal genau an.
Ausserdem wird der Eingang mit "0" gesetzt und die Pullups anschliessend mit "1".

Castle