Dim nBaudrate As Long, nSigLevel As Byte, nAuxVoltage As Byte, nClockMode As Byte
Dim nDigitalOutput As Long, nDigitalInput As Long
nRC = SPIGetGlobals(hHandle, nBaudrate, nSigLevel, nAuxVoltage, nClockMode)
If (nRC = 0) Then
sText = sText & "Baudrate=" & CStr(nBaudrate) & ", Siglevel="
Select Case nSigLevel
End Select
sText = sText & vbCrLf & "AuxVoltage="
Select Case nAuxVoltage
End Select
sText = sText & ", ClockMode="
Select Case nClockMode
End Select
Else
sText = sText & "Fehler bei SPIGetGlobals: " & GetErrorMsg(nRC) & vbCrLf
End If
GetAnagateInfo = sText
End Function
7.2.1.3. Ausführen eines Kommandos auf dem SPI-Bus
Das
AnaGate
angeschlossenen SPI-Bus zu schreiben. Zum Schreiben und Lesen von Daten auf
PC-Seite wird lediglich die Funktion SPIDataReq benötigt.
Public Declare Function SPIDataReq Lib "AnaGateSPIVB6"
Die Eventprozedur btnStart_Click wird beim Klicken des Buttons mit der Aufschrift
Execute command aufgerufen.
Private Sub btnStart_Click()
Dim nRC As Long, sText As String, I As Integer, sByteText As String
Dim nBaudrate As Long, nSigLevel As Byte, nAuxVoltage As Byte, nClockMode As Byte
Dim nBufferWriteLen As Long, nBufferReadLen As Long
Dim arrWrite(1 To 255) As Byte, arrRead(1 To 255) As Byte
nRC = SPIOpenDevice(hHandle, Me.IPAddresse.Text, 2000)
If nRC <> 0 Then
sText = "Fehler bei SPIOpenDevice: " & GetErrorMsg(nRC)
Else
nBaudrate = CLng(Me.txtBaudrate)
nSigLevel = CLng(Me.cmbSigLevel.ListIndex)
nAuxVoltage = CLng(Me.cmbAuxVoltage.ListIndex)
nClockMode = CLng(Me.cmbClockMode.ListIndex)
nRC = SPISetGlobals(hHandle, nBaudrate, nSigLevel, nAuxVoltage, nClockMode)
If nRC <> 0 Then
Programmier-Beispiele
Case 1: sText = sText & "+5.0V"
Case 2: sText = sText & "+3.3V"
Case 3: sText = sText & "+2.5V"
Case Else: sText = sText & "High impedance"
Case 1: sText = sText & "+2.5V"
Case Else: sText = sText & "+3.3V"
Case 1: sText = sText & "CPHA=0 und CPOL=1"
Case 2: sText = sText & "CPHA=1 und CPOL=0"
Case 3: sText = sText & "CPHA=1 und CPOL=1"
Case Else: sText = sText & "CPHA=0 und CPOL=0"
SPI
ist
in
der
Alias "_SPIDataReq@20" (ByVal hHandle As Long, _
Lage,
beliebige
Kommandofolgen
ByVal lpBufferWrite As Any, _
ByVal nBufferWriteLen As Long, _
ByVal lpBufferRead As Any, _
ByVal nBufferReadlLen As Long) As Long
84
© 2007-2015 Analytica GmbH
auf
den
1