Estoy intentando acceder a la librería MPUSBAPI.DLL (que sirve para poder acceder a los microcontroladores de la serie 18Fxx5x por USB), pero no lo consigo. Sabe alguien cómo poder acceder a ella a través de FreeBasic?
Las funciones más importantes son estas:
* MPUSBOpen
* MPUSBRead
* MPUSBWrite
* MPUSBClose
* MPUSBGetDeviceCount
Os pongo lo que llevo hecho de momento sin resultado satisfactorio:
Código:
Cls Const MPUS_FAIL = 0 Const MPUSB_SUCCESS = 1 Const MP_WRITE = 0 Const MP_READ = 1 Const MAX_NUM_MPUSB_DEV = 127 Const Vid_Pid = "VID_04D8&PID_000A" Const Outpipe = "\MCHP_EP3" Const Inppipe = "\MCHP_EP3" Dim As UInteger MyInpPipe Dim As UInteger MyOutPipe Dim As Integer Count Dim As Any Ptr hLib hLib = DylibLoad( "mpusbapi.dll" ) If hLib = 0 Then End Dim Version As Function () As UInteger Dim OpenUSB As Function ( ByVal As UInteger, ByVal As String, ByVal As String, ByVal As UInteger, ByVal As UInteger) As Integer Dim ClosUSB As Function ( ByVal As String ) As Integer Dim DevCont As Function ( ByVal As String ) As Integer Version = DyLibSymbol( hLib, "_MPUSBGetDLLVersion" ) OpenUSB = DyLibSymbol( hLib, "_MPUSBOpen" ) ClosUSB = DyLibSymbol( hLib, "_MPUSBClose" ) DevCont = DyLibSymbol( hLib, "_MPUSBGetDeviceCount" ) Count = DevCont(Vid_Pid) If (Count > 0) Then MyOutPipe = OpenUSB( 0, Vid_Pid, Outpipe, MP_WRITE, 0 ) MyInpPipe = OpenUSB( 0, Vid_Pid, Inppipe, MP_READ, 0 ) Else Print "Failed to open data pipes.!" Sleep End EndIf ClosUSB ( Outpipe ) Sleep End