• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
LCD 3,5" Dotyk TFT 320x480 Mega UNO ILI9486
#37
(15-12-2019, 00:08)brendy napisał(a): Fajna sprawa narobiles mi chęci tym programem EVE bo w szybki sposób można sobie tworzyć różną grafikę i przerzucić na wyświetlacz przy tym tak jak w moim przypadku nie trzeba mieć większej wiedzy z arduino. Super to wychodzi i to zdj z kodem który wygenerowales wrzucasz na wyświetlacz i gotowe?
Kod wrzucasz do Arduino a nie na wyświetlacz.

(15-12-2019, 00:08)brendy napisał(a): To mam problem bo na dwóch laptopach spr z win8.1 i mam to samo. Muszę szukać przyczyny dlaczego jest ten błąd.
EVE używałem na Win10 32 i 64 bit. Czy jest problem z Gwindows 8 nie wiem.

Oczywiście, kod generowany przez EVE jest kiepski, konkretnie wysyłanie danych przez SPI ale nie ma prostego sposobu aby wygenerowac lepszy skoro arduinolibs nie wspiera DMA itp mechanizmów bo za bardzo nie może (mało RAM w większości AVR). Warto go nieco zmodyfikować, zapisywać do bufora po czym wysłać z użyciem DMA, ostatecznie przerwań. Naturalnie zapomnij o AVRtiny/mega. Bufor wymaga 8kB RAM, to  CAŁA dostępna w AVRmega2560. Mega1284 da radę albo jak dodasz zewnętrzny RAM, ale wtedy będzie to pewnie dwa razy droższe niż ARM. Na ARM, wystarczy podmienić dwie funkcje i skorzystasz z zalet DMA.
Można też kombinować z buforem np 4kB bo DisplayList z reguły nie jest duża, często mniej niż 1kB wystarcza. Pytanie co zyskasz na AVR gdy użyjesz bufora? Najczęściej nic! Wynika to z tego, że nie ma on DMA, a gdy wykorzystasz przerwania od SPI, to obciążą strasznie CPU a transmisja będzie wolniejsza niż bez użycia przerwań. Ratunkiem jest zmniejszenie szybkości transmisji do np 1Mb/s przy wysyłaniu DisplayList. Obrazek, który najczęściej wystarczy, że wyślesz raz po resecie, transmitujesz bez użycia przerwań z max dostępną prędkością.
Da się więc coś tam poprawić w AVR ale trzeba się narobić a efekt jest połowiczny. Z tego właśnie powodu projekty, które realizuje na AVR sa droższe niż na ARM.

Na Elektrodzie pojawił się wątek AVR vs ARM dla początkujących https://www.elektroda.pl/rtvforum/topic3640577.html Jak zwykle, najwięcej wad uC 32-bit znają osoby, które NIGDY nie używały takich uC i maja AVR-owe klapki na oczach. Jest mnóstwo mitów na temat ARM, jakie to są trudne. Wielokrotnie pokazywałem za forach i w czasopismach, że tak nie jest. Najczęstszy mit, to skomplikowana konfiguracja zegara (PLL). Totalna bzdura z dwóch powodów:
- Zegara nie trzeba konfigurować. Bardzo często uC działa na domyślnych ustawieniach.
- CubeMX pozwala na konfigurację w bardzo prosty sposób.
Obsługa peryferii z poziomu HAL jest niewiele bardziej skomplikowana niż z poziomu arduinolibs. Argument, że nie wszystko da się "wyklikać" w CubeMX jest także nietrafiony bo arduinolibs też mają poważne ograniczenia, np odczytanie flagi RXC w AVR czy TC w STM32 albo TCX (jak pamiętam) w ESP aby zmienic kierunek transmisji drivera RS485. bez przerobienia biblioteki ani rusz.
 
Odpowiedź
  


Wiadomości w tym wątku
RE: LCD 3,5" Dotyk TFT 320x480 Mega UNO ILI9486 - przez semi - 15-12-2019, 01:00

Skocz do:


Przeglądający: 1 gości