IO Device:F75113 SMbus under Linux(64bit)

From LEXWiKi

Revision as of 11:13, 25 February 2022 by Nico (Talk | contribs)
Jump to: navigation, search

Contents

The Sample code source you can download from

<Google Drive>

Source file: F75113_SMBUSv1.0.2L_Src

Binary file(64 bit): F75113_SMBUSv1.0.2L_Bin

<FTP>

Source file: F75113_SMBUSv1.0.2L_Src

Binary file(64 bit): F75113_SMBUSv1.0.2L_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

Before you use this

please enter F75113set.sh and read the Readme.txt enter command

after all you can open the program

Image:SMBUSLinux.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

F75113 GPIO Picture

Image:t5.jpg

Introduction

GPIO Status Register Write

init_fintek_sio(eSIO_TYPE_F75113, 0 ,&sio_data)
ActiveSIO(sio_data.ic_port, sio_data.key);
CHECK_RET(_EnableGPIO(0x06 , eGPIO_Mode_Enable));
CHECK_RET(_SetGpioOutputEnableIdx( 0x06 , eGPIO_Direction_Out));
CHECK_RET(_SetGpioDriveEnable( 0x06 , eGPIO_Drive_Mode_OpenDrain));
CHECK_RET(_SetGpioOutputDataIdx( 0x06 , 1));
DeactiveSIO(sio_data.ic_port);

GPIO Status Register Read

init_fintek_sio(eSIO_TYPE_F75113, 0 ,&sio_data)
ActiveSIO(sio_data.ic_port, sio_data.key);
CHECK_RET(_EnableGPIO(0x06 , eGPIO_Mode_Enable));
CHECK_RET(_SetGpioOutputEnableIdx( 0x06 , eGPIO_Direction_In));
CHECK_RET(_GetGpioInputDataIdx( 0x06 , &data));
DeactiveSIO(sio_data.ic_port);

GPIO Comparison

 CHECK_RET(_GetGpioInputDataIdx (0x10,&BDIO_data));
 if((BDIO_data == 1) & (BDIO_startvalue_data == 0) )
 {
    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton2), TRUE);
 }
 CHECK_RET(_GetGpioInputDataIdx (0x11,&BDI1_data));
 if((BDI1_data == 1) & (BDI1_startvalue_data == 0) )
 {
    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton4), TRUE);
 }
 CHECK_RET(_GetGpioInputDataIdx (0x12,&BDI2_data));
 if((BDI2_data == 1) & (BDI2_startvalue_data == 0) )
 {
    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton6), TRUE);
 }
 CHECK_RET(_GetGpioInputDataIdx (0x13,&BDI3_data));
 if((BDI3_data == 1) & (BDI3_startvalue_data == 0) )
 {
    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton8), TRUE);
 }

F75113 driver delete

 on_window1_destory         (GtKObject    *object,
                           gpointer      user_data)
 {
   int nRet = 0;
   sFintek_sio_data sio_data;
   set_debug(1);
   if( nRet = init_fintek_sio(eSIO_TYPE_F75113,0, &sio_data))
   {
       fprintf(stderr,"init_fintek_sio error\n");
       exit(3);
   }
   ActiveSIO(sio_data.ic_port, sio_data.key);
   DeactiveSIO(sio_data.ic_port);
   gtk_main_quit();
 }
Personal tools