Skocz do zawartości

Dwa przyciski i 14 diod led i wyświetlacz


xirtt

Pomocna odpowiedź

5 godzin temu, xirtt napisał:

Mam następne pytanie. czy można jakoś uprości ten zapis, tak żeby działał ?

Tak można np. za pomocą tablicy oraz pętli for.

5 godzin temu, xirtt napisał:

dlaczego to nie działa? logika wskazuję, że powinno.......🤔

Funkcja digitalWrite została napisana w taki sposób, aby mogła przyjąć maksymalnie 2 argumenty (pin oraz jego stan), Ty próbujesz przekazać 12 argumentów - to nie może zadziałać, bo nikt nie przewidział wykorzystania tej funkcji w takiej formie.

Link do komentarza
Share on other sites

Witam wszystkich serdecznie i życzę miłego dnia.😀

Dziękuje za super odpowiedź. W punkt , konkretna i na temat.

Mam jeszcze jedno pytanie dotyczące funkcji digitalWrite.👨‍🔧

Jeżeli funkcja digitalWrite przyjęła by np.12 argumentów , to zajęła by mniej miejsca w pamięci procesora, niż dwanaście oddzielnych funkcji digitalWrite?🤔

Proszę o odpowiedź.

Serdecznie pozdrawiam.😀

Link do komentarza
Share on other sites

Rozumie , szkoda że niema takiej możliwości , im więcej możliwości tym lepiej.

Uprościło by to niesamowicie programowanie.

Swój program , który super działa, napisałem bez żadnej pętli, dla tego mnie to tak interesuje.

Gdyby ktoś się znalazł bardziej odważny i uprościł to.

Zastanawiam się jak bardzo musi być skomplikowany program z pętlami, żeby posiadał te same funkcje co mój program.

 

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

36 minut temu, xirtt napisał:

jak bardzo musi być skomplikowany program z pętlami, żeby posiadał te same funkcje co mój program. 

Nie musi być skomplikowany. Obudowujesz wszystko co się da uprościć (co się wykonuje wiele razy) w pętle.

 

53 minuty temu, xirtt napisał:

szkoda że niema takiej możliwości

Prawdopodobnie jest. Tyle że dojście do niej jest nieopłacalne, bo prościej to wykonać pętlą.

Link do komentarza
Share on other sites

20 godzin temu, xirtt napisał:

Swój program , który super działa, napisałem bez żadnej pętli, dla tego mnie to tak interesuje.

Przy programowaniu dobrze kierować się prostą zasadą: jeśli coś wykonuje się tylko raz to piszemy program bez pętli, jak coś ma się wykonać "więcej niż raz" to powinno się to zapisać w pętli. Teraz rozpisałeś sobie 12 wyprowadzeń ręcznie i zadziałało, a jakbyś musiał napisać program, który ma obsłużyć 500 wejść to też robiłbyś to ręcznie? Raczej nie. Od początku warto uczyć się pętli w praktyce. To jest ułatwieniem głównie dla programisty, ale nie dla mikrokontrolera 😉

Link do komentarza
Share on other sites

(edytowany)

Dziękuje serdecznie za odpowiedzi.

Oczywiście macie rację, tak tylko sobie rozmyślam.......

 Te pytania zrodziły się w mojej głowie , bo nie mam pojęcia o prawdziwym programowaniu. ( ale cały czas czytam o tych pętlach ).

Mam kolejne pytanie.

Mam wyświetlacz CS4004A 18pin., potrzebuje do niego konwerter na I2C i jakąś bibliotekę, proszę o pomoc w tej sprawie.

Serdecznie pozdrawiam.

 

Edytowano przez xirtt
Link do komentarza
Share on other sites

2 godziny temu, Treker napisał:

To jest ułatwieniem głównie dla programisty, ale nie dla mikrokontrolera

Właściwie dla obu. Bo pętla zajmie tyle samo czasu do wykonania, ale mniej pamięci zostanie poświęcone na kod.

32 minuty temu, xirtt napisał:

bo nie mam pojęcia o prawdziwym programowaniu. ( ale cały czas czytam o tych pętlach)

To przestań czytać, zacznij próbować stosować pętle. Wtedy się ich nauczysz. Jak będziesz tylko czytał to możesz czytać do końca świata.
Nie twierdzę że znajomość teorii jest zła. Ale nie zawsze sama teoria wystarcza.

Z konwerterem nie pomogę.

  • Lubię! 1
Link do komentarza
Share on other sites

Witam wszystkich serdecznie ,życzę miłego dnia i miłych nadchodzących wszystkich dni.

Dziękuje za odpowiedzi, masz całkowicie rację przyjacielu, nie piszę  o tym , ale i praktycznie też kombinuje, kombinuje.....

Oczywiście cały czas czekam na pomoc z tym wyświetlaczem ( jak wyżej w postach ).

Korzystając jednak z okazji nadchodzących świąt i nowego roku, chcę złożyć wszystkim świąteczne życzenia........

Nie życzę wam zdrowia 

Nie życzę wam pieniędzy 

Tego wszyscy będą wam życzyć

Ja życzę wam MIŁOŚCI......

może warto powiedzieć w te święta , może po raz pierwszy...

Do Taty , Kocham Cię Tato....

Do Mamy, Kocham Cię Mamo...

Do Brata , Kocham Cię Bracie... 

Do Siostry, Kocham Cię Siostro....

Do Syna , Kocham Cię Synku...

Do Córki, Kocham Cię Córeczko....

Prezenty znikną ,............ ale MIŁOŚĆ zostanie....

Tej MIŁOŚCI wszystkim życzę...........

 

  • Lubię! 2
Link do komentarza
Share on other sites

(edytowany)

Witam wszystkich serdecznie i życzę miłego dnia.😀

Dziękuje za życzenia.😊

Mam dwa pytania dotyczące ARDUINO UNO.👨‍🔧

Mój program rozbudowałem do 28 sekwencji sterujących diodami led, do każdej z nich mam dopisane po dwa obrazy wyświetlane na wyświetlaczu ( 4 linie, razy 20 znaków, jeden obraz ). Jednak przy wpisywaniu liter do wyświetlenia widać jak ubywa pamięci.

Jeśli chodzi o  sam program to zajmuje on mniej więcej 30% pamięci , ale same opisy wyświetlane na wyświetlaczu , przy 18 sekwencjach zajmują około plus 60% pamięci.

Arduino przy kompilacji wysyła komunikat ( może wystąpić brak stabilności), ponieważ zająłem około 90% pamięci, a potrzebuję wcisnąć jeszcze 10 sekwencji.

Pytania - czy jest jakiś sposób na zwiększenie pamięci ARDUINO UNO ?, czy tylko pozostaje  ARDUINO MEGA?🤔

Serdecznie pozdrawiam i czekam na pomoc.

Edytowano przez xirtt
Link do komentarza
Share on other sites

Możesz powtarzające się fragmenty tekstu, bądź sekwencje sterowania ledami zapisać jako stałą cześć programu (nie wiem jak to się nazywa w Arduino), a potem używać tego wielokrotnie. Wtedy zużywasz pamięć raz tylko. Ja pisząc w Bascomie używam podprogramów, czyli jak dana część kodu jest używana wielokrotnie, to wtedy ją wywołuję gdy jej potrzeba.

Link do komentarza
Share on other sites

1 godzinę temu, xirtt napisał:

Witam wszystkich serdecznie i życzę miłego dnia.😀

Dziękuje za życzenia.😊

Mam dwa pytania dotyczące ARDUINO UNO.👨‍🔧

Mój program rozbudowałem do 28 sekwencji sterujących diodami led, do każdej z nich mam dopisane po dwa obrazy wyświetlane na wyświetlaczu ( 4 linie, razy 20 znaków, jeden obraz ). Jednak przy wpisywaniu liter do wyświetlenia widać jak ubywa pamięci.

Jeśli chodzi o  sam program to zajmuje on mniej więcej 30% pamięci , ale same opisy wyświetlane na wyświetlaczu , przy 18 sekwencjach zajmują około plus 60% pamięci.

Arduino przy kompilacji wysyła komunikat ( może wystąpić brak stabilności), ponieważ zająłem około 90% pamięci, a potrzebuję wcisnąć jeszcze 10 sekwencji.

Pytania - czy jest jakiś sposób na zwiększenie pamięci ARDUINO UNO ?, czy tylko pozostaje  ARDUINO MEGA?🤔

Serdecznie pozdrawiam i czekam na pomoc.

Cześć,

rozumiem, że brakuje Ci pamięci RAM (nie Flash)?Jeśli chodzi o RAM to można dodać jakąś "kostkę" z interfejsem szeregowym (SPI czu I2C, SPI jest szybszy). Np patrz te linki:

http://playground.arduino.cc/Main/SpiRAM

http://forum.arduino.cc/index.php?topic=368072.0

Teoretycznie pamięć Flash też można rozszerzyć, ale jest to bardziej skomplikowane.

Pozdrawiam

 

Link do komentarza
Share on other sites

Anonim
Ten temat został zamknięty.
×
×
  • 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.