請先看『使用說明』
IO Device:F75113 LPC under Windows(64bit)
From LEXWiKi
(Difference between revisions)
Line 21: | Line 21: | ||
| | | | ||
3I610CW | 3I610CW | ||
+ | <br> | ||
3I610HW/BW | 3I610HW/BW | ||
+ | <br> | ||
3I610NX | 3I610NX | ||
+ | <br> | ||
PM170DW | PM170DW | ||
|- | |- |
Revision as of 11:33, 2 May 2019
Contents |
The Sample code source you can download from
Source file: F75113v2.5.1W_src.zip
Binary file: F75113v2.5.1W_bin_x64.zip
We do the demo test with a test tool which DIx connect to DOx with Relay.
MB Support List
SKylake/Kab |
3I610CW
|
---|---|
Card |
M113A |
How to use this Demo Application
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
MB no LPC or the drive placement is wrong
Drive the location for the next picture
F75113 GPIO Picture
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_LPC_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_LPC_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_LPC_W"); if (NULL != ProcAdd) { if (! (*ProcAdd)( strtol(N9, &endptr, 16), strtol(V9, &endptr, 16))) { ShowMessage("Write Fail"); } } if (hinstLib != NULL) { FreeLibrary(hinstLib); }