-
Data: 2014-07-02 01:04:59
Temat: Re: Problem z odczytem przez FT2232H w trybie FT245 FIFO synchroniczny
Od: s...@g...com szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu wtorek, 1 lipca 2014 23:08:48 UTC+2 użytkownik Adam Górski napisał:
> W dniu 2014-07-01 14:06, s...@g...com pisze:
>
> > Witam,
>
> >
>
> > Mam na pok�adzie swojej PCB, FT2232H i FPGA. Zapis z PC do FPGA w trybie
synchronicznym dzia�a OK, natomiast mam jajca przy odczycie z FPGA do PC.
>
> >
>
> > Najpierw hardware w FPGA. Wygl�da to mniej wi�cej tak:
>
> >
>
> > USB_CLK: in std_logic;
>
> > RST : in std_logic;
>
> > TXE_n : in std_logic;
>
> > WR_n : out std_logic;
>
> > USB_DATA: inout std_logic_vector(7 downto 0);
>
> > RAM_DATA: in std_logic_vector(7 downto 0);
>
> > RD_ADDR: out std_logic_vector(12 downto 0);
>
> >
>
> > signal RD_ADDRs: std_logic_vector(12 downto 0);
>
> >
>
> > process (USB_CLK,RST,TXE_n)
>
> > begin
>
> > if RST='1' then
>
> > RD_ADDRs<=(others=>'0');
>
> > RD_ADDR<=(others=>'0');
>
> > USB_DATA<=(others=>'Z');
>
> > WR_n<='1';
>
> > else
>
> > if USB_CLK'event and USB_CLK='1' then
>
> > WR_n<=TXE_n;
>
> > if TXE='0' then
>
> > USB_DATA<=RAM_DATA;
>
> > RD_ADDRs<=RD_ADDRs+1;
>
> > RD_ADDR<=RD_ADDRs;
>
> > else USB_DATA<=(others=>'Z');
>
> > end if;
>
> > end if;
>
> > end if;
>
> > end process;
>
> >
>
> > =========
>
> >
>
> > I teraz software (Delphi):
>
> >
>
> > ResetAddressCounters;
>
> > ftresult:=FT_Read(FT_HANDLE,@FT_In_Buffer,8192,@Read
_Result);
>
> >
>
> > Za��my, �e chc� odczyta� RAM zaimplementowany w FPGA. Zawarto��
RAM'u:
>
> > 0,1,2,3...255,0,1,2....255,....,.... - razem 8kB (taka 32-z�bna pi�a)
>
> >
>
> > Przy pierwszym odczycie zawarto�� FT_In_Buffer jest cholera jakby zrotowana w
prawo o losow� ilo�� adres�w. Np. o trzy adresy, w wyniku czego odczytuj�:
>
> >
>
> > 253,254,255,0,1,2,3....255,0,1,2....255,0,1,2....252
>
> >
>
> > Ka�dy kolejny odczyt powoduje rotacj� w prawo o dok�adnie 16 bajt�w..
>
> >
>
> > Jakieďż˝ porady?
>
> >
>
>
>
> Wycz�ci� fifo przed u�yciem ?
Też o tym myślałem. Problem w tym, że w drajverach D2XX od FTDI brak takiej funkcji.
>
> Ustawi� RD_ADDR na pocz�tek po pierwszym odczycie.
>
> Jak z poziomu pc ustawiasz RD_ADDRES na pocz�tek ? Jaka jest idea
>
> synchronizacji ?
Dokładnie!! Przed każdym rozpoczęciem odczytu daję impuls RST, który asynchronicznie
zeruje licznik RD_ADDR (popatrz na kod VHDL). Impuls RST generuję programowo, działa
poprawnie, sprawdziłem na oscylu. Synchronizacja jest banalnie prosta. Leci akwizycja
danych do bufora w pamięci FPGA i sprawdzam bit statusu akwizycji. Jak akwizycja
zakończona, to walę 2 komendy opisane w pierwszym poście. Aha!! Robiłem eksperymenty
i tak np. przy odczycie tylko 512 bajtów z bufora, każdorazowo robi mi rotację o
jeden bajt. Podejrzewam, że coś jest nawalone w drajverach D2XX, albo pieron wie co
?!
>
>
>
> Pzdr
>
>
>
> Adam
>
>
>
>
>
> ---
>
> Ta wiadomo�� e-mail jest wolna od wirus�w i z�o�liwego oprogramowania,
poniewaďż˝ ochrona avast! Antivirus jest aktywna.
>
> http://www.avast.com
Następne wpisy z tego wątku
- 02.07.14 12:48 Adam Górski
- 02.07.14 13:15 s...@g...com
- 02.07.14 13:25 s...@g...com
- 02.07.14 21:27 s...@g...com
- 03.07.14 15:42 Adam Górski
- 03.07.14 19:50 Pszemol
- 03.07.14 23:22 Adam Górski
- 04.07.14 18:51 MiSter
- 07.07.14 14:20 Adam Górski
- 08.07.14 08:54 as
- 26.07.14 02:51 s...@g...com
Najnowsze wątki z tej grupy
- Dalekopis T100 - problem z powrotem karetki
- Diody LED - oświetlenie na choinkę
- ale wiesz, że są gotowce?
- jak wykryć zapalenie żarówki?
- Cyna dylemat
- Mierniki poziomu glukozy (CGM, FGM)
- A Szwajcarzy kombinują tak: FinalSpark grows human neurons from stem cells and connects them to electrode arrays
- Kontrola nad prądem - sprawdź jak działa [apka - przyp. JMJ] eLicznik
- NETIA i hasło logowania
- Modulacja FM
- Najgorszy język programowania
- Kol. sukces po polsku: firma Szumisie sp. z o.o.
- Chińska Telefonia 6G - Chcą Nas Sterować Elektrycznie - Jak Kukiełki w Teatrze Lalek!!!
- RS-485 ale automatycznie dwukierunkowy
- Leżakujące SSD gubią po roku dane
Najnowsze wątki
- 2025-12-22 Unijne KOOOORWY mówią że WYCOFUJĄ się z zakazu rejestracji elektryków
- 2025-12-22 Białystok => ERP Microsoft Dynamics 365 Commerce Consultant <=
- 2025-12-22 Lublin => Project Manager <=
- 2025-12-22 Warszawa => Project Manager (AI and innovation) <=
- 2025-12-22 TVN oczekuje: Za Ziobrem BĘDZIE czerwona nota Interpolu! Czy może Interpol da drugi raz (w) dupę? ;-)
- 2025-12-21 Norweski przepis na pozbywanie się uchodźców odwiedzających kraj z którego "uciekli"
- 2025-12-21 UE bierze kredyt na 90GEUR, by przedłużyć wojnę na Ukrainie, w tym Polska 4-5%, czyli od 3,6 do 4,5GEUR
- 2025-12-21 Produkcja energii w elektrowniach atomowych
- 2025-12-20 No właśnie
- 2025-12-20 Wy tam w sądach jesteście JESZCZE BARDZIEJ POJEBANI
- 2025-12-20 eksplozja cen i kosztów w Polsce
- 2025-12-20 Dalekopis T100 - problem z powrotem karetki
- 2025-12-20 Diody LED - oświetlenie na choinkę
- 2025-12-20 Bieruń => Junior Dynamics 365 Finance Consultant <=
- 2025-12-20 Warszawa => Senior Frontend Developer (React + React Native) <=




7 pułapek i okazji - zobacz co cię czeka podczas kupna mieszkania na wynajem