• 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
JAK to się robi ...
#10
(02-05-2019, 19:43)maniek100 napisał(a): 1) Gdy uruchamiam bez wyświetlacza diody migają bardzo szybko
2) Gdy uruchamiam z wyświetlaczem diody spowalniają
Proste jak kilometr sznurka w kieszenie, biblioteka obsługi LCD niepotrzebnie zużywa czas procesora. Szukaj innej / popraw tą co masz / zmień uC na taki z większym RAM i z DMA i, co oczywiste, wykorzystaj te możliwości.

LCD działa po I2C, użyj przerwań do transmisji, no i oczywiście bufora LCD (to zdaje się biblioteka robi). Z uzyciem przerwań, "równocześnie" będziesz czytał dane, obsługiwał UART, robił co tam jeszcze potrzeba i obsługiwał LCD. Bardziej skomplikowane rzeczy na AVR robiłem (emulacja slave 1-Wire Overdrive na IRQ, obsługa mostka USB po I2C lub SPI {nie pamiętam}, praca jako host 1-Wire {UART / DS2480 / DS2482} emulując VT-100 i coś tam jeszcze).
Trzeba wiedzieć, że wielowątkowość to duże zapotrzebowanie na RAM (nie tak duże jak RTOS ale 2kB to do dema wystarczą). Bufor na LCD (łatwo policzyć) na każdy USART, zarówno nadawanie jak i odbiór od kilkuset do kilku kB, na I2C podobnie. Do nowych projektów, bez kilkunastu/kilkudziesięciu kB nie podchodzę. Nie, że się nie da, da, ale zamiast 30 dni soft będę pisał 90 albo dłużej. Dalej zwykła matematyka, gdy produkcja jest w ilości 10szt na rok, lepiej aby była droższa a soft napiszę szybciej a taniej. Jeśli miliony miesięcznie, lepiej tani sprzęt, soft będzie drogi ale rozbije się na miliony szt.

Jak nie czujesz się na siłach napisać (zmodyfikować) obsługi LCD, uruchom RTOS. Lojalnie jednak ostrzegam, że trzeba poznać RTOS i pracę z systemami wielozadaniowymi. Mnie było łatwo, pisałem soft na Amigę, właściwie to PC. Amiga to też PC, tak jaki np MAC i dziesiątki konstrukcji lepszych od ówczesnego IBM, który w tamtych czasach mógł pomarzyć o wielozadaniowości na swoim 8086 z DOS (co nie znaczy, ze systemów, prawdziwych wielozadaniowych a nie jak nakładka na DOS Win3.11 albo udawany wielozadaniowy Win95) na 8086 nie było. Były nawet PRAWDZIWE! wielozadaniowe systemy na Z-80! Warto pamiętać, ze Windows, NADAL, nie jest prawdziwym systemem wielozadaniowym a Win95 była KŁAMLIWIE reklamowany jako pierwszy, prawdziwy, system wielozadaniowy. Po pierwsze, nie pierwszy, bo choćby MAC już dawno był, także Amiga, po drugie nie prawdziwy bo pewne operacje "blokowały" cały komputer! Temat na inną bajkę!.

Prawdopodobnie z RTOS wpakujesz się w jeszcze większe problemy, no i RTOS "lubi" RAM :-) RTOS bez RAM to jak Ferrari na polnej drodze.
 
Odpowiedź
  


Wiadomości w tym wątku
JAK to się robi ... - przez maniek100 - 25-04-2019, 12:19
RE: JAK to się robi ... - przez Robson Kerman - 25-04-2019, 19:23
RE: JAK to się robi ... - przez kaczakat - 25-04-2019, 19:53
RE: JAK to się robi ... - przez es2 - 25-04-2019, 21:50
RE: JAK to się robi ... - przez kaczakat - 26-04-2019, 21:40
RE: JAK to się robi ... - przez maniek100 - 26-04-2019, 12:54
RE: JAK to się robi ... - przez es2 - 26-04-2019, 16:22
RE: JAK to się robi ... - przez Robson Kerman - 26-04-2019, 21:14
RE: JAK to się robi ... - przez maniek100 - 02-05-2019, 19:43
RE: JAK to się robi ... - przez es2 - 02-05-2019, 20:06
RE: JAK to się robi ... - przez kaczakat - 04-05-2019, 15:38
RE: JAK to się robi ... - przez es2 - 04-05-2019, 16:31
RE: JAK to się robi ... - przez kaczakat - 04-05-2019, 23:09
RE: JAK to się robi ... - przez es2 - 05-05-2019, 10:33

Skocz do:


Przeglądający: 1 gości