EasyManua.ls Logo

FTDI LibFT4222 - Page 10

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
9
Product Page
Document Feedback Copyright © Future Technology Devices International Limited
{
printf("Dev %d:\n", iDev);
printf(" Flags= 0x%x, (%s)\n", devInfo.Flags,
DeviceFlagToString(devInfo.Flags).c_str());
printf(" Type= 0x%x\n", devInfo.Type);
printf(" ID= 0x%x\n", devInfo.ID);
printf(" LocId= 0x%x\n", devInfo.LocId);
printf(" SerialNumber= %s\n", devInfo.SerialNumber);
printf(" Description= %s\n", devInfo.Description);
printf(" ftHandle= 0x%x\n", devInfo.ftHandle);
const std::string desc = devInfo.Description;
if(desc == "FT4222" || desc == "FT4222 A") {
g_FT4222DevList.push_back(devInfo);
}
}
}
}
int main(int argc, char const *argv[])
{
ListFtUsbDevices();
if(g_FT4222DevList.empty()) {
printf("No FT4222 device is found!\n");
return 0;
}
FT_HANDLE ftHandle = NULL;
FT_STATUS ftStatus;
FT4222_STATUS ft4222Status;
ftStatus = FT_OpenEx((PVOID)g_FT4222DevList[0].LocId,
FT_OPEN_BY_LOCATION, &ftHandle);
if (FT_OK != ftStatus) {
printf("Open a FT4222 device failed!\n");
return 0;
}
ft4222Status = FT4222_SPIMaster_Init(ftHandle,
SPI_IO_SINGLE, CLK_DIV_4, CLK_ACTIVE_LOW, CLK_LEADING, 0x01);
if (FT4222_OK != ft4222Status) {
printf("Init FT4222 as SPI master device failed!\n");
return 0;
}
// TODO:
// Start to work as SPI master, and read/write data to an SPI slave
// FT4222_SPIMaster_SingleWrite
// FT4222_SPIMaster_SingleRead
// FT4222_SPIMaster_SingleReadWrite
FT4222_Uninitialize(ftHandle);
FT_Close(ftHandle);
return 0;
}

Table of Contents