Discussion:
FT245BM <- RS232 Transmisja asynchroniczna
(Wiadomość utworzona zbyt dawno temu. Odpowiedź niemożliwa.)
Rafal M
2005-09-02 16:02:04 UTC
Permalink
Witam.
W jaki sposób najprosciej odczytac dane z RS232 przez FT245BM?
Najpierw ustawiam

FT_SetBaudRate(hUSB, FT_BAUD_19200);

a potem

FT_Read(hUSB, &b, 1, &r);

lecz odczytywanie jakdyby nie odbywa sie o staly odstep czasu i powstaja
bledy...tzn transmisja idzie po 9600 ja probuje to synchronizowac przez
wieksza liczbe odczytow tzn 19200

Pozdrawiam,
Rafał
Gregor
2005-09-02 19:06:22 UTC
Permalink
Post by Rafal M
Witam.
W jaki sposób najprosciej odczytac dane z RS232 przez FT245BM?
Najpierw ustawiam
FT_SetBaudRate(hUSB, FT_BAUD_19200);
??? FT245 ma interfejs rownolegly i bez mikrokontrolera niebardzo nadaje
sie do odbierania transmisji rs232 (moze miales na musli FT232?).
A co do szybkosci - w dokumentacji pisza ze proby ustawiania baudrate sa
ignorowane - przeplyw danych kontroluje sie liniami R/W (+ewentualna softwarowa
kontrola czasu buforowania danych).
GRG
--
Tutaj sygnatura Grzegorza Domagały - jeśli chcesz wysłać do niego wiadomość
pisz pod adres ***@chello.at i nie zapomnij dodać
"kielbaska dla cerbera" w treści albo Cerber zeżre twój list...
Strona domowa: http://members.chello.at/grzegorz.domagata/
Rafal M
2005-09-02 19:12:35 UTC
Permalink
Post by Gregor
Post by Rafal M
Witam.
W jaki sposób najprosciej odczytac dane z RS232 przez FT245BM?
Najpierw ustawiam
FT_SetBaudRate(hUSB, FT_BAUD_19200);
??? FT245 ma interfejs rownolegly i bez mikrokontrolera niebardzo nadaje
sie do odbierania transmisji rs232 (moze miales na musli FT232?).
A co do szybkosci - w dokumentacji pisza ze proby ustawiania baudrate sa
ignorowane -
wlasnie to by wyjasnialo te bledy w transmisji
no nic pozostaje jedynie stworzenie timera 9600 w C++ ...
Adam Dybkowski
2005-09-02 21:39:49 UTC
Permalink
Post by Rafal M
Post by Gregor
Post by Rafal M
W jaki sposób najprosciej odczytac dane z RS232 przez FT245BM?
??? FT245 ma interfejs rownolegly i bez mikrokontrolera niebardzo
nadaje sie do odbierania transmisji rs232 (moze miales na musli FT232?).
A co do szybkosci - w dokumentacji pisza ze proby ustawiania baudrate sa
ignorowane -
no nic pozostaje jedynie stworzenie timera 9600 w C++ ...
Życzę powodzenia gdy w systemie Windows wygenerujesz cokolwiek
równomiernie z jitterem max 10us, chyba trzeba będzie sięgnąć do warstwy
sterowników i DDK. Ale to i tak na nic, bo transmisje w USB chodzą nie
częściej niż co 1 ms i przez to w trybie bit-bang (bo chyba taki
chciałeś wykorzystać) wyciągniesz conajwyżej 1000 bps.

Idź do sklepu i kup kostkę FT232BM.
--
Adam Dybkowski
http://www.amwaw.edu.pl/~adybkows/

Uwaga: przed wysłaniem do mnie maila usuń "123" z adresu.
Gregor
2005-09-02 23:48:33 UTC
Permalink
Post by Rafal M
Post by Gregor
??? FT245 ma interfejs rownolegly i bez mikrokontrolera niebardzo nadaje
sie do odbierania transmisji rs232 (moze miales na musli FT232?).
A co do szybkosci - w dokumentacji pisza ze proby ustawiania baudrate sa
ignorowane -
wlasnie to by wyjasnialo te bledy w transmisji
no nic pozostaje jedynie stworzenie timera 9600 w C++ ...
Zamierzasz "emulowac" rs232 na ktoryms z wyjsc ft245bm
przez wysylanie odpowiednich danych z PC - z timingami dla predkosci 9600 baud?
Jesli tak - mozesz sobie dac spokoj - nie zadziala - w USB dane sa wysylane
w paczkach co pewien czas - o ile pamietam w trybie ktory jest obslugiwany przez
ft245bm co jedna ms. Nie wiem jak sie ten chip zachowuje w trybie bit-bang
ale strzelam ze jesli sprobujesz wyslac do niego wiecej niz 1kB/s uszyskasz
na wyjsciach serie krotkich impulsow co 1ms - bez szans na poprawna trnsmisje
rs232.
GRG
--
Tutaj sygnatura Grzegorza Domagały - jeśli chcesz wysłać do niego wiadomość
pisz pod adres ***@chello.at i nie zapomnij dodać
"kielbaska dla cerbera" w treści albo Cerber zeżre twój list...
Strona domowa: http://members.chello.at/grzegorz.domagata/
Rafal M
2005-09-02 22:54:28 UTC
Permalink
Post by Gregor
Post by Rafal M
Post by Gregor
??? FT245 ma interfejs rownolegly i bez mikrokontrolera niebardzo nadaje
sie do odbierania transmisji rs232 (moze miales na musli FT232?).
A co do szybkosci - w dokumentacji pisza ze proby ustawiania baudrate sa
ignorowane -
wlasnie to by wyjasnialo te bledy w transmisji
no nic pozostaje jedynie stworzenie timera 9600 w C++ ...
Zamierzasz "emulowac" rs232 na ktoryms z wyjsc ft245bm
przez wysylanie odpowiednich danych z PC - z timingami dla predkosci 9600 baud?
Jesli tak - mozesz sobie dac spokoj - nie zadziala - w USB dane sa wysylane
w paczkach co pewien czas - o ile pamietam w trybie ktory jest obslugiwany przez
ft245bm co jedna ms. Nie wiem jak sie ten chip zachowuje w trybie bit-bang
ale strzelam ze jesli sprobujesz wyslac do niego wiecej niz 1kB/s uszyskasz
na wyjsciach serie krotkich impulsow co 1ms - bez szans na poprawna trnsmisje
rs232.
GRG
faktycznie gdy probuje uzywac funkcji FT_GetBitMode(hUSB, &b); w
bit-bang idzie bardzo wolno, ale pokazalo sie malutkie swiatelku w
tunelu, po prostu jak ustawie

DWORD baud = FT_BAUD_19200;
FT_SetBaudRate(hUSB, baud);

otrzymuje wmiare poprawne odpowiedz z czytnika UM-005:

10000000
11010000
10000000

na oko 3 z 4 sa poprawne, jednak juz z bajtami ID Unique jest gorzej,
polowa jest uszkodzone, tylko wlasnie sie zastanawiam, skad te bledy
Robie to tak ustawiam, bitrate 8 razy 9600 a potem odczytuje kazdy 1 bit
przez 8 odczytow usredniam i synchronizuje pocztkiem bitu startu, jednak
nie wiem zupelnie skad te bledy .... a jeszcze zrobilem cos takiego
odsunalem transponder i zwolnilem znacznie czestosc wywolania FT_Read no
i sie okazalo ze cala transmisja (11 bajtow) siedzi w buforze (zadnego
zbacza zapisujacego nie bylo, podlaczylem tylko 1 linie) ...

Rafal M
2005-09-02 19:14:32 UTC
Permalink
Post by Gregor
Post by Rafal M
Witam.
W jaki sposób najprosciej odczytac dane z RS232 przez FT245BM?
Najpierw ustawiam
FT_SetBaudRate(hUSB, FT_BAUD_19200);
??? FT245 ma interfejs rownolegly i bez mikrokontrolera niebardzo nadaje
sie do odbierania transmisji rs232 (moze miales na musli FT232?).
nie, mialem na mysli FT245BM :) wiem ze sie 232 lepiej nadaje ale u
siebie mam 245
Loading...