Skocz do zawartości

Vova

Użytkownicy
  • Zawartość

    59
  • Rejestracja

  • Ostatnio

Reputacja

20 Dobra

O Vova

  • Ranga
    4/10

Ostatnio na profilu byli

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

  1. @GieneqNie bardzo rozumiem gdzie w temacie z drugiego kursu elektroniki szukać fragmentu o ulepszaniu kodu
  2. Witam szanowne grono. Po dłuższej przerwie moje rozwiązanie zadania 8.1 void setup() { pinMode(6, OUTPUT); // Sygnal PWM 1 silnika pinMode(3, OUTPUT); //Sygnal PWM 2 silnika digitalWrite(6, HIGH); //Ustawiamy na stale stan wysoki na sterowaniu predkosciami digitalWrite(3, HIGH); pinMode(7, OUTPUT); //Sygnaly sterujace kirunkiem obotow 1 silnika pinMode(8, OUTPUT); pinMode(2, OUTPUT); //Sygnaly sterujace kirunkiem 2 silnika pinMode(4, OUTPUT); } void loop() { digitalWrite(7, LOW); //Silnik 1 i 2 obroty w lewo przez 2 sek digitalWrite(2, LOW); digitalWrite(8, HIGH);
  3. @pawelmb Dziękuję za za odpowiedź. Faktycznie proba = 0; była w If(proba == 3) tylko tyle razy przerabiałem ten kod że w końcu go zabrakło. No własnie o to mi chodzi że w tym if-ie wykonuje się też poprzedni else, czyli : a według mnie nie powinien . Może nie do końca umiem przekazać o co mi chodzi...
  4. 4.5 Działa, ale nie zupełnie tak jak bym chciał, i skończyły mi się pomysły jak to rozwiązać. Chodzi o moment włączania diody czerwonej - jednocześnie wykonuje mi się cały kod do włączania diody żółtej. Próbowałem wpisać warunek do diody żółtej else if (proba < 3), co miało zapobiec wykonywaniu dane go kodu, gdy wykorzystano więcej niż 2 "szanse" ale nic to nie dało #define zielona 2 #define zolta 3 #define czerwona 4 #define swicz 7 int proba = 0; // Szansa String liczbaWpisana = ""; // Komunikat w terminalu int los = 0; // Wartosc odczytana z potencjometru int liczba = 0; void
  5. Niestety już go nie mam. Może faktycznie coś mi się tam popsuło w momencie kopiowania kodu
  6. Witam. Dziala u ciebie ten kod? Jak wgrałem go do Arduino to dzilła tylko do momentu narastania wypełnienie a z powrotem już nie
  7. Bardzo dziękuję za szybką odpowiedź a przede wszystkim wyrozumiałość. Już w trakcie pisania poprzedniej wiadomości pomyślałem o tym żeby najpierw przeczytać wszystkie części kursu od deski do deski a później wrócić do zadań domowych. Zobaczę czy się nie po gubię od większej ilości informacji na raz...
  8. Długi czas nie zaglądałem tu po ostatnich próbach zrobienia zadania domowego z czujnikiem odległości za pomocą tablic, Wtedy zabrakło mi informacji o tablicach w kursie. Dostałem linki do artykułów w Google ale i tak nie dałem sobie rade z wykorzystaniem w.w tablic w praktyce. Zniechęciłem się do nauki programowania na jakiś czas, bo stwierdziłem że jeżeli kurs jest też dla tych, co nie mieli wcześnie żadnej styczności z programowaniem a w zadaniach domowych jednak jest wymagana już jakaś znajomość podstaw programowania, bo na przykład jakaś tam "instrukcja" czy "funkcja" czy coś innego n
  9. Co do numeracji w tablicach od zera to wiem (czytałem to co było polecane). U mnie wiersz 0 to wszystkie diody zgaszone ( czyli miał być wykorzystany zamiast default) . A pierwszy warunek- jedna doda zapalona ( czyli wiersz numer 1 z tablicy)... Zdania z podręcznika raczej też mi nie pomogą, przeczytałem je w podręczniku kilkanaście razy. Raczej liczyłem na to, że ktoś w wolnej chwili i z dobrej woli napisze ze dwie linijki kodu, których mi brakuje do pełni szczęścia. Wtedy mógłbym je wykorzystać do wykonania zadania i przeanalizować na swój sposób i czegoś się nauczyć, bo chyba po
  10. #define trigPin 12 #define echoPin 11 #define ledPin2 2 #define ledPin3 3 #define ledPin4 4 #define ledPin5 5 #define ledPin6 6 #define ledPin7 7 int wynik;// Zmienna liczbowa globalna void setup() { Serial.begin (9600);//Komunikacja z monitorem szeregowym pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); pinMode(ledPin2, OUTPUT);//Ustawianie pinow jako wyjscia na diody pinMode(ledPin3, OUTPUT); pinMode(ledPin4, OUTPUT); pinMode(ledPin5, OUTPUT); pinMode(ledPin6, OUTPUT); pinMode(ledPin7, OUTPUT); digitalWrite(ledPin2, LOW);//Diody poczatkowo zgaszone digitalWrite(led
  11. @Gieneq Przeczytałem część #5 Kursu II od deski do deski i jest tam tylko wspomniane że, cytuje: "W kursie Arduino, do tablic jeszcze wrócimy - więc, jeśli ktoś ich nie zna, to nie musi się teraz niczego obawiać", ale tak i nie zostało to wyjaśnione tylko jest ponownie wykorzystane w dalszej części kursu. Czyli pozostaje ten poradnik z GOOGLE...
  12. @Gieneq Chętnie się zmierzę z postawionym zadaniem, tylko nie wiem czy "tablice" już były omawiane wcześniej i coś mi umknęło. Może podrzucisz jakiegoś linka, gdzie można zaczerpnąć trochę informacji o wykorzystaniu "tablic". . .
  13. Dziękuje za nakierowanie. Oto końcowa wersja kodu. Działa jak należy digitalWrite(trigPin, LOW);//Pomiar odleglosci delayMicroseconds(2); digitalWrite(trigPin, HIGH); delayMicroseconds(10); digitalWrite(trigPin, LOW); czas = pulseIn(echoPin, HIGH); dystans = czas / 58; wynik = map(dystans, 1, 30, 1, 6);//Podzial odleglosci na 6 odcinkow(warunkow) i zapisujemy do nowej zmiennej Serial.println(dystans);//Drukuj wynik pomiaru w monitorze szeregowym switch (wynik) {//Sprawdzamy warunki i zapalamy / gasimy odpowiednie diody case 6: digitalWrite(ledPin2, HIG
  14. @Gieneq Wszystko fajnie, tylko w jaki sposób się tego używa? A tym czasem może ktoś żuci okiem na moje nie działające bazgroły i naprowadzi na drogą właściwą . Przeglądałem rozwiązania kolegów (niektóre kody kopiowałem i próbowałem uruchomić, ale niektóre nawet się nie kompilują...) #define trigPin 12 #define echoPin 11 int wynik;// Zmienna liczbowa globalna void setup() { Serial.begin (9600);//Komunikacja z monitorem szeregowym pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); pinMode(2, OUTPUT);//Ustawianie pinow jako wyjscia na diody pinMode(3, OUTPUT);
  15. @Treker Nie próbowałem, bo nawet nie mam pomysłu jak można było by wykorzystać diodę do sprawdzenia działania programu obliczenia pola. Myślałem że w samym kodzie będzie widać jakiś błąd. Dobra, udało się rozwiązać problem. trzeba było trochę zmodyfikować kod i teraz działa poprawnie String rozmiarStrony1 = "";//Deklaracja tekstowych zmiennych String rozmiarStrony2 = ""; void setup() { Serial.begin(9600); //Nawiązanie komunikacji przez UART } void loop() { if (Serial.available() > 0) {// Gdy dane zostały odczytane while (Serial.available() <= 0) {} // Poczekaj na wpr
×
×
  • 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.