Part Number: USB-TO-GPIO, TUSB3210
Hello All
This post is dedicated to all the necrophiles who love to create projects in the language of dead dinosaurs.
If you haven’t guessed what language I’m talking about, this is the VB6 programming language.
After a lengthy search for the original library for managing USB-TO-GPIO, and not finding one on the Internet, I decided to create my own.
So:
I present to all the abaldenny library !
Drum roll, spotlights in the studio !
- SMB-to-GPIO.dll
This software and library is designed to organize communication between your VB project and the USB-to-GPIO TexasInstruments module.
Supported versions of USB-to-GPIO FirmWare
====================================
- 1.0.10
- 2.0.19
List of DLL functions:
=====================
GPIO_FW_VER_Read(iDevFWver As String, iVendorID As String, iProductID As String) As Long GPIO_EEPROM_Read(DevFWVer As String, DEEPROM() As Byte) As Long GPIO_EEPROM_Write(DevFWVer As String, DEEPROM() As Byte) As Long GPIO_ReadI2CBlock(iCmd As Integer, DataArray() As Byte, iNumBytesRd As Integer, nTargetID As Integer) As Long GPIO_WriteI2CBlock(iCmd As Integer, DataArray() As Byte, iNumBytesWr As Integer, nTargetID As Integer) As Long GPIO_SendSMBusByte(DataL As Long, nTargetID As Integer) As Long GPIO_WriteSMBusByte(iCmd As Integer, DataL As Long, nTargetID As Integer) As Long GPIO_WriteSMBusWord(iCmd As Integer, DataH As Long, DataL As Long, nTargetID As Integer) As Long GPIO_WriteSMBusBlock(iCmd As Integer, DataArray() As Byte, iNumBytesWr As Integer, nTargetID As Integer) As Long GPIO_ReceiveSMBusByte(DataB As Long, nTargetID As Integer) As Long GPIO_ReadSMBusByte(iCmd As Integer, DataB As Long, nTargetID As Integer) As Long GPIO_ReadSMBusWord(iCmd As Integer, DataH As Long, DataL As Long, nTargetID As Integer) As Long GPIO_ReadSMBusBlock(iCmd As Integer, DataArray() As Byte, iNumBytesRd As Integer, nTargetID As Integer) As Long GPIO_WriteReadI2CBlock(iCmd As Integer, DataArrayW() As Byte, DataArrayR() As Byte, _ iNumBytesWr As Integer, iNumBytesRd As Integer, nTargetID As Integer) As Long GPIO_WriteReadSMBusBlock(iCmd As Integer, DataArrayW() As Byte, DataArrayR() As Byte, _ iNumBytesWr As Integer, iNumBytesRd As Integer, nTargetID As Integer) As Long GPIO_ProcessCall(iCmd As Integer, wDataH As Long, wDataL As Long, rDataH As Long, rDataL As Long, nTargetID As Integer) As Long GPIO_ReadWriteP0Line(DataA As Byte, DataB As Byte) As Long GPIO_SetP0Line(DataB As Byte) As Long GPIO_GetP0Line(DataB As Byte) As Long GPIO_GetPMBusLine(DataB As Byte) As Long GPIO_SetPMBusLine(DataB As Byte) As Long GPIO_SetP1Line(DataA As Byte, DataB As Byte, DataC As Byte) As Long GPIO_Test() As Long GPIO_CheckSdaSclIfError() As Long
PEC_Control
==========
For SMB functions PEC is available.
If nTargetID is even => PEC Off.
If nTargetID is not even => PEC On.
The attached archive contains an example of source code for creating a project using SMB-to-GPIO.dll and Firmware EEPROM files for USB-TO-GPIO.