Aktualnie korzystam z AS4C4M16SA-6TCN w połączeniu z STM32F746 w obudowie QFP 176, w ten sposób płytka na tylko 2 warstwy, a SDRAM jest dokładnie pod uC. Mniejsza obudowa uC nie pozwala na taki layout. Rozwiązanie jest przejściowe, ponieważ jest to 2 wersja urządzenia, które pierwotnie było zbudowane na RPi i średnie obciążenie CPU przekraczało 90%....
Da się podłączyć i działa dość szybko. Podwójny frame buffer się da zrobić bez problemu. Trzeba jednak dobry projekt PCB. Na 2 warstwach ciężko to upchać zachowując jakiekolwiek zasady EMC.
No właśnie gość w tym poście nic nie pisał jaka to transmisja (nie mogę znaleść linka). Tylko jak zrealizować obsługę SDRAM. FSMC nie obsługuje takiego rodzaju pamięci. Są jakieś zewnętrzne kontrolery do tego celu?
tmf: ile razy jeszcze będziesz sugerował, że do uC, który w środku ma 160 MHz, a na zewnątrz miewa 40 MHz potrzebna jest jakakolwiek szczególna płytka? Nie, nie jest. Zwykła 2-warstwowa płytka bez żadnych dopasowań jest w zupełności wystarczająca. Nawet przy podłączaniu SDRAM do STM32F4 nie ma potrzeby wyrównywania długiści linii danych - to jeszcze...
Wydaje mi się, że można ale czy mógłby ktoś bardziej doświadczony ode mnie na to spojrzeć i powiedzieć na 100% czy się da. Chodzi o to, że właśnie projektuję płytkę pod to, bo nie mam tego jak sprawdzić ze względu na rodzaje obudów układów. Na chwilę obecną mam uruchomiony LCD pod FSMC i kamerę(także będzie w projekcie) na DCMI na STM32F4 Discovery....
Dobra sporo już mi się rozjaśniło. Więc lecimy dalej. Mam płytkę STMF429discovery. I jak wiadomo posiada ona SDRAM na FMC. I jak wiadomo ona musi zostać zainicjowana. Jak to się ma do linkera. Normalnie informuje go o tej pamięci tak jak o ramie. Czy trzeba coś dopisać, uwzględnić ?
W sumie jako ciekawostka, poniżej filmik podobnego tematu opartego na: - wyświetlacz 800x480 16bit głębia - STM32F103 - interfejs równoległy (8080) Dane pobierane są z karty SD, nie wykorzystuje żadnych wbudowanych funkcjonalności procesora nawet DNA (jedynie interfejs FSMC). Menu wygląda żałośnie (miganie). Gdyby ktoś wykonał mi taką robotę, zwyczajnie...
Biblioteka kompiluje się i programowo działa. Jednak nie widać efektów na wyświetlaczu więc może pociągnę ten temat dalej. http://en.radzio.dxp.pl/stm32f429idiscov... Zdefiniowałem wyżej wymienione funkcje jak w tym projekcie. W main dodałem przykładowy program dokładnie taki sam jak w tym projekcie. (Bo jest to tutorial...
Ok. Przeprowadziłem testy. Przy zastosowaniu linkera arm-none-eabi-gcc i usunięciu ze skryptu linkera: Dodano po 40 OK. Radzę sobie tak, jak poradził sobie Mess-gd tu: https://www.elektroda.pl/rtvforum/viewto... Na razie zrobiłem zmiany w startupie by jego zmienne odpowiadały tym w skrypcie linkera od FCh. Kompiluje się. Teraz...
Czytam sobie własnie o możliwościach rdzenia i... nie ma sie czym podniecać. Nadal brakuje SIMDów, FPU, i szybkiego dzielenia (CM4 max 12 cykli, ten PIC 35 cykli). Nie ma cudów. Również zauważyłem że Microchip ma poważną awersję do magistral zewnętrznych pamięci równoległych. "W koncu" pojawiają się PICe mające magistrale zgodne z 8080, ale SDRAM nadal...
(at)BlueDraco: Zgadzam się z Tobą i też się zastanawiam na czym polega ta dziwna maniera polecania zabytkowych, 8-bitowych AVR'ów? Pomijając ich ograniczenia strukturalne, za każdym razem wchodząc na Forum widzę problemy typu: jaki programator, programator nie działa, błędy zapisu, program jest dobry, a jednak nie działa... i tysiąc tego typu problemów...
Cześć, Tutaj [url=Tutaj]https://www.st.com/content/cc... jest to dość dobrze wyjaśnione. Generalnie LTDC to taki interfejs STM potrafiący sterować bezpośrednio wyświetlaczami bez wbudowanego kontrolera...
A no dobra, sorry - to jest inny problem. Najszybciej będzie, jak w pliku Makefile wyłączysz generowanie pliku .bin. Rozwiązanie 100% poprawne to dodanie czegoś do skryptu linkera do sekcji w SDRAM, żeby nie pakował ich do obrazu binarnego, ale chwilowo nie jestem 100% pewny co dokładnie [; Chyba (NOLOAD) (do _WSZYSTKICH_ sekcji w pamięci SDRAM), ale...
Sporo osób ma problemy więc proszę. Lista plików które trzeba umieścić w czystym przykładzie stm32f4_blink_led aby wyświetlacz ożył. (na płytce STM32f429disco) (UWAGA DZIAŁA BEZ SPLa) W pakiecie: -zaktualizowane pliki nagłówkowe od st. -zmodyfikowane pliki inicjalizacyjne SDRAM na bazie projektu ze strony en.radzio.dxp.pl (działają na bibliotekach GPIO...
STM32F4 z 3.2" LCD i 8MB SDRAM Niezły zestaw, jednak ta cena... :|
Ok, dzięki. Będę się musiał przez to przegryźć bo widzę, że tutaj uruchomione są: FPC, LTDC oraz DMA2D. A mi się na razie udało uruchomić samą obsługę SDRAM.
Można podpiąć takie TFT do STM32 i wykorzystać interfejs FMSC. Ja preferuje tańsze i bardziej uniwersalne rozwiązanie na FPGA. No właśnie chyba mi coś umyka. FPGA tańsze? Zupełnie układów programowalnych nie znam, przyznam, że kusi mnie ich poznanie, jednak jak patrzę na ceny fpga w tme, nie mogę pojąć, w którym miejscu są one konkurencyjne do uC z...
Witam wszystkich. Mam pewien dylemat, gdyż chcę użyć płytki STM32F4Discovery do zapisywania danych z przetwornika ADC. Jako iż danych będzie dość sporo (tutaj DMA na pewno się przyda) potrzebuję miejsca do ich zapisu. Pamięć mikroprocesora odpada więc rozważam dwie możliwości: - pobieranie danych z ADC obróbka przez uP i wysyłanie przez USB do PC, wydaje...
Dziękuję za odpowiedzi. :arrow: tymon_x Rozwiązaniem jest FPGA... będzie taniej. Wyjdziesz na tym też zdecydowanie lepiej niż z uC. I spokojnie zmieści się tam soft-procesor z dostępnym kompilatorem C/C++. Rozumiem masz na myśli układ pokroju np. tego : Owca cała, wilk syty: "mikrokontroler" jaki będziesz chciał, jest tam pokaźna paczka modułów i wszystko...
Może warto zacząć od podstawowych obliczeń? Dane dla wyświetlacza to 480x640x3 = 921600 bajtów = 900 KiB. Pierwsze wrażenie może być takie, że wewnętrznej pamięci nie wystarczy na bufor obrazu, ponieważ nie jest to jednolity blok i część tej pamięci trudno współpracuje z DMA i LTDC. Ale w prostych aplikacjach, bez zaawansowanej grafiki, można ograniczyć...
Myślisz ze 1 (słownie jeden) błąd typu literówka w tak ogromnym pliku to już coś strasznego? Nie, a powinienem? Czy ja gdzieś napisałem coś w tym guście? "Nie spodziewałem się błędu w takiej głupocie" - długo szukałem go u siebie w kodzie... bo 99% błędów właśnie tam znajduję :roll: W porównaniu z błędem jakiego się spodziewałem (np. złe timingi, czy...
Zrobiłem to trochę hardcorowo, Ale działa? Powinno w sumie działać <: Jest na to jakiś lepszy mniej inwazyjny sposób? Hmm... Czy mniej hardcore'owo to nie wiem, może trochę bardziej uporządkowane, można to zrobić np. tak: 1. Otwierasz skrypt linkera dla układu, czyli np. distortos/source/chip/STMicroelectronics... 2. Dodajesz...
Witam. Projektuje płytkę do której będzie podłączony wyświetlacz z interfejsem RBG888. I trochę nie przeglądając specyfikacji uC zamówiłem już pamięci SDRAM 32bitowe. I niestety pojawił się konflikt pomiędzy peryferiami a mianowicie pełen interfejs RBG888 zajmuje mi piny które obsługują opcje byte enable (odczyt tylko 8 bitów) (piny NB0..NB4 ale zajęty...
Płytek pod różne Cortexy zaprojektowałem kilkadziesiąt, w tym kilka pod STM32F4. Wszytskie dwuwarstwowe, wszystkie działają. Fakt, w żadną nie musiałem wrzucać SDRAM. Nie wiem, skąd pomysł, że płytka pod STM32F jest trudniejsza do zaprojektowania lub polutowania niż pod Xmega. Przesądy jakieś. Trudno to jest z obudowami DIL, bo przy normalnych założeniach...
Procesor to konkretnie STM32F439IGT6. Mam taki kod w mainie: https://obrazki.elektroda.pl/2215514800_... A powinno być tak: https://obrazki.elektroda.pl/3426620100_... Najciekawsze wnioski są jednak po dodaniu tych linii: https://obrazki.elektroda.pl/6540612300_... A tu dla wersji która inicjalizuje...
https://obrazki.elektroda.pl/8974662300_... Gniazda M.2 są zwykle używane do podłączania kart rozszerzeń bezprzewodowych (Wi-Fi, GSM itp) lub pamięci masowych do laptopów, komputerów i komputerów jednopłytkowych. Ale nic nie stoi na przeszkodzie, aby wykorzystać to złącze w innym celu. Część firm korzysta z tego jako modułów rozszerzeń...
Ściągnij sobie nowy RM0090, zaktualizowali go i uwzględnia też nowe F4. Ale faktycznie bez sensu to zrobili, na stronach F439 i innych nie ma o nich słowa, dopiero trzeba otworzyć link ze starszego układu i tam jest już zaktualizowany...
Zajrzyj do erraty od tego procesora. Jedoczesne użycie pamięci statycznej i dynamicznej jest niemożliwe.
Schemat i sprawdź do którego SDNE jest podłączona.
A ile ma ta ramka z kamery? I co się stanie jak np. zapiszesz połowę ramki a potem drugą połowę? (czyli nie za jednym razem) Bo mi to wygląda na błąd w zapisie a nie błąd w konfiguracji pamięci.
Wykres NIE jest "od czapki". To nie jest SPI, to jest 8 bitowa równoległa magistrala synchronizowana sygnałem CLK. Dane przesyłane są równolegle po 8 bitów ( po jednym kolorze ) dla jednego cyklu w kolejności kolorów jak na wykresie. Tak jak się przyglądam to nie wiem czy nie jest najbardziej podobna do szyny danych Intel8080 z sygnałem RD (magistrala...
Mogę się mylić ale ten STM32 raczej nie da rady... Ma mniej więcej 2 razy za mało RAM'u, żeby zbuforować jeden wyświetlony obraz... Dla TouchGFX typowa konfiguracja to pamięć QSPI + zewnętrzny SRAM/SDRAM + RTOS. Bez TouchGFX myślę, że da się to zrobić, kosztem braku animacji, przejść i innych bajerów.
Może problem z tą sekcją właśnie. Wygląda ona tak: [syntax=c]MEMORY { rom (rx) : org = 0x08000000, len = 1M ram (rwx) : org = 0x20000000, len = 112k aux_ram (rwx): org = 0x2001C000, len = 16k ccm_ram (rw): org = 0x10000000, len = 64k bkp_ram (rwx): org = 0x40024000, len = 4k sdram0 (rwx): org = 0xD0000000, len = 8192k /* External SDRAM Bank0: 8M */...
Albo wspomniane Nucleo, albo zestawy STM32 DISCOVERY. Chyba najbardziej uniwersalny (i mający z serii najlepszy stosunek możliwości użytego mikrokontrolera do ceny) jest STM32F4 DISCOVERY (Cortex-M4F, 1 MB Flash, 192 KB SRAM, Ethernet MAC – niestety w zestawie nie ma PHY, USB-OTG...). Cena prawie o połowę niższa od tego, który podałeś (za tyle,...
Tutaj w kodzie linkera. [syntax=c] /** * Linker script for STM32F4xx Devices with 1MB FLASH, 192KB RAM (64KB CCM) */ /* Entry Point */ ENTRY(Reset_Handler) #ifdef OPENMV1 #define FLASH_ORIGIN 0x08000000 #define FLASH_LENGTH 512K #define ISR_ORIGIN 0x08000000 #define ISR_LENGTH 16K #define TEXT_ORIGIN 0x08010000 #define TEXT_LENGTH 448K #define RAM_ORIGIN...
Witam zrobiłem to w inny sposób użyłem funkcji: [syntax=c] GUI_SetOrientation(GUI_SWAP_XY | GUI_MIRROR_Y);[/syntax] Tylko żeby to działało trzeba w GUIConf.c ustawić [syntax=c]#define GUI_NUMBYTES (1024 * 128*8) U32 extMem[GUI_NUMBYTES / 4] __attribute__((section(".HeapMemSection"... [/syntax] i zrobić sekcje w linkerze adres 0xD0100000 (zewnętrzy...
Widać trochę źle się zrozumieliśmy. Z tą funkcją która rysuje piksele miałem namyśli nie protokół który wysyła informacje do wyświetlacza tylko zmienianie wartości RAMU (najczęściej SDRAMU) w której przechowywana jest ramka obrazu. Ja ostatnio używam tylko wyświetlaczy bez kontrolera i korzystam z LTDC stm32f429 i dla mnie rysowanie piksela to zmienianie...
Cały plik main. [syntax=c]/** ****************************************... * File Name : main.c * Description : Main program body ****************************************... * * COPYRIGHT(c) 2016 STMicroelectronics * * Redistribution and use in source and binary forms, with or without...
Xmega nie ma FSMC, ani tym bardziej FMC, ale ma EBI. W praktyce nie ma znaczenia jakich liter używa się na określenie sprzętowego interfejsu pamięci i/lub urządzeń zewnętrznych. Istotne jest jakie możliwości ma taki interfejs: szerokość magistrali danych (8/16/32), liczba linii adresowych, liczba sygnałów strobujących (!CS/NEx), prędkość maksymalna,...
Ja używałem 2 kamer i LCDka 800x480 TFT na jednym STM32F439 + SDRAM. MAX9526 konwertuje analogowe dane CVBS na cyfrowe, czyli jakby udaje cyfrową kamerę. Można więc z całą pewnością powiedzieć że skoro mi działało z kamerami cyfrowymi, to z MAX9526 też by działało. PS. A jak podłączyłem 2 kamery do jednego interfejsu DCMI? DCMI można ustawić w tryb...
Witam Niedawno dostałem stm32f429 discovery. Udało mi się w nim ustawić SDRAM i aktualnie próbuje wyświetlić coś na wyświetlaczu. Ale coś mi nie idzie. Chce sterować wyświetlaczem za pomocą protokołu RGB888 (realne RGB666) na tyle pozwalają połączenia na płytce. I teraz z tego co wiem to zworki IM 3..0 ustalają tryb pracy kontrolera. Wie ktoś jak powinny...
[syntax=c]//volatile uint32_t count; int main(void) { volatile uint32_t count, count_max = 10000000; fpu_enable(); pll_start(CRYSTAL, FREQUENCY); stm32f429discovery_SDRAM_init(); gpio_pin_cfg(LED_GPIO, LED_pin, GPIO_OUT_PP_25MHz); while (1) { for (count = 0; count < count_max; count++);// delay LED_bb = 1; for (count = 0; count < count_max; count++);//...
Ale trudno sobie wyobrazić sensowne działanie przy jedynie wewnętrznej pamięci RAM. Toteż po to właśnie dodano do STM32 w końcu po latach kontroler SDRAMu i poszerzono magistralę zewnetrzną do 32 bitów. Na wewnętrznej pamięci to QVGA najwyżej zrobisz.
Witam, od jakiegoś czasu testuję zestaw uruchomieniowy STM32F429 discovery. Bazuje na modyfikacji przykładu Freddiego Chopina. Od jakiegoś czasu próbuje coś wyświetlić bez korzystania z bibliotek od ST (to mam już za sobą). Na początku dodam, że wyświetlacz startuje, wyświetla kolorowe tło (LTDC->BCCR). Następnie ustawiam żądany rozmiar okna korzystając...
Nie jestem pewien czy dobrze zrozumiałem Twoją radę. Dołączyłem do projektu GUI pliki znajdujące się w projekcie czujnika, stworzyłem drzewo katalogów w Keilu tak aby było połączeniem drzew z obu projektów, dodałem w zakładce C/C++ adresy do plików nagłówkowych, po skompilowaniu zniknęły błędy związane z dołączaniem plików, ale pojawiło się mnóstwo...
A płytka teoretycznie "podłącza" co trzeba od JTAGa...przynajmniej tak sądzę po pobieżnym przejrzeniu. Mam SWD i działa, ale niesmak pozostaje :/ Jeśli raz połączysz się z układem po SWD, to aby potem połaczyć się z nim po JTAG, musisz układ całkowicie odłączyć od zasilania. Nie wystarczy zwykły reset - musi to być pełny "power-down". OpenOCD niestety...
Witam np Stm32F429/439 , ale jak zwykle jest jedno ale. Z reguły bitmapy i font masz we flash, jak chcesz to połączyć to pasowało by to skopiować do jakiejś pamięci i dopiero to wyświetlić jako całość, kopiowanie masz przez DMA, a na LCD rzuca to LTDC, ramu w Stm masz 256kilo a lcd 470x272= 127840x4 = około 500Kb czyli... Moim zdaniem to nie ma sensu...
Wyświetlacz na szczęście się odpala, wybrałem dla niego sterownik liniowy. Doszedłem już dzisiaj do tego że problem faktycznie tkwi w pamięci, ponieważ nawet pomijając gui_init() procesor wywala mi HardFault_Handler przy próbie korzystania z zewnętrznego ramu. Z tej okazji pojawiła mi się nowa zagadka: mam źle inicjowaną pamięć czy złą konfigurację...
Witam ostatnio zakupiłem wyświetlacz LCD TFT 3,2" taki jak na tej stronie: [url=https://botland.com.pl/pl/wyswietla... Podłączyłem wyświetlacz do mojego mikrokontrolera stm32f407 przez FSMC i wszystko działa ładnie. Lecz zastanawiam się jak zorganizować pracę...
Jakby miały kontroler SDRAM to kto wie... (; Jest jeszcze STM32F4xx - 168MHz i rdzeń -M4 robi wrażenie [; Na razie stanęło na LPC1788. EDIT: "Kontroler LCD" w STM32F2xx i STM32F4xx to po prostu opcja w kontrolerze FSMC, a więc interfejs do zewnętrznego kontrolera LCD, a nie do samego panela. 4\/3!!
stm32f4 sdram stm32f4 discovery sdram gigabyte sdram
naprawa połączeń matrycy wyciszy domofon whirlpool zmywarka zablokowany
sterownik elemik zegar wieżowy
Hulajnoga Motus Pro 10 - silnik wyłącza się po kilku metrach, błąd na wyświetlaczu KEY 900 CT-1AS – napęd zatrzymuje się po 2 s, brak ustawienia czasu pracy, fotokomórki, enkoder