EasyManua.ls Logo

FTDI LibFT4222 - I 2 C Slave Reset

Default Icon
78 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Application Note
AN_329 User Guide For LibFT4222
Version 1.5
Document Reference No.: FT_001060 Clearance No.: FTDI#406
60
Product Page
Document Feedback Copyright © Future Technology Devices International Limited
Return Value:
FT4222_OK if successful, otherwise the return value is an FT error code.
Error code:
FT4222_DEVICE_NOT_OPENED: The initialization API is not called.
FT4222_IS_NOT_I2C_MODE: The device is not in i2c slave mode
FT4222_INVALID_POINTER: Parameter buffer or sizeTransferred is NULL
FT4222_INVALID_PARAMETER: Parameter bytesToWrite is equal to zero
FT4222_FAILED_TO_WRITE_DEVICE: Write data timeout or failed. FT_SetTimeouts can be called
to extend timeout.
Prerequisite:
FT4222_I2CSlave_Init
Example:
FT_HANDLE ftHandle = NULL;
FT_STATUS ftStatus;
FT4222_STATUS ft4222Status;
ftStatus = FT_Open(0, &ftHandle);
if (FT_OK != ftStatus)
{
// open failed
return;
}
// initial i2c slave
ft4222Status = FT4222_I2CSlave_Init(ftHandle);
if (FT4222_OK != ft4222Status)
{
// i2c slave init failed
return;
}
ft4222Status = FT4222_I2CSlave_SetClockStretch(ftHandle, TRUE);
if (FT4222_OK != ft4222Status)
{
// set clock stretch failed
return;
}
uint8 sent_data[] = {0x1A, 0x2B, 0x3C, 0x4D};
uint16 sizeTransferred = 0;
ft4222Status = FT4222_I2CSlave_Write(ftHandle, sent_data, sizeof(sent_data),
&sizeTransferred);
if (FT4222_OK != ft4222Status)
{
// write data error
}
FT4222_UnInitialize(ftHandle);
FT_Close(ftHandle);
3.7.7 I
2
C Slave Reset
FT4222_STATUS FT4222_I2CSlave_Reset(FT_HANDLE ftHandle)

Table of Contents