Skocz do zawartości

Vova

Użytkownicy
  • Zawartość

    15
  • Rejestracja

  • Ostatnio

Reputacja

4 Neutralna

O Vova

  • Ranga
    2/10

Ostatnio na profilu byli

Blok z ostatnio odwiedzającymi jest wyłączony i nie jest wyświetlany innym użytkownikom.

  1. @ethanak Faktycznie ta linijka kody z gwiazdkami nie potrzebna. Jakoś myślałem że bez tego ten drugi IF nie będzie działać... Skorzystałem z automatycznego formatowania i tak to wyszło: #define dioda 8 String odebraneDane = ""; // Pusty ciąg odebranych danych boolean stanDiody = false; // Przypisanie zielonej stanu void setup() { Serial.begin(9600); // Uruchomienie komunikacji pinMode(dioda, OUTPUT); // Konfiguracja wyjścia digitalWrite(dioda, LOW); //Dioda w stanie niskim } void loop() { if (Serial.available() > 0) { // Czy Arduino odebrało dane //Jeśli tak, odczytujemy je doznaku końca linii i zapisz w zmiennej odebraneDane odebraneDane = Serial.readStringUntil('\n'); if (odebraneDane == "dioda") { //Gdy wpisane "dioda" if (stanDiody == false) { // Gdy zmienna w stanie niskim digitalWrite(dioda, HIGH); // Właczamy diodę stanDiody = true; // Zmienna przechodzi w stan wysoki } else if (stanDiody == true) { // Gdy zmienna w stanie wysokim digitalWrite(dioda, LOW); // Wyłączamy diodę stanDiody = false; // Zmienna przechodzi w stan niski } } } }
  2. #define dioda 8 String odebraneDane = ""; // Pusty ciąg odebranych danych boolean stanDiody = false; // Przypisanie zielonej stanu void setup() { Serial.begin(9600); // Uruchomienie komunikacji pinMode(dioda,OUTPUT); // Konfiguracja wyjścia digitalWrite(dioda, LOW); //Dioda w stanie niskim } void loop() { if(Serial.available() > 0) { // Czy Arduino odebrało dane //Jeśli tak, odczytujemy je doznaku końca linii i zapisz w zmiennej odebraneDane odebraneDane = Serial.readStringUntil('\n'); if (odebraneDane == "dioda") { //Gdy wpisane "dioda" if (stanDiody == false){ // Gdy zmienna w stanie niskim digitalWrite(dioda,HIGH); // Właczamy diodę stanDiody = true; // Zmienna przechodzi w stan wysoki }else if (odebraneDane =="dioda") {//Gdy wpisane słowo "dioda" if (stanDiody == true) {// Gdy zmienna w stanie wysokim digitalWrite(dioda,LOW); // Wyłączamy diodę stanDiody = false; // Zmienna przechodzi w stan niski } } } } } @ethanak @Treker Witam ponownie. Może być taki rozwiązanie zadania 2.5*
  3. @Treker @ethanak Dziękuje za odpowiedzi i cierpliwość. Chyba faktycznie powinienem wrócić do pierwszej lekcji kursu.
  4. Jak patrze na rozwiązania innych z wykorzystaniem np. " ! " zastanawiam się skąd oni to biorą , przecież nie było ani słowa o tym. Mam nadzieje że ta(3) część kursu jest najtrudniejsza i najbardziej nie wyjaśniona (jak z tym boolean), i jak już ruszę dalej to będzie to dla takich naprawdę bardzo początkujących ( czytać kompletnie zielonych) w programowaniu... @ethanak czy chodziło o to żeby zmienić z "dioda" na "stanDiody" w drugim if-ie? void setup() { Serial.begin(9600); // Uruchomienie komunikacji pinMode(dioda,OUTPUT); // Konfiguracja wyjścia digitalWrite(dioda, LOW); //Dioda w stanie niskim } void loop() { if(Serial.available() > 0) { // Czy Arduino odebrało dane //Jeśli tak, odczytujemy je doznaku końca linii i zapisz w zmiennej odebraneDane odebraneDane = Serial.readStringUntil('\n'); if (odebraneDane == "dioda") { //Jeśli wpisane "dioda" digitalWrite(dioda, true); //Wlączamy diode boolean stanDiody = true; // Przypisujemy stan diody wysoki } if (stanDiody == true){ //Jeżeeli stan diody wysoki digitalWrite(dioda, false); //Wylączamy diode boolean stanDiody = false; // Przypisujemy stan diody niski } } } Chyba jestem najbardziej topornym uczniem. Jakoś nie potrafię przebrnąć przez ten 3 rozdział Czas na zajęcia mam dopiero po 21.00, siedzę do 1.30, wstaje o 5.00 i ni jak...
  5. #define dioda 8 String odebraneDane = ""; // Pusty ciąg odebranych danych boolean stanDiody = false; // Przypisanie zielonej stanu void setup() { Serial.begin(9600); // Uruchomienie komunikacji pinMode(dioda,OUTPUT); // Konfiguracja wyjścia digitalWrite(dioda, LOW); //Dioda w stanie niskim } void loop() { if(Serial.available() > 0) { // Czy Arduino odebrało dane //Jeśli tak, odczytujemy je doznaku końca linii i zapisz w zmiennej odebraneDane odebraneDane = Serial.readStringUntil('\n'); if (odebraneDane == "dioda") { //Jeśli wpisane "dioda" digitalWrite(dioda, true); //Wlączamy diode boolean stanDiody = true; // Przypisujemy stan diody wysoki } if (dioda == true){ //Jeżeeli stan diody wysoki digitalWrite(dioda, false); //Wylączamy diode boolean stanDiody = false; // Przypisujemy stan diody niski } } } Działa tylko pierwszy if ???
  6. Pierwsza linijke rozumiem że jak mam "#define zielona 8" to w dalszej cześci programu wpisując "zielona" program odczytuje to jak "pin 8" Drugą linijką " boolean zielona = false " w globalnych zmiennych deklarujemy stan "zielonej" (czyli pinu 8 ) jako niski... A czy ma to sens? Sam nie miałem pomysłu w jaki sposób wykorzystać zmienną " boolean" . Żadnych przykładów wyżej nie widziałem. Podejrzałem kod wstawiony przez kolegę " radekwrc", wydawało mi się że zaczynam coś z tego rozumieć i skoro u niego działa . . . Do czwartej części tego kursu chyba nie dotrę
  7. Witam. Pokażcie mi, proszę, błędy w poniższym kodzie #define zielona 8 String odebraneDane = ""; //Pusty ciąg odebranych dan boolean zielona = false void setup() { Serial.begin(9600); //Uruchomienie komunikacji pinMode(zielona, OUTPUT); //Konfiguracja wyjść digitalWrite(zielona, LOW); //Wyłączamy diody } void loop() { if(Serial.available() > 0) { //Czy Arduino odebrało dane //Jeśli tak, to odczytujemy je do znaku końca linii i zapisz w zmiennej odebraneDane odebraneDane = Serial.readStringUntil('\n'); if (odebraneDane == "zielona") { //Jeśli odebrano słowo "zielona" if (zielona == false) // Jeżeli zielona w stanie niskim digitalWrite(zielona, HIGH); //To włączamy diodę zieloną boolean zielona = true // Zapisujemy stan zielonej }else{ digitalWrite(zielona, LOW); // W przeciwnym wypadku wyłączamy diode boolean zielona = false // zapisujemy stan diody } } } Często przy moich próbach pojawia się ten sam błąd i podświetlona jedna z pierwszych linijek kodu. A jak usune spacje między "zelona" i "8" to już nie jest podświetlona. O co tu chodzi? Ten kod to miało być rozwiązanie zadania 2.5* na wzór kolegi " radekwrc" ( chyba właśnie w tym rozwiązaniu zobaczyłem jakieś światełko w tunelu) tylko że z jedną diodą.
  8. Bhoy67. Tak, masz racje. Działa źle przy wpisaniu "zielona". pomyliłem się.
  9. Dziękuję za odpowiedzi i zainteresowanie się tematem. Zanim przeczytałem komentarze rozwiązanie zadania 2.4 zarobiłem na zasadzie dodania jednej linijki kodu #define zielona 8 #define czerwona 9 String odebraneDane = ""; //Pusty ciąg odebranych danych void setup() { Serial.begin(9600); //Uruchomienie komunikacji pinMode(zielona, OUTPUT); //Konfiguracja wyjść pinMode(czerwona, OUTPUT); digitalWrite(zielona, LOW); //Wyłączamy diody digitalWrite(czerwona, LOW); } void loop() { if(Serial.available() > 0) { //Czy Arduino odebrało dane //Jeśli tak, to odczytujemy je do znaku końca linii i zapisz w zmiennej odebraneDane odebraneDane = Serial.readStringUntil('\n'); if (odebraneDane == "zielona") { //Jeśli odebrano słowo "zielona" digitalWrite(zielona, HIGH); //To włączamy diodę zieloną delay(1000); digitalWrite(zielona, LOW); } if (odebraneDane == "czerwona") { //Jeśli odebrano słowo "czerwona" digitalWrite(czerwona, HIGH); //To włączamy diodę czerwoną delay(1000); digitalWrite(czerwona, LOW); }else{ Serial.println("Zły wybór"); } } } No i wiadomo że to nie działało tak jak powinno, i od tego się zaczęło. W moim rozumieniu jeżeli stosujemy "else " to program w nim zawarty wykonuje się w wypadku, gdy powyższe warunki ( czyli 2 wcześniejsze "if-y") nie są spęłnione. Nie mogę zrozumieć dla czego przy wpisaniu "czerwona" , zapala się dioda , ale odrazy mam komunikat "Zły wybór". Do zadania 2.5* nawet zaczynałem pisać bo zupełna pustka w głowie jak się do tego zabrać nie ogarniając nawet prostszych rzeczy
  10. Witam. Już po raz kolejny czytam komentarze i patrze na rozwiązania innych i chyba zaczynam (żeby nie powiedzieć "załamywać") się mocno wątpić w swoje możliwości. Utknąłem w jednym miejscu i ani rusz. Przeczytałem od 1 do 3 części kursu programowania już chyba z 5 razy od deski do deski i nie rozumiem w jak innym udaje się wykorzystać ten" boolean" czy "&&" skoro nigdzie wcześniej nie było żadnego przykładu jak to zrobić. Nawet po przejrzeniu wstawionych kodów nie rozumiem na jakiej jakiej zasadzie to działa. Chyba że muszę wcześniej ukończyć jakiś inny kurs dla tych co z programowaniem nie spotykają się po raz pierwszy
  11. Mój próg to 14 ms. dioda zielona http://youtu.be/A44kZ1Exqng
  12. Witam. Czy jest jakaś możliwość kilka razy ukończyć Quiz? Za pierwszym razem nie poszło mi najlepiej, a teraz mam powiadomienie że już ukończyłem Quiz no i t.d. prubowałem się wylogować ale nie pomaga...
  13. Witam. Czy może mi ktoś powiedzieć dla czego w układach w tym dziale cały czas odbiornik ( silnik ) jest podłączany do emitera tranzystora a nie do kolektora, jak było to zalecane w dziale tranzystorów w pierwszej części kursu?
  14. Witam. Mam pytanie odnośnie podlączenia USB, na schemacie widać że wyjścia 2 i 3 są nie podłączone a na zdjeciu ułożonego układu są tam wpięte kondensatory ? Może warto zamieścić schemat samego gniazda USB (opis wyprowadzień )? U mnie po podlączeniu według schematu nie telefon się nie ładował! Dopiero po zwarciu pinów 2 i 3 ładowarka zadziałała...
  15. Witam. U mnie po złożeniu układu diody nie mrugają a świecą na stałe. wszystko sprawdziłem kilka razy i jest złożone poprawnie. Nie wiem gdzie szukać błędu? Dobra ,udało się. Miałem podobną sytuacje jak była opisywana wyżej - zaklejone styki przewodów!!!
×
×
  • Utwórz nowe...