In diesem Beispiel wird eine zusätzliche RS232 zur Steuerung eines Servo-Bausteines verwendet. Ich denke das hilft dir auch etwas:
Code:
'###################################################
'servotreibertestrns1.bas
'für
'RoboterNetz Standard-Roboter Board RBNFRA ab V1.1
'Achtung, dieses Demo ist nur für Servotreiber RNS1 (siehe Download) gedacht
'
'Aufgabe:
'10 Servos über CoController ansteueren
'Für die Ansteuerung muss ein RS232 Jumper oder eine
'Brücke gesteckt werden, siehe Tips im Roboternetz Projektforum
'Das Demo dreht erst langsam Servo 1 von Pos 1 zu 255 und
'danach wechselt es schnell 4 mal die Seite. Danach beginnt es von vorn
'Natürlich kann man auch 10 Servos gleichzeitig ansteuern, der
'Übersicht wegen hier nur das Beispiel mit einem Servo
'
'Autor: Frank
'Weitere Beispiele und Beschreibung zur rnbfra
'unter http://www.Roboternetz.de + robotikhardware.de
'###################################################
$regfile = "m16def.dat"
Declare Sub Rnb_servo(byval Servonummer As Byte , Byval Position As Byte)
Declare Sub Rnb_servob(byval Servonummer As Byte , Byval Position As Byte)
Dim I As Byte
Dim Pos As Byte
$crystal = 8000000 'Quarzfrequenz
$baud = 9600
Wiederhole:
For I = 1 To 255
Call Rnb_servo(1 , I)
Waitms 50
Next I
For I = 1 To 4
Pos = 1
Call Rnb_servo(1 , Pos)
Wait 2 'Warte 2 Sekundne
Pos = 255
Call Rnb_servo(1 , Pos)
Wait 2
Next I
Goto Wiederhole
Sub Rnb_servo(byval Servonummer As Byte , Byval Position As Byte)
Print "#s" ; Chr(servonummer) ; Chr(position)
End Sub
Sub Rnb_servob(byval Servonummer As Byte , Byval Position As Byte)
Open "comd.7:9600,8,n,1" For Output As #2
Print #2 , "#s" ; Chr(servonummer) ; Chr(position)
Close #2
End Sub
End
Die für dich entscheidenen Zeilen sind hier:
Hier wird Port D7 als TX definiert
Code:
Open "comd.7:9600,8,n,1" For Output As #2
Print #2 , "#s" ; Chr(servonummer) ; Chr(position)
Close #2
Lesezeichen