(11-12-2019, 20:33)brendy napisał(a): Witam
Chciałbym zamówić taki wyświetlacz
https://allegro.pl/oferta/lcd-3-5-dotyk-...e=facebook
Zanim go kupisz, zobacz jaki to będzie "demon szybkości":
https://www.youtube.com/watch?v=mluXsN6B...dex=3&t=5s
https://www.youtube.com/watch?v=_bn7ABjJ...dex=4&t=0s
Jak chcesz sensownie wykorzystać ten wyświetlacz, to bez uC z ponad 300kB RAM i oczywiście DMA nie podchodź. Takie uC są w obudowach 100pin. Cena ok 50zł. Możesz kupić pytkę NUCLEO od STM'a z uC, programatorem/debugerem i innymi dodatkami. Ceny od 90 do 150zł.
Jak się uprzesz, to i 256kB wystarczy a nawet 192. Przykład z F429 z 256kB RAM:
https://www.youtube.com/watch?v=R_PgN448...dex=2&t=0s
ale trzeba wspomóc się RTOS'em bo w uC nie zmieścisz bufora dla LCD i nie można użyć DMA. Na filmie widać zmianę obrazu, w rzeczywistości tego nie ma.
Jeśli chcesz wykorzystać uC z zewnętrzną SDRAM, to prosto nie będzie. Samodzielne zaprojektowanie PCB może być problemem. Szukaj więc gotowych pytek. FCM to w zasadzie konieczność (standard w 100pin STM32). SFCM odpada, bo potrzebujesz transmisji 16-bit. Nawet jak wyświetlacz oferuje tryb 8-bit, to transmisja będzie trwała za długo zwłaszcza gdy użyjesz RTOS a nie DMA. Z gotowych NUCLEO/DISCOVERY, na 100% uruchomisz taki wyświetlacz na:
https://kamami.pl/stm-nucleo-144/575145-...&results=4
https://kamami.pl/stm32-discovery/560556...results=12 (ta, nawet ma LCD)
https://kamami.pl/stm-nucleo-144/560903-...results=12 9ale RTOS raczej niezbędny).
Ceny są jakie są, tego nie zmienisz.
Z tańszych pytek nie powinno być problemu z:
https://kamami.pl/stm-nucleo-144/566185-...esults=168
https://kamami.pl/stm-nucleo-144/571791-...esults=168
https://kamami.pl/stm-nucleo-144/563267-...esults=168
https://kamami.pl/stm-nucleo-144/563524-...esults=168
ale dokładnie nie czytałem dokumentacji.
EDIT:
https://kamami.pl/stm-nucleo-144/566185-...esults=168 będzie ok, ma 320kB RAM. Nie jest super szybka (80MHz) ale w trybie 16-bit nie powinno być problemów, zwłaszcza, że można użyć DMA. Prawdopodobnie właśnie na STM32L496 będzie zbudowany akcelerator dla wyświetlaczy o rozdzielczości do 480x320.
Naturalnie, jak chcesz się tylko pobawić, jak napisał @kaczakat to baw się. Zobaczysz, że AVR nie nadaje się bezpośrednio do obsługi wyświetlaczy kolorowych o dużej rozdzielczości, Sytuację ratuje akcelerator graficzny np FT8xx. Niestety, FT8xx nie obsłuży wyświetlacza ze sterownikiem. Do wyświetlaczy ze sterownikiem opracowałem akcelerator oparty o STM32
https://www.youtube.com/playlist?list=PL...acjvhzPRdM. Na razie tylko dla wyświetlaczy max 128x128 (pewnie będzie upgrade do 160x128). Koszt uC to 13zł. Niedługo powstanie akcelerator (czekam na PCB) dla wyświetlaczy o rozdzielczości do 320x240. Ma on sens, bo koszt uC to trochę ponad 30zł. Czy powstanie dla 480x320 pewny nie jestem. Zależy czy będzie zainteresowanie w co wątpię z dwóch powodów:
- Koszt uC to ok 50zł, czyli prawie tyle ile kosztuje sam wyświetlacz ze sterownikiem.
- Czytelnikom "Elektroniki dla Wszystkich" i "Elektroniki Praktycznej" nie chce się pisać e-maili, wypełniać ankiet o ile nie dotyczą krytyki.
Powyższe wynika po części z:
- Użytkownicy Arduino wolą darmowe, wątpliwej jakości kursy (np na Forbocie) zamiast zainwestować w dobrą książkę lub prenumeratę czasopism. Konsekwencją tego są niepotrzebnie wydane pieniądze i rozczarowania (na szczęście jeszcze nie kupiłeś wyświetlacza). Gdybyś czytał EdW, wiedziałbyś, że wyświetlacz, który chcesz kupić nie nadaje się do Arduino, chyba, że chcesz tam wyświetlać treść zmienianą bardzo rzadko lub na niewielkich obszarach a urządzenie ma jeden ekran (nie ma menu itp).
Powodem manipulacji na forach jak Atnel, Forbot, jest fakt, że mają one zyski (bezpośrednie czy pośrednie) ze sprzedaży i rzeczowa informacja wpłynęłaby na spadek zysków.
- Arduino to świat iluzji i marzeń. Brak wiedzy, podstaw matematyki (aby policzyć czas transmisji wystarczy operacja mnożenia i dzielenia liczb całkowitych - wiedza ze szkoły podstawowej, klasa 4 ale trzeba umieć ta wiedze zastosować) powoduje, że Arduinowcy, kuszeni reklamami, łudzą się, że wszystko będzie działać dobrze.
Czy widział ktoś, film reklamujący wyświetlacz wysokiej rozdzielczości bez akceleratorta pracujący z Arduino? Ja nie i nie dziwię się, bo kto by kupił wyświetlacz, którego ekran jest rysowany w kilka sekund? Sklepy nie będą sobie strzelać w kolano.
Hasło "Wyświetlacz kolorowy 16-bit 480x320 do Arduino Mega" to jawne oszustwo! Tak samo jak "320x240 do UNO". W
ŻADNYM sklepie nie widziałem aby było napisane, że to działa beznadziejnie! Liczy się kasa ze sprzedaży! W przypadku AVR sprawę dodatkowo (poza brakiem RAM i DMA) komplikuje mała ilość pamięci FLASH. Karta SD nie rozwiązuje problemu, bo AVR nie ma interfejsu do kart (4-bit) lecz komunikuje się z kartą w trybie SPI
z realną przepływnością ok 4mb/s. Tak 4 a nie 8 jakby się wydawało! Powodem jest brak DMA w konsekwencji, pomiędzy bajtami transmitowanymi przez SPI taktowane 8MHz są średnie przerwy długości mniej więcej jednego bajtu! Teraz zwykła matematyka, jaka jest teoretyczna przepływność transmisji dla karty SD podłączonej do STM32? Nie pamiętam max zegara dla karty, na pewno zadziała na 30MHz. 30MHz * 4 bit = 120Mb/s. Dzięki DMA nie ma przerw pomiędzy bajtami i co ważne, CPU praktycznie nie jest obciążany taką transmisją i podczas niej może realizować inne zadania. Jak się ma 120Mb/s do 4Mb/s (max 5 przy taktowaniu CPU 20MHz) w AVR? Według moich obliczeń 30 razy wolniej!
Nie oszukujmy się, karta SD do AVR może przydać się do zapisywania niewielkiej ilości danych, np rejestracji temperatury z DS18B20 a nie przechowywania grafik dla wyświetlacza!
Kto nie wierzy w moje obliczenia i filmy które umieściłem na Youtube nie sam sprawdzi.