Skocz do zawartości

Kurs Arduino - #2 - podstawy programowania, porty I/O


Komentator

Pomocna odpowiedź

Czytałem gdzieś w jakiejś książce, ale na poniższym forum też tak się programiści wypowiadają. Wg mnie na kursie forbot nie powinno wskazówek dot. używania break. 

"The reason this is seen as 'dirty', is that in some instances (if condition is satisfied on the first run), the last part of the while loop (after your IF statement) will not be executed. This can cause errors/faults in some executions, that are hard to spot during debugging."

"In functional programming using break is dirty because it complicatres reading the program if the body of cycle is quite large. Thought as for me I do NOT use large body of cycle so using of break is quite clear and readable."

https://www.researchgate.net/post/How-dirty-is-usage-of-break-in-while-loop

 

  • Nie zgadzam się! 1
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

@tomecki jako autor kursu pozwolę sobie jednak uznać, że break jest dopuszczone w tym kursie 🙂 Jest to normalny element języka (opisany w dokumentacji Arduino), więc można z niego korzystać 🙂

Link do komentarza
Share on other sites

1 godzinę temu, tomecki napisał:

na poniższym forum też tak się programiści wypowiadają

Którzy???

Rozumiałbym jeszcze goto (bo to faktycznie trzeba umieć stosować i trzeba wiedzieć kiedy), ale break jest normalną instrukcją bez której raczej trudno się obejść. Oczywiście - można dodawać dodatkowe zmienne, rozgałęziać sobie jakieś ify aż wylezą poza ekran, ale  ani czytelności to nie poprawi, ani programu nie uprości.

Prosty przykład:

while ((a=cośtam.read())) {
  zrób_coś_z(a);
  if (jakiś_efekt_uboczny_tego_zrobienia) break;
  zrób_coś_jeszcze(a);
}

Pozbądź się break.

  • Lubię! 3
  • Nie zgadzam się! 1
Link do komentarza
Share on other sites

Hej

Dopiero zaczynam przygodę z Arduino i mam pytanie po drugiej lekcji. Czy istnieje możliwość programowego sterowania zasilaniem? Chodzi mi o to, czy można np. sterować siłą świecenia diody? W lekcji jest mowa jak włączyć diodę lub ją wyłączyć, a czy można ją włączyć na np. 25%, 50% itd.?

Pozdrawiam

Darek

Link do komentarza
Share on other sites

Łoł, świetny kurs. Dopiero początek a już świetna zabawa.

Zadanie domowe 1.1

u mnie przy dioda czerwona 16ms jeszcze miga, przy 15ms juz w zasadzie "drży" a przy 14ms trzeba się mocno wpatrywać, żeby to "dżenie" zobaczyć.

Dla zielonej przy tych czasach znacznie lepiej widać mruganie.

i robię dalej

Edytowano przez pawelmb
uzupełnienie
Link do komentarza
Share on other sites

Nie wiem czemu może ktoś wytłumaczy ale w zadaniu domowy 1.2 mam problem mam diode czerwoną i żółtą podłączone tak samo przez rezystor 330Ohm ale jedna dioda świeci mi mocniej jedna słabiej jak raz czerwona mocniej i wteyd żółta słabiej a jak zamienie przewody to na odwrót żółta mocniej czerwona słabiej 

Link do komentarza
Share on other sites

Dnia 6.03.2021 o 19:21, Treker napisał:

@Krokietan pokaż dla pewności zdjęcie swojego układu oraz kod programu - bez tego będzie ciężko pomóc 🙂

Już nieważne udało mi się to jakoś zrobić przypadkiem jak składałem układ by zrobić zdjęcie i wysłać więc sprawa rozwiązana już.

Link do komentarza
Share on other sites

Cześć mam pytanie mógł by mi ktoś pomóc? w pierwszej części tego odcinka gdy podłączam wszystko do płytki stykowej, a później do arduino uno następnie wgrywam program i mi nic się nie dzieje dioda led nie świeci się :(

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • 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.