halli hallo....
ich bin mir nicht sicher, ob das stimmt, was ich hier habe. Das stammt aus HE-laserscann... damals hab ich "versucht" guidos DA Wandler zu betreiben... typischerweise ist das bei mir so:
1. ich überlege, und messe
2. ich notiere mir im Programm die ports
3. ich merke, dass es nicht geht
4. ich ändere die Ports bis es geht
5. ich vergesse die Notizen von Punkt 2 zu korrigieren....
somit könnte es sein, dass diese werte hier falsch sind:
***
Const AdresX = 15 'für X muß Pin16 high sein, Pin14 kurz Low werden
***
Const AdresY = 9 ' Pin 14 High bleiben und Pin 16 müssen kurz low erden
***
Const AdresTTLFarbe = 5 ' Pin 1 und oder nicht Pin 17 und Pin16 High (Bit0 ,Bit3, Bit2)
***
Const AdresTTLSchalter = 12 ' Pin 1 und, oder nicht Pin 17 Und Pin16 High (Bit0, Bit3, Bit2)
***
Const AdresNone = 13
***
die Constanten Adress____ werden dann bei der Übergabe verwendet... Hier der Programmtext dazu:
Code: Alles auswählen
'**** Beschreibung:
' Datenport = Basisadresse, 8 Ausgänge, D0 bis D7 wobei D7 das Höchste Bit ist
' Statusport = Basisadr + 1, 5 Eingänge
' Kontrollport = Basisadr + 2, 4 Ausgänge C0 bis C3, wobei C0, C1
' und C3 invertiert ==> Dez 04 = alle High
' C0 = Strobe (pin 1)
' C1 = Auto LF (Pin 14)
' C2 = nInit (Pin 16)
' C3 = nSelectLn (Pin 17)
'*********** Strahlschalter setzen
Out Port(DeviceNr, 1), Strahlschalter '** Wert für Schalter Setzen
Out Port(DeviceNr, 1) + 2, AdresTTLSchalter
'********** Punkte Ausgeben
For Punkt = 1 To Binär(1, 0) ' schleife für alle Punkte
Adress = 2 '*** damit wird der Farbwert ausgegeben
Out Port(DeviceNr, 1), Binär(Adress, Punkt) '** FarbwertWertSetzen
Out Port(DeviceNr, 1) + 2, AdresTTLFarbe ' Adress entsprechende Bits setzen
Out Port(DeviceNr, 1) + 2, AdresNone ' Bits wieder weg nehme
'***** jetzt noch x und y werte übergeben
For Adres = 0 To 1 '( 0=x, 1=y)
Out Port(DeviceNr, 1), Binär(Adres, Punkt) '** Wert Setzen
Select Case Adres
Case 0
Out Port(DeviceNr, 1) + 2, AdresX ' Adress entsprechende Bits setzen
Case 1
Out Port(DeviceNr, 1) + 2, AdresY ' Adress entsprechende Bits setzen
End Select
Out Port(DeviceNr, 1) + 2, AdresNone ' Bits wieder weg nehmen
Next
Next
Out Port(DeviceNr, 1) + 2, AdresNone
naja... is etwas "kauderwelsch"........
viele Grüße
Erich