' Datum: 23.03.2013 jr ' Stand 16.12.2013 jr ' selbstbau tiny 13 mit IR-lichtschranke und Servo Motor ' interne clock auf 8 Mhz gefused ckdiv8 kein häkchen in pony prog ' routine nach einer Anregung durch www.Jacob-Pirna.de. ' pin b4 = Eingang Signal 1 gelbes Kabel Lichtschranke ' pin b3 = Eingang Signal 2 weißes Kabel Lichtschranke ' port b2 = nichtbelegt ' port b1 = Ausgang für Servomotor ' port b0 = LED auf high gesetzt, macht async Multivibr. an ' Dateiname: V3_Servo_IR_clock8_lichtschr_tiny13.bas $regfile = "attiny13.dat" ' definieren des verwendeten Chips $crystal = 9600000 ' intern Quarz Takt 9,6 mhz fuse 10 Config Servos = 1 , Servo1 = Portb.1 , Reload = 10 Ddrb = &B00000011 'definieren der verwendeten Ports ( 1 = ausgang; 0= eingang) Portb = &B00000000 'definieren Pin-Status am Port ( 0= low level; 1= high level) Enable Interrupts Dim X As Byte Dim Winkel As Byte ' Etwa auf Mittelstellung setzen Winkel = 120 Servo(1) = Winkel Led Alias Portb.0 Led = 0 Main: If Pinb.4 = 1 Or Pinb.3 = 1 Then Incr X If X > 0 Then While Winkel > 80 Led = 1 Decr Winkel ' bestes ergebnis mit 80 / 120 / 160, Servo(1) = Winkel Waitms 10 Wend Wait 4 End If End If If X > 0 Then While Winkel < 160 Incr Winkel Servo(1) = Winkel Waitms 10 Wend End If Led = 0 X = 0 Goto Main End