Tak sie bawie tymi ukladami i sie zastanawiam , czy udalo sie innym osiagnac predkosc transferu przez VCP wieksza niz 1200B/sek . Chcialbym min 80kB/sek , pytanie czy musze sie przedzierac prez D2XX_Programmer's_Guide(FT_000071).pdf Nie ma znaczenia czy dane leca znak po znaku czy paczka z bufora , predkosc nigdy nie przekroczyla 1200znakow/sek.
Przez VCP to max. te 1200B dla tego ukladu ?
Didn't find your answer? Ask the community — no account required.
P
Pawel "O'Pajak
Powitanko,
FT232R bez problemu bangla na 9600 i 19200 jako VCP, wiecej nie probowalem, bo nie mialem potrzeby, ale zdaje sie, ze powinien chodzic do 1 MBodzia. Cos masz nie tak albo z kompem, albo z urzadzeniem. Jak to sie komunikuje z FT, pelny RS232, czy tylko RX/Tx?
Pozdroofka, Pawel Chorzempa
K
Konop
W sumie nie wiadomo, czy on pyta o 'baudrate', czy o rzeczywistą prędkość transmisji... wiadomo, że jak będzie wysyłać bajt po bajcie, to nie wyciągnie pełnej prędkości. Gorzej, że to się dzieje także przy wysyłaniu paczek ;)... No ale faktem jest, że FT232 spokojnie powinien wyciągać pełne prędkości RSowe ;)..
N
nenik
Uzywam ft245 ->8bitow-> Atmega16 Te moje 1200znakow / char/byte inaczej 9600 bitow bez zaglebiania sie :)wysylam z pc-towego programu , wzoruje sie na gotowych ksiazkowych przykladach obslugi .
Wykluczam kontroler odbierajacy dane , komputer ten sam wychodzi ze waskie gardlo to pc-owy soft wysylajacy dane .
Przez ft245 / sterownik DXX i aplikacje ktora posiadam chodzi prawidlowo tylko ze ja musze napisac samodzielnie wlasny program wysylajacy . Bede walczyl :) dzieki .
M
Miłosz Skowyra
W dniu 2010-06-14 18:06, nenik pisze:
Dlaczego we własnym programie sterującym nie możesz użyć sterownika D2XX ?
Pozdrawiam Miłosz.
J
Jerry1111
A wysylasz z PCta caly rekord danych jednym poleceniem Write, zeby PC wyslal to jednym ciagiem przez USB (czyli pakiet 64B i kontynuacja), czy uzywasz wiele Write z niewielkimi ilosciami danych? W drugim przypadku mozesz miec tylko 64B/ms.
N
nenik
Sprecyzuje , mam program na pc ktory wysyla plik graficzny przez DXX do do ft245 a dalej do kontrolera , to jest program na ktorym sie wzoruje , wszystko dziala , predkosc przesylu danych jest odpowiednia .
I teraz chcialbym napisac wlasny program , wiec cwicze w builderze , wybralem droge przez VCP . Nie ukrywam to jest moj pierwszy program , nie wszystko rozumiem , obsluge portu com mam z ksiazki , obsluga znak po znaku jest realizowana przez funkcje pobierajaca jeden znak a obsluga wysylania paczk ibitow przez flush czyli po mojemu wyslanie bufora do portu .Chcialbym sie dowiedziec czy dalej warto kombinowac przez VCP , potrzebuje max 80kB czyli
640kb/sek .
W bibliotece DXX znalazlem #define FT_BAUD_921600 , przez VCP jest wolniej wiec o nim moge chyba zapomniec . Nie wiem skad wziela sie informacja rzedu 4MB przez DXX , tak sie chyba nie da .
P
Pawel "O'Pajak
Powitanko,
Skoro przez Dxx sie da, to wniosek, ze sprzetowo uklad moze temu podolac. Ja w programowaniu na PC nie kumaty, ale moze to pomoze:
formatting link
Pozdroofka, Pawel Chorzempa
M
myrcioch
nenik napisal 2010-06-14 01:32:
80kB/s * 1024 * 10bit/bajt = minimum 819200 bps Na VCP udało mi się bezproblemowo wyciągnąć okrągłe 1000000bps - transmisja bez kontroli przepływu. Wklej kawałek kodu - może samo wysyłanie jest źle zrealizowane?
J
J.F.
U¿ytkownik "nenik" snipped-for-privacy@op.pl napisa³ w wiadomo¶ci news: snipped-for-privacy@newsgate.onet.pl...
Ale zaraz - 245 nie jest jakos inaczej obslugiwana ?
J.
K
Konop
64B/ms ~= 64kB/s, a autor ma ok. 1,2kB/s, czyli znacznie, znacznie mniej ;P...
Z
Zbych
J.F. pisze:
Jest dokładnie tak samo obsługiwany jak 232. Tylko zmiana prędkości na nic nie wpływa.
J
J.F.
U¿ytkownik "Zbych" snipped-for-privacy@onet.pl napisa³ w
No wlasnie .. czyli od czegos innego predkosc zalezy..
J.
Z
Zbych
J.F. pisze:
Tak, od prędkości elektronów :-). Przecież to działa jak fifo. Im szybciej odbierzesz dane, tym szybciej komputer będzie mógł przesłać nowy pakiet.
A
AS
Dla FT232RL bez problemu realizowa³em wysy³anie danych z prêdko¶ci± ponad
300kbaud (~30kB/s) i odbieranie z prêdko¶ci± 1Mbaud (~100kB/s) zarówno przez VCP jak i D2xx. FT245 dzia³a nieco inaczej. W/g dokumentacji przez VCP max.
300kB/s, przez D2xx 1MB/s. Tylko pytanie czym i jak odbierasz dane z FT245. Nieodbieranie danych powoduje szybkie zape³nienie jedynie 128 Bajtowego bufora sprzêtowego i nieprzyjmowanie kolejnych danych. Nó¿ka RXF# w stanie Lo sygnalizuje obecno¶æ danych w buforze, wtedy ka¿dy kolejny Bajt odczytuje siê podaj±c impuls na nó¿kê RD#. Je¿eli do³±czony do FT245 mikroprocesor robi to wolno to wtedy on jest w±skim gard³em w tym projekcie. Mo¿liwe, ¿e to on ogranicza prêdko¶æ odbioru danych do 1200B/s. Do wysy³ania danych s³u¿y funkcja FT_Write (FT_HANDLE ftHandle, LPVOID lpBuffer, DWORD dwBytesToWrite, LPDWORD lpdwBytesWritten) Kontroluj czy zwraca ona FT_OK i czy liczba bajtów rzeczywi¶cie wys³anych równa siê ilo¶ci bajtów zadeklarowanych do wys³ania.
J
J.F.
No wlasnie .. wiec czemu koledzy sie na jakis boach skupiaja ?
J.
J
Jerry1111
Moze wysyla po jednym bajcie.
J
Jerry1111
Powinno byc bez problemow. Wklej kawalek kodu ktory wysyla dane.
Jaki flush? Otwierasz port i uzywasz WriteFile, np tak:
Powinno sie dac - zakladajac ze elektronika odbiera to wystarczajaco szybko (a chyba odbiera skoro masz program ktory daje rade).
FT_BAUD jest dla 232, 245 dziala rownolegle.
Da sie.
Z
Zbych
Może są ofiologami?
K
Konop
No ale chyba sterownik bajty wysłane w jednym "okienku" 1ms zbierze do kupy i pośle "paczką", prawda?? W sumie - nieważne. Póki nie ma kodu, to to jest tylko gdybanie...
Join the Discussion
Have something to add? Share your thoughts — no account required.
Didn't find your answer?
Ask the community — no account required
Report Content
You are reporting this content to the moderators. They will look at it
ASAP.