Hi,
was genau ist denn das Problem? Das hast du glaub ich in deinem Beitrag vergessen.
MfG
Hallo
ich hab endlich die schaltung so weit fertig, das ich sie einsetzen könnte.
ein Port soll geoffnet werden, wenn ein bestimmtes RC5 Signal kommt.
Ich komm nur mit den Bedingungen nicht zu recht, bin eigentlich Pascaller, könnt ihr mir sagen, wie das richtig geht?
da ich im Code nichts makieren kann pack ich den hier nochmal so hin:Code:$regfile = "m8def.dat" $crystal = 4000000 $baud = 9600 $lib "mcsbyte.lbx" Config Pind.2 = Input Config Portb.1 = Output Portb.1 = 0 Portd.2 = 1 Config Rc5 = Pind.2 Enable Interrupts Dim Address As Byte , Command As Byte Print "Waiting for RC5..." Do Getrc5(address , Command) If Address <> 255 Then Command = Command And &B01111111 Print Address ; " " ; Command If Address = 30 And Command = 61 Then Portb.1 = 1 Waitms 100 Portb.1 = 0 End If End If Loop End
Getrc5(address , Command)
If Address <> 255 Then
Command = Command And &B01111111
Print Address ; " " ; Command
If Address = 30 And Command = 61
Then
Portb.1 = 1
Waitms 100
Portb.1 = 0
End If
End If
Die Probleme betreffen den Fetten Teil
Danke schonmal
Hi,
was genau ist denn das Problem? Das hast du glaub ich in deinem Beitrag vergessen.
MfG
ich glaub so müsste es gehen:
Code:If Address = 30 And Command = 61 Then Portb.1 = 1 Waitms 100 Portb.1 = 0 End If
was hast du denn für ein Gerät das bei dir Adresse 30 benutzt wird ?
Bei mir läuft alles über Addresse 0.
Kleines Codebeispiel :
GrußCode:'RC5 Receiver Getrc5(address , Command) If Address = 0 Then Command = Command And &B01111111 Print #4 , Address ; " " ; Command 'wird benötigt um den Code zu sehen welche Taste gerade empfangen wurde Portg.0 = 1 'LED ein im IR Receiver Portc.5 = 1 'LED unter µC ein Waitms 200 Portg.0 = 0 'LED aus im IR Receiver Portc.5 = 0 'LED unter µController aus 'Ein If Command = 13 And Di9_schaltzustand = "0" And Di11_schaltzustand = "0" Then Sound Portl.4 , 500 , 450 Porth.3 = 1 End If 'Aus If Command = 12 Or Di9_schaltzustand = "1" Or Di11_schaltzustand = "1" Then Sound Portl.4 , 400 , 450 Sound Portl.4 , 300 , 450 Sound Portl.4 , 200 , 450 Sound Portl.4 , 100 , 450 Porth.3 = 0 End If
Steffen
so wie der code jetzt ist bekomme ich Folgende Fehlermeldung (siehe Anhang)
Ich bin davon ausgegangen, dass ich die Bedingung vielleicht anders schreiben muss, aber irgendeinen Compiler Fehler bekomme ich dann immer.
30 61 bekomme ich, wenn ich den Power Knopf meiner WinTv Fernbedienung drücke. zum Fernsehen benutze ich einen Media PC und möchte den per Fernbedienung Einschalten können.
Schreibe diesen Abschnitt mal so : ( da ist dir "Then" nur in die falsche Zeile gerutscht)
Code:If Address = 30 And Command = 61 Then Portb.1 = 1 Waitms 100 Portb.1 = 0 End If
Des hab ich auch schon geschrieben!
Siehe Post von 0:27
Cool, danke Leute, jetzt gehts...ich kenn das so nicht, bei Pascal kannst du das Quasi hinschreiben, wo du willst.
@adrisch: Sorry, hab dein Code bestimmt 5 mal mit meinem verglichen und und den Unterschied einfach nicht gesehen
MAcht nichts...
sry dein Post hatte ich voll überlesen adrisch ^^ aber offensichtlich erging es Testus2K auch nicht anders.
Gruß
Steffen
Lesezeichen