RTV forum PL | NewsGroups PL

Jak sprawdzić, czy dane z ftdi_write() zostały wysłane w FT232RL z libftdi?

ftdi_write() i bitbang -- skąd wiadomo że wysłano?

NOWY TEMAT

elektroda NewsGroups Forum Index - Elektronika Polska - Jak sprawdzić, czy dane z ftdi_write() zostały wysłane w FT232RL z libftdi?

Adam Wysocki
Guest

Mon Feb 05, 2018 1:06 am   



Hej,

Staram się ogarnąć FT232RL w trybie asynchronicznego bit-bang przy pomocy
libftdi (Linux) i jedno mi się nie zgadza.

Wysyłamy dane do chipa przez ftdi_write(). Chip te dane od nas przyjmuje
(natychmiast) i wypuszcza na swoje GPIO zgodnie z ustawionym baudrate.

Skąd możemy się dowiedzieć, że dane już zostały przez chip wysłane?
Drivery D2XX mają FT_GetStatus() ale nie widzę nic takiego w libftdi.

Chciałbym przeczytać stan innego pinu (przez ftdi_read_pins()) ale dopiero
wtedy, kiedy będę wiedział, że moje dane wyszły na GPIO.

--
[ Email: a@b a=grp b=chmurka.net ]
[ Web: http://www.chmurka.net/ ]

Guest

Wed Feb 07, 2018 3:06 am   



W dniu poniedziałek, 5 lutego 2018 00:06:51 UTC+1 użytkownik Adam Wysocki napisał:
Quote:
Hej,

Staram się ogarnąć FT232RL w trybie asynchronicznego bit-bang przy pomocy
libftdi (Linux) i jedno mi się nie zgadza.

Wysyłamy dane do chipa przez ftdi_write(). Chip te dane od nas przyjmuje
(natychmiast) i wypuszcza na swoje GPIO zgodnie z ustawionym baudrate.

Skąd możemy się dowiedzieć, że dane już zostały przez chip wysłane?
Drivery D2XX mają FT_GetStatus() ale nie widzę nic takiego w libftdi.

Chciałbym przeczytać stan innego pinu (przez ftdi_read_pins()) ale dopiero
wtedy, kiedy będę wiedział, że moje dane wyszły na GPIO.

--

Proponuję używać d2xx. Funkcja FT_Write zwraca Ci wartość typu FT_STATUS. Jeżeli jest to FT_OK, to znaczy że wszystko poszło jak trzeba. Inna wartość, to kod błędu.. Ja co prawda korzystam z trybu FT245 Synchro FIFO(FT2232H), ale w bitbangu najprawdopodobniej jest tak samo od strony softu.

Waldemar
Guest

Wed Feb 07, 2018 11:14 am   



Am 07.02.2018 um 02:06 schrieb stchebel@gmail.com:
Quote:
W dniu poniedziałek, 5 lutego 2018 00:06:51 UTC+1 użytkownik Adam Wysocki napisał:
Hej,

Staram się ogarnąć FT232RL w trybie asynchronicznego bit-bang przy pomocy
libftdi (Linux) i jedno mi się nie zgadza.

Wysyłamy dane do chipa przez ftdi_write(). Chip te dane od nas przyjmuje
(natychmiast) i wypuszcza na swoje GPIO zgodnie z ustawionym baudrate.

Skąd możemy się dowiedzieć, że dane już zostały przez chip wysłane?
Drivery D2XX mają FT_GetStatus() ale nie widzę nic takiego w libftdi.

Chciałbym przeczytać stan innego pinu (przez ftdi_read_pins()) ale dopiero
wtedy, kiedy będę wiedział, że moje dane wyszły na GPIO.

--

Proponuję używać d2xx. Funkcja FT_Write zwraca Ci wartość typu FT_STATUS. Jeżeli jest to FT_OK, to znaczy że wszystko poszło jak trzeba. Inna wartość, to kod błędu. Ja co prawda korzystam z trybu FT245 Synchro FIFO(FT2232H), ale w bitbangu najprawdopodobniej jest tak samo od strony softu.

konkretnie trzeba najpierw odinstalować moduł ftdi_sio z jaja. Dopiero
wtedy możesz użyć d2xx.

Waldek

Adam Wysocki
Guest

Wed Feb 07, 2018 1:06 pm   



stchebel@gmail.com wrote:

Quote:
Proponuję używać d2xx.

Chyba tak się skończy, bo na liście developerów libftdi nikt nie
odpowiedział...

Quote:
Funkcja FT_Write zwraca Ci wartość typu FT_STATUS. Jeżeli jest to FT_OK,
to znaczy że wszystko poszło jak trzeba. Inna wartość, to kod błędu.

ftdi_write() też zwraca status, to nie o to chodzi.

Zakładam że po powrocie z funkcji (czy to ftdi_write() z libftdi, czy
FT_Write() z D2XX) dane zostały wysłane do chipa, a nie, że chip już
je wypuścił na GPIO.

Czytałem, że do sprawdzenia tego drugiego służy FT_Status() z D2XX, ale
nie widzę podobnej funkcji w libftdi...

--
[ Email: a@b a=grp b=chmurka.net ]
[ Web: http://www.chmurka.net/ ]

Adam Wysocki
Guest

Wed Feb 07, 2018 1:08 pm   



Waldemar <waldemar@zedat.fu-berlin.de> wrote:

Quote:
konkretnie trzeba najpierw odinstalować moduł ftdi_sio z jaja. Dopiero
wtedy możesz użyć d2xx.

Bez tego w ogóle nie uda się otworzyć urządzenia, czy uda, ale będą różne
jaja (typu nieprawidłowe odczytywane wartości)? Zastanawiam się, czy to
nie może przekłamywać mi wartości, które czytam z libftdi (a będę mógł
sprawdzić dopiero wieczorem).

--
[ Email: a@b a=grp b=chmurka.net ]
[ Web: http://www.chmurka.net/ ]

elektroda NewsGroups Forum Index - Elektronika Polska - Jak sprawdzić, czy dane z ftdi_write() zostały wysłane w FT232RL z libftdi?

NOWY TEMAT

Regulamin - Zasady uzytkowania Polityka prywatnosci Kontakt RTV map News map