Skocz do zawartości

Kurs Arduino - #4 - Przetwornik ADC


Pomocna odpowiedź

Cesenu, program zatrzymuje się w tym miejscu pewnie:

 while (fotorezystor) {} 

Sprawdź, czy i kiedy wartość zmiennej fotorezystor równa się 0 - tylko wtedy program wyjdzie z tej pętli.

Link do komentarza
Share on other sites

Niby najprostsze zadanie, ale się namęczyłem strasznie. Mimo że i tak musiałem mocno poszukać w necie starałem się jak najbardziej trzymać materiału, który do tej pory był dostępny i nie zaglądałem do komentarzy choć było blisko rezygnacji 🙂. Udało się kod działa jak powinien choć pewnie to jakiś pokrak okrutny 🙂 Jeśli uda się samemu rozwiązać pozostałe zadania zobaczę dopiero jak to inni rozwiązali.

#define dioda 8                 //zmienne
int odczytanaWartosc = 0;
int prog = 0;
float napiecie = 0; 
int nr_petli = 0;
void setup() {
pinMode(dioda, OUTPUT);        //konfiguracja pinu
Serial.begin(9600);            // start transmisji
}

void loop() {

odczytanaWartosc = analogRead(A5);   //przypisanie pinów do zmiennych
prog = analogRead(A4);
napiecie = odczytanaWartosc *(5.0/1023.0);  //funkcja przeliczenie jednostek


 if(odczytanaWartosc < prog){         //jeśli wartość odczytu mniejsza od ustawionego progu
  digitalWrite(dioda, HIGH);          //zapal światło
  ++nr_petli;                         //licz pętle i dodawaj +1

      while(odczytanaWartosc < prog && nr_petli<2) { //jeśli warunek spełniony
  Serial.print(napiecie);                            // wyślij komunikat o wielkości napięcia
   Serial.println(" V");
     break;                      // przerwij pętle
      }
  }

   if(odczytanaWartosc > prog){  //jesli wartość odczytu> niż ustawiony próg
 digitalWrite(dioda, LOW);       //wyłącz diodę

   }
     delay (100);                 // czekaj 100ms

       if(odczytanaWartosc > prog){  //jeśli wartość odczytu > ustawiony próg
  nr_petli = 0;                      //wyzeruj licznik pętli

       }
}


Link do komentarza
Share on other sites

mechanik, su[per gratuluję postępów i życzę powodzenia w dalszej nauce 🙂 Popracuj jedynie troszkę nad formatowaniem, bo momentami coś się rozjeżdża.

Link do komentarza
Share on other sites

Zadanie 4.5, mam nadzieję że trochę lepiej sformatowane. W każdym bądz razie działa bardzo dobrze 🙂

int wartoscPot = 0;        //deklaracje zmiennych
int licznikProb = 4;
String podanaLiczba = "";  
int liczbaZm ;
int petla = 0;

void setup() {
                         //konfiguracja pinów:
pinMode(8, OUTPUT);       //zielona    
pinMode(9, OUTPUT);       //żółta
pinMode(10, OUTPUT);      //czerwona 
pinMode(5, INPUT_PULLUP); //przycisk
Serial.begin(9600);       //start transmisji 
}
void loop() 
{
   if(petla == 0)                 //warunek który powodyje wyswietlanie komunikatu tylko na poczatku gry
   {
     if (digitalRead(5) == HIGH){  //jesli przycisk nie jest wciśnięty a warunek = zero
       delay(50);
       Serial.println("Aby zaczac gre przekrec potencjometr i wcisnij przycisk"); //wyświetl
       while(digitalRead(5) == HIGH){}   //zatrzaśnij program
       Serial.println("PODAJ LICZBE !!!"); //wyświetl komunikat
       ++petla;  //dodaj 1 do warunku
     }

  while(petla == 1)  //kiedy warunek = 1
  {
   while(Serial.available() == 0) {} // i nie odebrano zadnych danych zatrzaśnij program

      if(Serial.available()>0){  //jeśli odebrano dane
       podanaLiczba = Serial.readStringUntil('\n');  //odczytaj i przypisz do zmiennej podanaLiczba
      }
         wartoscPot = analogRead(A5); //odczyt z pinu analogowego przypisz do zmiennej wartoscPot

      liczbaZm = podanaLiczba.toInt(); //zmiana rodzaju zmiennej z string na int
      if(wartoscPot - liczbaZm <=50 && wartoscPot - liczbaZm >=-50)  //warunek +/- 50
      {
         wartoscPot = liczbaZm; // przypisanie do wartosci na potencjometrze +/- 50
      }
      if(wartoscPot == liczbaZm) //jesli wartosc pot rowna podanej liczbie +/-50

      {
         digitalWrite(8, HIGH); //zapal zieloną
         digitalWrite(9, LOW);
         digitalWrite(10, LOW);
         Serial.println("!!!Gratulacje Wygrales!!!"); //wyslij komunikat o wyganej, czekaj dwie sekundy i zgaś zieloną
         delay(2000);                                     
         digitalWrite(8, LOW);
         digitalWrite(9, LOW);
         digitalWrite(10, LOW);
         petla = 0; //wyzeruj petle aby zacząc nowa gre
         licznikProb = 4; // ustaw licznik prob 
       }

       if(wartoscPot!= liczbaZm )  //jesli wartosc pot rózna od podanej
         {
            while(licznikProb != 0 && podanaLiczba.toInt() > 0) //jesli licznik prob rozny od zera i podana liczba została wpisana
            {
               --licznikProb; //odejmij jeden z licznika
               if(licznikProb > 0) //jesli licznik większy od zera
                 {
                   Serial.println("Blad!");  //wyswietl komunikat bledu i zapal zolta diode
                   delay(100);
                   digitalWrite(8, LOW);
                   digitalWrite(9, HIGH);
                   digitalWrite(10, LOW);
                   Serial.print( "Zostaly  ");  //wyswietl ilosc pozostalych prob
                   Serial.print(licznikProb);
                   Serial.println(" proby! Podaj kolejna liczbe:");
                   delay(2000);
                   digitalWrite(9, LOW);  //zgas zolta
                 }
               if(licznikProb == 0)  //jesli licznik rowny zero
               {
                 Serial.println("Skonczyly Ci sie proby!"); // wuswietl komunikat
               }
               podanaLiczba = "";  //wyczysc dane 
            }
         }
       if(licznikProb == 0) //jesli licznik rowny zero, zapal czerwona
       {
            digitalWrite(8, LOW);
            digitalWrite(9, LOW);
            digitalWrite(10, HIGH);
            Serial.println("GAME OVER!");  //wyswietl komunikat o zakonczeniu gry
            delay(4000);
            digitalWrite(10, LOW);   //zgas czerwona
            petla = 0; //wyzeruj petle
            licznikProb = 4; //ustaw licznik prob
            exit;
       }
  }
 }
}

Zadanie 4.6

Jako że to ostatnie zadanie z tej części, czas przestudiować i porównać Wasze sposoby, ja poradziłęm sobie tak:

int fotoL = 0;  //deklaracja zmiennych
int fotoP = 0;
#define czerwonaL 2  //przypisanie pinów
#define zoltaL 3
#define niebieska 4
#define zoltaP 5
#define czerwonaP 6


void setup() {
 Serial.begin(9600);  //włączenie transmisji
 pinMode(czerwonaL, OUTPUT);  //ustawienie pinów jako wyjscia
 pinMode(zoltaL, OUTPUT);
 pinMode(niebieska, OUTPUT);
 pinMode(zoltaP, OUTPUT);
 pinMode(czerwonaP, OUTPUT);
}

void loop() {
 fotoL = analogRead(A4);  //przypisanie zmiennych do pinów
 fotoP= analogRead(A5);
 Serial.print(fotoL);     // wyświetlenie wartosci podawanej przez fotorezystory
 Serial.print("       ");
 Serial.println(fotoP);
 delay(1000);

fotoL = map(fotoL, 0, 1000, 1, 4);  // przeskalowanie wskazań na cztery zakresy 
fotoP = map(fotoP, 0, 1000, 1, 4);

 if((fotoL == 1)==(fotoP == 1))  // jeśli nie oswietlamy zadnego z rezystorów, oba wskazania równe i w pierwszym zakresie
 {
   digitalWrite(niebieska, HIGH);  //zapal niebieską
   digitalWrite(zoltaL, LOW);
   digitalWrite(czerwonaL, LOW);
 }
 if(fotoP == 2)  //jesli wskazania w drugim zakresie:
 {
    digitalWrite(niebieska, LOW);
    digitalWrite(zoltaL, HIGH);  //zapal zółtą lewą
    digitalWrite(czerwonaL, LOW);
 }
  if(fotoP == 3)  //jesli wskazanie w trzecim:
  {
     digitalWrite(niebieska, LOW);
     digitalWrite(zoltaL, LOW);
     digitalWrite(czerwonaL, HIGH);  //zapal czerwona lewą
  }
     else   
     {

          if((fotoL == 1)==(fotoP == 1))  //JW
          {
              digitalWrite(niebieska, HIGH); //zapalona niebieska
              digitalWrite(zoltaP, LOW);
              digitalWrite(czerwonaP, LOW);
          }
          if(fotoL == 2)
          {
               digitalWrite(niebieska, LOW);  
               digitalWrite(zoltaP, HIGH);  //zapalona żółta prawa
               digitalWrite(czerwonaP, LOW);
          }
          if(fotoL == 3)
          {
               digitalWrite(niebieska, LOW);
               digitalWrite(zoltaP, LOW);
               digitalWrite(czerwonaP, HIGH);  //zapalona czerwona prawa
           }

      }
}
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

Witam. Dziękuję za wspaniały kurs! Szybkie pytanko: Dlaczego w przykładzie z fotorezystorem musimy stosować dzielnik napięcia? Nie wystarczyłoby podpiąć rezystora między +5V i A5? Wydaje mi się że przy zastosowaniu dzielnika "marnuje się" prąd płynąc z +5 do GND poprzez fotorezystor i rezystor... A i jeszcze takie pytanko, dlaczego akurat rezystor 1K w dzielniku do fotorezystora? Dziękuję i pozdrawiam!

Link do komentarza
Share on other sites

Szybkie pytanko pomocnicze: jaki prąd wpływa do wejścia A5?

I kolejne: jak chcesz mierzyć rezystancję fotoopornika nie przepuszczając przez niego prądu? Przecież spadek napięcia U=I*R a dla I=0 → U=0 niezależnie od wartości rezystancji. Z szeregowym fotoopornikiem do plusa wejście ADC zawsze pokaże 5V. Ten prąd dzielnika jest właśnie kosztem pomiaru rezystancji.

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

Dziękuję za odpowiedź. Wciąż nie mogę tego zrozumieć. Nie wątpię, że to ma sens, a zatem, że masz rację, tylko po prostu tego nie widzę.

Odpowiadając na pytanie pomocnicze jak ja to rozumiem: prąd, który wpływa do A5 jest minimalny (regulowany przez "miernik" znajdujący się w A5), ale na tyle duży, by zmierzyć napięcie panujące na A5 i porównać z napięciem referencyjnym +5V. Tu jest różnica napięć spowodowana umieszczonym między A5 a +5V opornikiem. Ten minimalny prąd o którym wspomniałem oraz ta różnica napięć pozwalają obliczyć opór z równania U=I*R.

Napisałeś, że z szeregowym fotoopornikiem do plusa wejście ADC zawsze pokaże 5V. Dlaczego na oporniku nie będzie spadku napięcia?

Link do komentarza
Share on other sites

No właśnie dlatego, że wejścia analogowe nie pobierają prądu. Nic do nich nie wpływa, bo ich rezystancja wejściowa jest rzędu 100MΩ a jeśli tak, to nie możesz metodą połączenia szeregowego zmierzyć rezystancji bo nie masz prądu. To tak jakbyś wziął woltomierz (który także z definicji nie pobiera prądu) i podłączył go przez (foto)opornik do baterii.

Musisz wymusić przepływ prądu i to robi np. dzielnik napięcia. Prąd płynie od plusa przez jeden rezystor a potem przez drugi (nigdzie nie skręcając ani się nie rozpływając na boki) i do masy. Taki sam prąd w obu rezystorach (przecież to układ szeregowy) powoduje podział napięcia proporcjonalny do stosunku rezystancji. Przetwornikiem A/C mierzysz jedno z tych napięć i znając ich sumę (to +5V) już wiesz jaki jest stosunek rezystancji. Tylko tyle.

Link do komentarza
Share on other sites

zadanie domowe 4.4 nie sprawiło większych problemów. Za to zadanie 4.5 walczyłem 3 dni no i musiałem zaciągnąć dwie podpowiedzi od innych użytkowników. w opisie programu ująłem ściągnięte rzeczy. Zadanie 4.6 będzie w trakcie tylko muszę dokupić czujniki.

zad. dom. 4.4

int odebranaWartosc = 0;
int regulacjaCujnika = 0;
boolean pokaz = false;  //stan cujnika
float napiecie = 0;      // zmiana wartosci czujnika na napiecie



void setup() {
   Serial.begin(9600);
   pinMode(7, OUTPUT);  //np. lampka ktora wlacza sie przyniskim oswietleniu
}



void loop() {
   odebranaWartosc = analogRead(A0);     //odczyt z czujnika swiatla
   regulacjaCujnika = analogRead(A5);    //odczyt z regulatora progu zaswiecenia
   napiecie = odebranaWartosc * (5.0/1023.0);      //przelicznik z wartosci na napiecie

   if (odebranaWartosc < regulacjaCujnika) {   // odczyt z ADC i Regulacji progu dzialania
       digitalWrite(7, HIGH);    //wlaczenie diody
       if (pokaz == false) {
       Serial.print(napiecie);   //wyswietlenie napiecia
       Serial.println("V");
       pokaz = true;              //zmiana stanu zapamietania
       }
   } else {
       digitalWrite(7, LOW);
       pokaz = false;
   }
}

zad. dom. 4.5

#define zielona 6
#define czerwona 7
#define zolta 8
#define zolta1 9
#define przycisk 10

String podajLiczbe = "";  //wpisywanie liczby
int ustawienie = 0;  //ustawienie potencjometra
byte licznik = 3;    //licznik zlych odpowiedzi
int podajLiczbe_int = 0;    //zamiana liczby String na int
boolean sprawdz = true;

void setup() {
 Serial.begin(9600);
 pinMode(zielona, OUTPUT);
 pinMode(czerwona, OUTPUT);
 pinMode(zolta, OUTPUT);
 pinMode(zolta1, OUTPUT);
 pinMode(przycisk, INPUT_PULLUP);
 Serial.println("Oto zasady gry. W pierwszej kolejnosci musisz ustawic potencjometr w dowolym miejscu.");
 Serial.println("Nastepnie naciskasz przycisk. Podajesz liczbe od 1 do 1021, mozesz pomylic sie o 50. Jezeli ");
 Serial.println("trafisz to wygrales. Pamietaj masz 3 szase. po kazdej zlej odpowiedzi zapala sie zolta dioda a po ");
 Serial.println("3 blednej odpowiedzi czerwona. Jak sie zapali czerwona to znaczy ze przegrales.");
 Serial.println("Zawsze mozesz zaczac od nowa naciskajc przycisk. Zasada jak na poczatku");
 Serial.println("POWODZENIA I MILEJ ZABAWY");
}

void loop() {
 if (Serial.available() > 0) {
   podajLiczbe = Serial.readStringUntil('\n');    //podanie liczby przez uzytkownika i zapisanie jej do pamieci
   podajLiczbe_int = podajLiczbe.toInt();      //przeksztalcenie liczby string na int
   Serial.println("twoja Liczba");            //wyswietlenie liczby wpisanej
   Serial.println(podajLiczbe_int);
 }
 ustawienie = analogRead(A0);              //zapis ustawienie potencjometra
 while (digitalRead(przycisk) == LOW) {    //weryfikacja czy przycisk zostal wcisniety
   Serial.println("Podaj liczbe");        //komunikat chyba nie trzeba tlumaczyc
   delay(2000);
   licznik = 3;          //licznik ilosci prob
   digitalWrite(zielona, LOW);        //stany diod
   digitalWrite(czerwona, LOW);
   digitalWrite(zolta, LOW);
   digitalWrite(zolta1, LOW);
   sprawdz = true;            //ustawienie sprawdzenia na true


 }

 if (ustawienie - 50 <= podajLiczbe_int == ustawienie + 50 >= podajLiczbe_int) { //zaciagniety parametr (za chiny nie wiedzialem jak to zrobic:-) jest to ustalenie czy liczba jest z zakresie +-50 z ustawionego )
   digitalWrite(zielona, HIGH);      //zachowanie przy podani prawidlowej odpowiedzi
   digitalWrite(zolta, LOW);
   digitalWrite(zolta1, LOW);
   Serial.println("brawo wygrales");
   Serial.print("liczba ustawiona to ");
   Serial.println(ustawienie);
   delay(2000);
   Serial.println("Ustaw potencjometr i nacisnij przycisk");
   podajLiczbe_int = 0;
   while (digitalRead(przycisk) == HIGH) {      //wejscie w petle aby zablokowac program do dalszej pracy czeka na wcisniecie przycisku

   }

 }

 else {
   sprawdz = false;
 }
 if (sprawdz == false && podajLiczbe_int > 0 && licznik == 3) { //bledna odpowiedz i zapalienie 1 diody pom oraz zmiejszenie licznika o 1
   digitalWrite(zolta, HIGH);
   Serial.println("Podana liczba jest zla");
   licznik = licznik - 1;
   Serial.print("posostaly ");
   Serial.print(licznik);
   Serial.println(" proby");
   podajLiczbe_int = 0;
 }
 if (sprawdz == false && podajLiczbe_int > 0 && licznik == 2) { //druga zla odpowiedz zmiejszenie licznika o 1 i zapalenie kolejniej zoltej diody
   digitalWrite(zolta1, HIGH);
   licznik = licznik - 1;
   Serial.print("Zle! Pozostala ");
   Serial.print(licznik);
   Serial.println(" proba");
   podajLiczbe_int = 0;
 }
 else if (sprawdz == false && podajLiczbe_int > 0 && licznik == 1) { //3 nieudana proba podania liczby i zarazem ostatnia
   digitalWrite(czerwona, HIGH);
   Serial.println("niestety nie udalo sie");
   Serial.println("Nacisnij przycisk aby zaczac jeszcze raz");
   podajLiczbe_int = 0;
   while (digitalRead(przycisk) == HIGH) {    //wejscie w petle wymuszajaca aby nie mozna bylo juz nic zrobic i oczekiwanie na wcisniecie przycisku

   }

 }


}
Link do komentarza
Share on other sites

Sefir, cześć, dzięki za miłe słowa 🙂

W tym zadaniu chodziło o zbudowania wskaźnika z 5 LEDów obok siebie. Jeśli oświetlany jest tylko jeden fotorezystor, to powinna świecić się tylko skrajna dioda, jeśli jesteśmy troszkę bliżej środka, to 4 itd. Powinien wyjść tego wskaźnik, który pokazuje, gdzie jest źródło światła.

Link do komentarza
Share on other sites

Witam, mój pierwszy post, kurs mi się bardzo podoba, ciesze się, że zacząłem gdy już wyszły wszystkie części.

Mam pytanie do 4.5. Gdy wklepię parę liczb np 5, 332, 132, program zapamiętuje te liczby i gdy wcisnę przycisk uruchamiający grę, odrazu je pobiera i używa jako wybranych do grania. Co zrobić by pobierał je dopiero po wciśnieciu przycisku ? Jakieś czyszczenie cache klawiatury ? A może coś w kodzie nie tak ?

#define zielona 10
#define zolta 8 
#define czerwona 9
//
#define potencjometr A5
#define button 3

int OdczytP = 0; // Odczyt z potencjometru
String LiczbaString = ""; // Liczba jako string odebrana z konsoli
int OtrzymanaLiczba = 0; // Liczba po konwersji string na int
byte licznik = 0; // licznik prób
boolean wygrana = 0; // używana jako boolean  czy gra trwa czy się skończyła tura  

void setup() {
 pinMode(zielona,OUTPUT);
 pinMode(zolta, OUTPUT);
 pinMode(czerwona, OUTPUT);
 pinMode(button, INPUT_PULLUP);
 Serial.begin(9600);
 // put your setup code here, to run once:

}

void loop() {

Serial.println(" \n Grasz? Wcisnij przycisk i podaj liczbe na jakiej wg Ciebie stanal potencjometr ");
wygrana = 0;
delay(50);
while( digitalRead(button) == HIGH) {
 delay(50);  // tych delay nie jestem pewien gdzie i kiedy wstawiać by nie było zakłoceń czy wielokrotnych wciśnieć
 }
     if (digitalRead(button) == LOW) { // Jesli wcisnieto przycisk, zaczynamy gre

       digitalWrite(zielona, LOW);
       digitalWrite(czerwona, LOW); // wygaszenie diod, dla nastepnych tur
       digitalWrite(zolta, LOW);

       delay(150);
       while ( wygrana == 0) {  // Dopoki gracz nie wygra lub nie skoncza mu sie proby
         Serial.print("Podaj liczbe "); //  bez nowej lini
         OdczytP = analogRead(potencjometr); // Odczyt potencjometr

         while(Serial.available() <= 0) {}  // oczekiwanie na konsole, zatrzymanie do czasu podania liczby

         if (Serial.available() > 0) {
           LiczbaString = "";  // zeruje na wszelki wypadek
           LiczbaString = Serial.readStringUntil('\n'); // odczyt liczby z konsoli
           OtrzymanaLiczba = LiczbaString.toInt();  // konwersja na liczbe int
           Serial.println(OtrzymanaLiczba);  // Wyswietlenie podanej liczby  obbok słów "Podaj liczbe"

         if ((OdczytP - 50 < OtrzymanaLiczba) && ( OtrzymanaLiczba < OdczytP + 50)) { // Sprawdzenie czy liczba się miesci w zakresie
           if (digitalRead(zolta) == HIGH) { // jesli zotla dioda sie swieci np dwa razy bledne zgadniecie

             digitalWrite(zolta,LOW);
             delay(200);
             digitalWrite(zolta, HIGH);  // wodotryski
             delay(200);
             digitalWrite(zolta, LOW);
             delay(200);
           }
           digitalWrite(zielona,HIGH); //  Podswietlenie wygrywajacej diody

           Serial.println(" Wygrałeś");
           licznik = 0;  // zerowanie licznika prob
           wygrana = 1; //  boolean, koniec tury

   }
         else {
           digitalWrite(zielona,LOW);
           digitalWrite(czerwona,LOW);
           licznik = licznik + 1;

           if (licznik == 1) {
             Serial.println("Masz jeszcze 2 proby");
             digitalWrite(zolta, HIGH); // pierwszy blad, zapala sie żółta dioda
           }
           if (licznik == 2) {
             Serial.println("Masz jeszcze jedna probe");
             digitalWrite(zolta,LOW);
             delay(100);
             digitalWrite(zolta, HIGH); // drugi błąd, migniecie dioda
           }
           if (licznik == 3) {

             digitalWrite(zolta,LOW);
             delay(200);
             digitalWrite(zolta, HIGH);  // wodotryski
             delay(200);
             digitalWrite(zolta, LOW);
             delay(200);

             digitalWrite(zielona,LOW);
             digitalWrite(czerwona,HIGH); // przegrana, wygaszenie diod, zapalanie czerwonej

             Serial.print("Przegrales, liczba to ");
             Serial.println(OdczytP);  // Wyswietlenie wyniku
             wygrana = 1; // boolean, koniec tury
             licznik = 0;
     }

   }

 }
}
}


 // put your main code here, to run repeatedly:

}
Link do komentarza
Share on other sites

Artur, witam na forum 🙂 Zacznijmy od początku.

Czego oczekujesz po działaniu poniższego fragmentu?

 while( digitalRead(button) == HIGH) { 
 delay(50);  // tych delay nie jestem pewien gdzie i kiedy wstawiać by nie było zakłoceń czy wielokrotnych wciśnieć 
 } 

Daj znać, jaki jest Twój zamiar, to ruszymy dalej 🙂

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • 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.