IO Device:F75113 SMbus under Windows(64bit)

From LEXWiKi

(Difference between revisions)
Jump to: navigation, search
(The Sample code source you can download from)
Current revision (11:13, 25 February 2022) (edit) (undo)
(The Sample code source you can download from)
 
Line 10: Line 10:
<FTP>
<FTP>
-
Source file: [ftp://ftp.lex.com.tw/Engineer/SoftSupport/AP_Module/F75113/Windows/SMBUS/F75113v1.0W_SMbus_src.zip F75113v1.0W_SMbus_src.zip]
+
Source file: [ftp://ftp.lex.com.tw/Engineer/SoftSupport/AP_Module/F75113/Windows/SMBUS/F75113v1.0W_SMbus_src.zip F75113v1.0W_SMbus_Src]
-
Binary file(64 bit): [ftp://ftp.lex.com.tw/Engineer/SoftSupport/AP_Module/F75113/Windows/SMBUS/F75113v1.0W_SMbus_bin.zip F75113v1.0W_SMbus_bin.zip]
+
Binary file(64 bit): [ftp://ftp.lex.com.tw/Engineer/SoftSupport/AP_Module/F75113/Windows/SMBUS/F75113v1.0W_SMbus_bin.zip F75113v1.0W_SMbus_Bin]
We do the demo test with a test tool which DIx connect to DOx with Relay.
We do the demo test with a test tool which DIx connect to DOx with Relay.

Current revision

Contents

The Sample code source you can download from

<Google Drive>

Source file: F75113v1.0W_SMbus_Src

Binary file(64 bit): F75113v1.0W_SMbus_Bin

<FTP>

Source file: F75113v1.0W_SMbus_Src

Binary file(64 bit): F75113v1.0W_SMbus_Bin

We do the demo test with a test tool which DIx connect to DOx with Relay.

MB Support List

Cacrd

M113A

edit table


How to use this Demo Application

Image:F75113_SMBus.jpg

1. Press the "Test" button to test CIO1 function

2. Press the "C2test" button to test CIO2 function

3. Press the "C3test" button to test CIO3 function

4. Press the "C4test" button to test CIO4 function

If the next picture appears

Image:t3.jpg

MB no SMBus or the drive placement is wrong

Drive the location for the next picture

Image:floder_SMBus.jpg

F75113 GPIO Picture

Image:t5.jpg

Introduction

F75113 driver connection

 hinstLib = LoadLibrary(L"Fintek.dll");
 if (hinstLib == NULL)
 {
    if(Application->MessageBoxW(L"Load fail Fintek.dll,Continued?",L"Error",16+4)==IDNO)
    {
      Application->Terminate();
    }
      return; 
 }

GPIO Status Register Write

 SETINT2PROC ProcAdd;
 char *endptr;
 char Numbers[] = "0x20";
 char Value[] =   "0xF0";
 ProcAdd = (SETINT2PROC) GetProcAddress(hinstLib, "GPIO_SMBus_W");
 if (NULL != ProcAdd)
 {
   if (! (*ProcAdd)( strtol(Numbers, &endptr, 16), strtol(Value, &endptr, 16)))
   {
     ShowMessage("Write Fail");
   }
 }

GPIO Status Register Read

 GETINT2PROC ProcAdd1;
 int datatest;
 char NRtest[] = "0x22";
 ProcAdd1 = (GETINT2PROC) GetProcAddress(hinstLib, "GPIO_SMBus_R");
 if (NULL != ProcAdd1)
 {
   if (! (*ProcAdd1)( strtol(NRtest, &endptr, 16), &datatest))
   {
     ShowMessage("Read Fail");
   }
 }

GPIO Comparison

 if( data == 0xF0 )
 {
  ((CStatic *)GetDlgItem(IDC_LED_DO0))->SetBitmap(::LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BITMAP_Green)));
  ((CStatic *)GetDlgItem(IDC_LED_DO1))->SetBitmap(::LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BITMAP_Green)));
  ((CStatic *)GetDlgItem(IDC_LED_DO2))->SetBitmap(::LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BITMAP_Green)));
  ((CStatic *)GetDlgItem(IDC_LED_DO3))->SetBitmap(::LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BITMAP_Green)));	
   if( data2 == 0x01 )
   {
     ((CStatic *)GetDlgItem(IDC_LED_DI0))->SetBitmap(::LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BITMAP_Green)));
     ((CStatic *)GetDlgItem(IDC_LED_DI1))->SetBitmap(::LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BITMAP_Red)));
     ((CStatic *)GetDlgItem(IDC_LED_DI2))->SetBitmap(::LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BITMAP_Red)));
     ((CStatic *)GetDlgItem(IDC_LED_DI4))->SetBitmap(::LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BITMAP_Red)));
   }
   .....
 }

F75113 driver delete

  char N9[] = "0x10";
  char V9[] = "0x00";
  ProcAdd = (SETINT2PROC) GetProcAddress(hinstLib, "GPIO_SMBus_W");
   if (NULL != ProcAdd)
    {
     if (! (*ProcAdd)( strtol(N9, &endptr, 16), strtol(V9, &endptr, 16)))
      {
       ShowMessage("Write Fail");
      }
    }
    if (hinstLib != NULL)
    {
     FreeLibrary(hinstLib);
    }
Personal tools