Hallo,

ich hab noch ein bischen getestet und man kann jetzt einen Port über den Bus wunderbar schalten:

'Sensor
$regfile = "attiny2313.dat"
$crystal = 3579545
$baud = 4800
Portb = &B11111111

Config Portd = Output

Config Debounce = 100
Set Portb.1

Do
Debounce Pinb.1 , 0 , Schalter , Sub
Loop

Schalter:

Portd.2 = 1
Waitms 10
Print "111"
Waitms 10
Portd.2 = 0
'Waitms 10

Return

End



'Aktor
$regfile = "attiny2313.dat"
$crystal = 3579545
$baud = 4800

Config Portb = Output
Dim Empfangen As String * 3

On Urxc Onrxd
Enable Urxc
Enable Interrupts

Portd.2 = 0

Do
If Len(empfangen) > 2 Then 'wenn mehr als 2 Zeichen empfangen

'If Empfangen = "111" Then

Waitms 200
Toggle Portb.1

Empfangen = "" 'löschen

'End if
End If
Loop
End

Onrxd:
Empfangen = Empfangen + Chr(udr)
Return


Ein gewisses Problem scheint es trotzdem noch zu geben, ich würde gerne statt If Len(empfangen) > 2 Then (also mehr als 2 Zeichen empfangen) lieber 'If Empfangen = "111" Then verwenden, aber der Wert von Empfangen scheint nicht gleich zu sein obwohl so gesendet.

Möglicherweise ein Formatproblem das evt. von ASCII auf String gewandelt werden muß ?

Was ich auch noch vermute das die Zeichen nicht sauber gesendet wird, der Sendepuffer beim Sensor noch irgendwelchen Schrott mitsendet ?
Wie kann man den Sendepuffer löschen bevor ich meine Zeichen übertrage ?

Mfg, Jürgen