Skocz do zawartości

Karliko

Użytkownicy
  • Zawartość

    23
  • Rejestracja

  • Ostatnio

Reputacja

0 Neutralna

O Karliko

  • Ranga
    2/10

Ostatnio na profilu byli

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

  1. Hej, mam pytanko. Serwo zawsze na początku ustawia się do pozycji około 90 stopni, czy to można jakoś zmienić? By np zaczynał od 0.
  2. Karliko

    Kurs Arduino - #4 - Przetwornik ADC

    @Treker Wszystko teraz działa, dziękuję a mógłbyś napisać co robią pozostałe opcje? Bo na stronie Arduino nic nie znalazłem.
  3. Karliko

    Kurs Arduino - #4 - Przetwornik ADC

    @Treker Mam takie okienko z wyborem: -brak zakończenia linii -nowa linia -- to mam ustawione w domyśle -powrót karetki -zarówno NL jak i CR
  4. Karliko

    Problemy z VSC PlatfomIO

    A masz jakiś pomysł co się stało że nie mogę nic wysyłać przez terminal?
  5. Karliko

    Kurs Arduino - #4 - Przetwornik ADC

    @Treker Nie za bardzo wiem o co chodzi, nic nie dopisuje a powinienem dopisać np "2\n"?
  6. Karliko

    Problemy z VSC PlatfomIO

    Na Arduino IDE wszytko działa. Dopiero w trakcie resetowania arduino z przycisku można wgrać inny program w Arduino IDE nie są potrzebne takie rzeczy. Takie rzeczy dzieją się tylko jeśli mam program co wysyła do terminalu jakieś liczby czy litery
  7. Karliko

    Kurs Arduino - #4 - Przetwornik ADC

    Cześć, potrzebuję pomocy bo nie wiem jak zatrzymać program do czasu aż wejdą jakieś dane i chodzi o to by zatrzymywał przy każdym przejściu przez pętle void loop(). To mój kod do zad 4.5 (jeszcze niedokończony). int podanaWartosc = 2; int odczytanaWartosc = 0; void setup() { pinMode(4, INPUT_PULLUP); pinMode(5,OUTPUT); pinMode(6,OUTPUT); pinMode(7,OUTPUT); Serial.begin(9600); } void loop() { Serial.println("Proszę przekręcić potencjmoter i podać liczbę od 1 do 5"); while(Serial.available() == 0) {} Serial.println(podanaWartosc); podanaWartosc = Serial.parseInt(); Serial.println(podanaWartosc); while(digitalRead(4) == HIGH) { odczytanaWartosc = analogRead(A5); odczytanaWartosc = map(odczytanaWartosc, 0, 1023, 1, 5); } if(podanaWartosc == odczytanaWartosc) { digitalWrite(5,HIGH); Serial.println("Gratuluję!"); } } po pierwszym wpisaniu liczby wszystko jest okej ale potem jak wraca program do początku to przeskakuje pętle while(Serial.available() ==0) {}.
  8. Hej, mam oto taki program int zielona = 1; int zolta = 2; int czerwona = 3; String odebraneDane = ""; void setup() { // put your setup code here, to run once: pinMode(5,OUTPUT); Serial.begin(9600); } void loop() { // put your main code here, to run repeatedly: if(Serial.available() > 0) { odebraneDane = Serial.readStringUntil('\n'); if(odebraneDane == "zielony") { if(zielona == 1) { digitalWrite(5, HIGH); zielona = zielona + 1; }else if(zielona == 2) { digitalWrite(5, LOW); zielona = zielona - 1; } } if(odebraneDane == "zolty") { if(zolta == 2) { digitalWrite(6, HIGH); zolta = zolta + 1; }else if(zolta == 3) { digitalWrite(6, LOW); zolta = zolta - 1; } } if(odebraneDane == "czerwony") { if(czerwona == 3) { digitalWrite(7, HIGH); czerwona = czerwona + 1; }else if(czerwona == 4) { digitalWrite(7, LOW); czerwona = czerwona - 1; } } } } Jego zadaniem jest włączać i wyłączać diody jednak i działa jednak nie mogę wyjaśnić tego że dioda zielona świeci mocno, czerwona średnio a żółta tak słabo. Ktoś może wytłumaczyć dlaczego tak się stało? Wyjaśniło się, nie ustawiłem pinów jako wyjście ale i tak to jest ciekawe że i tak prąd płynie pomimo, że nie ustawiłem pinów.
  9. Hej, mam problem z dodatkiem platformIO który nie działa poprawnie. Mogę odbierać przez terminal informacje ale już nic nie mogę wysyłać, nawet pola do wpisywania fraz nie ma, tylko jest jakiś czarny prostokącik. . Dodatkowo wyświetla się ciągle błąd w output Error: no handler found po jakimkolwiek wgranym programie. Jeszcze dodatkowo co jakiś czas przy próbie wgraniu innego programu wyskakuje takie coś: could not open port u'COM5': could not open port u'COM5': WindowsError(5, 'Odmowa dost\xeapu.') The terminal process terminated with exit code: 1 Terminal will be reused by tasks, press any key to close it. Oto mój program: #include <Arduino.h> String odebraneDane = ""; void setup() { pinMode(5,OUTPUT); pinMode(6, OUTPUT); pinMode(7, OUTPUT); Serial.begin(9600); } void loop() { Serial.println("t"); if (Serial.available() > 0) { odebraneDane = Serial.readStringUntil('\n'); if(odebraneDane == "zielony") { digitalWrite(5, HIGH); delay(100); } if(odebraneDane == "żółty") { digitalWrite(6, HIGH); delay(100); } if(odebraneDane == "czerwony") { digitalWrite(7, HIGH); delay(100); } } } Programuje na Arduino UNO
  10. Karliko

    Nauka programowania Arduino

    Dobrze, to jeszcze raz spróbuję podejść do tego momentu gdzie utknąłem i jak dłużej mi to zejdzie to zapytam na forum. Była to ta gra z wpisaniem poprawnej wartości rezystancji, 4 cześć kursu. Strasznie się zniechęciłem bo wgl nie wiedziałem o istnieniu tabeli kodów ASCII i długo mi zajęło jej odkrycie ale w końcu po wywoływaniu tego co wpisałem stała się jasność. Dziękuję wszystkim za rady!
  11. Karliko

    Nauka programowania Arduino

    Właśnie korzystałem z kursu ale jakoś utknąłem w połowie bo miałem problemy z moimi programami bo nie chciały działać. Przez kurs c/c++ chciałem bardziej poznać logikę bo myślę prze przez nią mam błędy w kodzie i właśnie nie wiedziałem na który język się bardziej nastawić
  12. Hej, chciałbym się nauczyć programować arduino i mam pytanie. Jak się do tego najlepiej zabrać, oglądać kursy nauki języka C, C++ czy jakiegoś innego? Mam też jeszcze pytanie czy jest jakaś gdzieś baza komend do arduino z wytłumaczeniem co robią ale po polsku.
  13. Niestety, żadna z twoich możliwości rozwiązania problemu nie pomogła. To ogółem wina kompilatora i będzie potrzebna aktualizacja?
  14. Hej, po próbie kompilacji tego z kursu: #include <LiquidCrystal.h> //Dołączenie bilbioteki LiquidCrystal lcd(2, 3, 4, 5, 6, 7); //Informacja o podłączeniu nowego wyświetlacza void setup() { lcd.begin(16, 2); //Deklaracja typu lcd.setCursor(0, 0); //Ustawienie kursora lcd.print("Kurs Arduino"); //Wyświetlenie tekstu lcd.setCursor(0, 1); //Ustawienie kursora lcd.print("Na Forbocie!"); //Wyświetlenie tekstu lcd.cursor(); //Włącznie kursora } void loop() { } wyświetla mi się taki błąd: Arduino:1.8.8 (Windows Store 1.8.19.0) (Windows 10), Płytka:"Arduino/Genuino Uno" C:\Users\Karol\Documents\Arduino\sketch_dec15a\sketch_dec15a.ino: In function '_GLOBAL__sub_I_lcd': C:\Users\Karol\Documents\Arduino\sketch_dec15a\sketch_dec15a.ino:14:1: internal compiler error: Segmentation fault } ^ Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. lto-wrapper.exe: fatal error: C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.19.0_x86__mdqgnx93n4wtt\hardware\tools\avr/bin/avr-gcc returned 1 exit status compilation terminated. c:/program files/windowsapps/arduinollc.arduinoide_1.8.19.0_x86__mdqgnx93n4wtt/hardware/tools/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/bin/ld.exe: error: lto-wrapper failed collect2.exe: error: ld returned 1 exit status exit status 1 Błąd kompilacji dla płytki Arduino/Genuino Uno. Ten raport powinien zawierać więcej informacji jeśli w File -> Preferencje zostanie włączona opcja "Pokaż szczegółowe informacje podczas kompilacji" Ktoś może wiedzieć o co chodzi?
  15. Karliko

    Kurs Arduino - #4 - Przetwornik ADC

    Witam, dlaczego w woltomierzu na początku programu "odczytanaWartosc" przypisana jest wartość 0? Dlaczego akurat 0 i w jakim to jest celu w kontekście pomiaru sygnału napięcia? int odczytanaWartosc = 0;//Odczytana wartość z ADC float napiecie = 0;//Wartość przeliczona na napięcie w V void setup() { Serial.begin(9600);//Uruchomienie komunikacji przez USART } void loop() { odczytanaWartosc = analogRead(A5);//Odczytujemy wartość napięcia napiecie = odczytanaWartosc * (5.0/1024.0); //Przeliczenie wartości na napięcie Serial.println(napiecie);//Wysyłamy zmierzone napięcie delay(200);//Czekamy, aby wygodniej odczytywać wyniki }
×