Hallo,
hier noch mal der gesamte Code.
Code:
$regfile = "ATtiny13.dat"
$crystal = 9600000
$hwstack = 32
$swstack = 5
$framesize = 20
!LDI R16, &b10000000
!LDI R17, &b00000000
!OUT CLKPR, R16
!OUT CLKPR, R17
Config Pinb.0 = Output 'Servo
Config Pinb.4 = Output 'LED
Config Pinb.2 = Input 'Empfänger
Pinb = 0
Led Alias Portb.4
Dim A As Word
Dim W As Word
Enable Interrupts
Pulseout Portb , 0 , 1000 'Servo in Startpos. bringen
Do
Pulsein W , Pinb , 2 , 1 'Eingang Empfängersignal
If W <= 150 And A <= 5000 Then
For A = 1000 To 5000 Step 10 'mit diesen Einstellungen läuft der Servo
Pulseout Portb , 0 , A 'nach meinen Wünschen.
Led = 0 'LED ist nur opt. Indikator beim Test
Waitms 5 'mit diesem Wert kann die Geschwindigkeit beeinflusst werden
Next A
Elseif W > 170 And A >= 1000 Then
For A = 5000 To 1000 Step -10
Pulseout Portb , 0 , A
Led = 1
Waitms 5
Next A
Else
Pulseout Portb , 0 , A 'Servo bleibt an letzter Pos. stehen
End If
Loop
End
Viele Grüße
Richy
Lesezeichen