FTDI i C (2 / 12 steg)
Steg 2: YOUR_CODE. C
Setup-menyn
Jag hittade det enklaste sättet att arbeta med D2XX är att installera en meny.
YOUR_CODE. C
Jag skriver denna artikel som om någon importera min FTDI_HELPER-modul för att använda i sin kod. Några viktiga anmärkningar: först, deklarera variabler använder vi faktiskt i YOUR_CODE. C. de är globala variabler. Vi sedan redeclare dem som extern variabler i FTDI_HELPER. H. detta säger kompilatorn det kommer att använda flera globala variabler, men de deklarerades faktiskt i YOUR_CODE. C. Detta gör att modulen FTDI_HELPER att installera FTDI enheten, men din kod kommer att kunna agera på alla viktiga variabler, såsom RxBuffer, ftHandle, etc.
Jag hoppas detta är vettigt. Om inte, gå med den och skjuta mig oavsett frågor uppstår.
1.
2
3
4
5
6
7
8
9
10
11
12
13
14
15
YOUR_CODE. C
FT_DEVICE_LIST_INFO_NODE * devInfo;
bool FTDI_open_flag;
uint8_t RawRxBuffer [2048];
FT_STATUS ftSvtatus;
DWORD-EventDWord;
DWORD-TxBytes;
DWORD-BytesWritten;
DWORD-RxBytes;
DWORD-BytesReceived;
3: en pekare variabel som kommer att lagra alla uppgifter som ansluten enhet.
4: en flagga som anger när vi faktiskt ansluter till en FTDI enhet. Detta gör att ditt program för att upptäcka anslutningen.
7: an RX buffert. Det fylls i automatiskt när vi tar emot data. Du kan justera storleken om det behövs; Jag tror FTDI chip endast skickar 20 byte på gång, men jag var lat.
10: variabel att lagra boolesk flagga för om en D2XX kommandot lyckades.
12: används för att lagra byte skickas.
13: BytesWritten används för att lagra hur många byte skrevs faktiskt av kommandot FT_Write.
14: RxBytes lagrar hur många byte som väntar på att läsas.
15: BytesReceived används av FT_Read för att lagra hur många byte har lästs av RX bufferten.