Skocz do zawartości

Sterownik matryc LEDowych z interfejsem hub75 na STM32F730


Pomocna odpowiedź

Podoba Ci się ten projekt? Zostaw pozytywny komentarz i daj znać autorowi, że zbudował coś fajnego!

Masz uwagi? Napisz kulturalnie co warto zmienić. Doceń pracę autora nad konstrukcją oraz opisem.

A nie myślałeś o zwykłym FSMC (Flexible Static Memory Controller) w trybie NOR lub SRAM? Tam miałbyś transfer równoległy 8 bitów ze strobami/zegarami bez takiego wydziwiania. A moduł LTDC (LCD-TFT Display Controller)? Przecież to jest właśnie do tego, co Ty zrobiłeś "na piechotę".  No i są STMy z "poósmnym" SPI (Octo-SPI), ale to już raczej większe maszynki.

https://www.st.com/resource/en/application_note/dm00287603-lcdtft-display-controller-ltdc-on-stm32-mcus-stmicroelectronics.pdf

Trochę martwi te słabe 14MHz. Ciekawe czy ograniczenie jest po stronie panelu (wolne scalaki CD4000 lub HC czy nawet jakieś filtry na liniach lub brak terminacji), czy jednak nie dopasowałeś czegoś po swojej stronie? Jaki dokładnie jest timing tego co masz teraz? Jaki jest setup i hold time danych? Czy znasz wymagania panelu na te czasy? Użyłeś buforów 74ACT a to bardzo niebezpieczne układy na 5V. Są szybkie i mają spore wydajności (>70mA) a to przy braku dopasowania impedancji (po jednej lub drugiej stronie) prosta droga do dzwonów, odbić i błędów choćby z powodu wielokrotnych, fałszywych zegarów. Czy możesz pokazać jak wyglądają CLK i któryś bit danych zdjęte oscyloskopem >100MHz z masą sondy zapiętą bezpośrednio na masie w okolicach wejścia panelu?

  • Lubię! 1
Link to post
Share on other sites
(edytowany)
6 godzin temu, marek1707 napisał:

A nie myślałeś o zwykłym FSMC (Flexible Static Memory Controller) w trybie NOR lub SRAM? Tam miałbyś transfer równoległy 8 bitów ze strobami/zegarami bez takiego wydziwiania. A moduł LTDC (LCD-TFT Display Controller)? Przecież to jest właśnie do tego, co Ty zrobiłeś "na piechotę".

Myśleć myślałem, ale przykładowo F746I jest tylko ponad 3x droższy (2,5$ vs 9$) i ze cztery razy fizycznie większy. Akurat ten podany dla przykładu bo jest akurat dostępny, ale to i tak najtańsze co znalazłem i jest aktualnie dostępne z F7, o H7 (OSPI) to nawet nie wspomnę... a F4, kurde jeszcze większy potwór, STM32F469IIT6 do tego 16$. JLC ma widać problemy z dostawami.

6 godzin temu, marek1707 napisał:

Trochę martwi te słabe 14MHz. Ciekawe czy ograniczenie jest po stronie panelu (wolne scalaki CD4000 lub HC czy nawet jakieś filtry na liniach lub brak terminacji), czy jednak nie dopasowałeś czegoś po swojej stronie?

Po drodze doszedłem do tego, że w zasadzie działa szybciej, ponad 20, ale gdzieś w logice przerwań jest błąd i przestają działać po paru sekundach, potropię to w wolnej chwili.

6 godzin temu, marek1707 napisał:

Jaki dokładnie jest timing tego co masz teraz? Jaki jest setup i hold time danych? Czy znasz wymagania panelu na te czasy?

Oscyloskop twierdzi, ze dane są wystawiane równo na zboczu, więc przy 14MHz... nie wiem ile setup, ale hold jest praktycznie równy przez to okresowi zegara.

6 godzin temu, marek1707 napisał:

Czy możesz pokazać jak wyglądają CLK i któryś bit danych zdjęte oscyloskopem >100MHz z masą sondy zapiętą bezpośrednio na masie w okolicach wejścia panelu?

Jak będę miał potem chwile i złapię i podrzucę przebiegi.

Edytowano przez kaworu
  • Lubię! 1
Link to post
Share on other sites

Jeśli zachowana jest signal integrity (to właśnie musisz sprawdzić po stronie panelu), to ten zerowy setup może być kluczowy. W jaki sposób wchodzi zegar na panel? Czy jest tam jakieś buforowanie? Może bramką/buforem Schmitta? To byłoby idealnie. Wtedy możesz spokojnie opóźnić zegar o kilka(naście) ns prostym układem RC (np. 51R+100pF). Bo jeśli niestety sygnał wchodzi bezpośrednio na wszystkie rejestry, to.. marny ten projekt. Wtedy linia musi być sterowana bardzo "sztywno" i raczej wypadałoby zrobić opóźnienie zegara na Twojej płytce, gdzieś między prockiem a 541, np. wspomnianym RC lub wstawiając tam szeregowo jedną-dwie nieodwracające brameczki 74LVC2G17 (dwie w jednym) lub przepuszaczajac zegar przez niewykorzystany, wolny kanał drugiego 541 (choć to może być za mało). No ale kluczowe jest upewnienie się, że panel widzi poprawny sygnał zegara bez odbić czy jakoś inaczej zniekształconego przedniego zbocza.

Link to post
Share on other sites
1 minutę temu, marek1707 napisał:

W jaki sposób wchodzi zegar na panel? Czy jest tam jakieś buforowanie? Może bramką/buforem Schmitta?

O ile pamiętam, a wnioskuję z dzwonienia na linii zegarowej (jakby z winy ACT), nie ma tam żadnego bufora.

4 minuty temu, marek1707 napisał:

No ale kluczowe jest upewnienie się, że panel widzi poprawny sygnał zegara bez odbić czy jakoś inaczej zniekształconego przedniego zbocza.

Ale tak w sumie, to osiągi przy nawet 3MHz są wystarczające, więc nie jestem pewny czy jakieś intensywne walczenie z tym tematem ma głębszy sens (i jestem prawie pewien, brak poprawnego działania na 20MHz to wina programu, bo chwilę działa poprawnie). Jeszcze się zastanawiam nad wymianą 541 na HCT...

Tak w sumie to aktualnie F730 nawet nie mają na stanie, i nie wiadomo kiedy będą, więc nowych wersji i by mi nie zlutowali.

Tak czy inaczej jak będę w okolicy oscyloskopu to rzucę okiem na to co ciekawego się tam dzieje, bo w sumie nie sprawdzałem sygnału na wejściu, tylko na wyjściu bo coś nie grało z taktami.

Link to post
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.