Fórum témák

» Több friss téma
Fórum » Arduino
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Lapozás: OK   865 / 872
(#) kobold333 válasza Kera_Will hozzászólására (») Nov 7, 2025 /
 
Megígértem, h megosztom a többiekkel is az írásodat. Köszönöm. Itt lesz a leírásod:

Ha USB-s soros (serial) porton keresztül szeretnél Putty-val csatlakozni egy eszközhöz, akkor az eszközkezelőben (Device Manager) látható COM port számot kell megadni. Itt a pontos lépések a helyes beállításhoz:
? 1. USB-soros adapter csatlakoztatása
• Csatlakoztasd a számítógéphez az USB-soros adaptert.
• Ha szükséges, a megfelelő driver is automatikusan települ (pl. Prolific, FTDI, CH340 típusú chipek esetén).
? 2. COM port szám megnézése az Eszközkezelőben
• Nyisd meg az Eszközkezelőt (jobb klikk a „Start” gombra → Eszközkezelő).
• Keresd meg:
„Portok (COM és LPT)” menüpont alatt egy ilyesmit kell látnod:
• USB Serial Port (COM3)
• vagy Prolific USB-to-Serial Comm Port (COM4)
(Ez jelöli, hogy az adapter melyik COM porton van.)
? Jegyezd meg a COM számot (pl. COM3, COM4 stb.)
? 3. Putty beállítása
• Indítsd el a Putty programot.
• A bal oldali menüből válaszd a Session részt.
• Jobboldalon:
• Connection type: jelöld be a Serial opciót.
• Serial line: ide írd be a COM port nevét, pl. COM4
• Speed (baud): ez a kommunikációs sebesség, amit az eszköz igényel, pl. 9600, 115200, stb. (Ez az eszköztől függ — nézd meg a dokumentációját!)
⚙️ 4. További soros port beállítások (ha kell)
A Putty bal menüjében:
• Menj a Connection → Serial részhez.
• Itt beállíthatod:
• Data bits (általában 8)
• Stop bits (általában 1)
• Parity (általában None)
• Flow control (általában None vagy XON/XOFF, eszköztől függ)
✅ 5. Csatlakozás
Kattints a „Open” gombra. Ha minden jól van beállítva, meg kell jelennie a soros kommunikációs felületnek.
Ha valami nem működik:
• Ellenőrizd, hogy valóban a jó COM portot adtad-e meg.
• Próbáld újracsatlakoztatni az adaptert.
• Nézd meg, hogy más program nem használja-e a COM portot.

Sok sikert!
(#) Kera_Will válasza kobold333 hozzászólására (») Nov 9, 2025 /
 
Kösszi!
Amire nem vàlaszoltál, form feed , lapdobás funkciót escape12 szekvenciát sikerült-e használnod?
Ok forrást át kell nézzed, küldtem 1 2 minta kódot is ... azokon láttad-e a változásokat?
(#) meslac hozzászólása Nov 13, 2025 /
 

Redőnyvezérlés

Redőnyvezérlést akarok készíteni esp 8266-al. A vezérlés már működik, csak bizonyos idő után a relét ki kellene kapcsolni, de az nem akar sikerülni. Ahhoz kérnék segítséget.
  1. unsigned long elozoIdo = 0;
  2. long keslIdo = 3000;


  1. void loop() {


  1. if (header.indexOf("GET /5/fel") >= 0) {
  2.               Serial.println("GPIO 5 fel");
  3.               output5State = "felhuzott";
  4.               digitalWrite(output5, LOW);
  5.               digitalWrite(output6, HIGH );//output6 bekapcsolás
  6.  
  7.               unsigned long jelenlegiIdo = millis();
  8.               if (jelenlegiIdo - elozoIdo >= keslIdo); // Ellenőrzés, hogy eltelt legalább a késleltetési idő.
  9.                {
  10.                 digitalWrite(output6, LOW );           //output6 kikapcsolása
  11.               }              
  12.               elozoIdo = jelenlegiIdo; //(az időbélyeg frissítése)
  13.  
  14.             } else if (header.indexOf("GET /5/le") >= 0) {


Ebben a programrészben kérném a segítséget, ezt kellene működőképessé tenni.
Köszönettel.
(#) meslac válasza (Felhasználó 32034) hozzászólására (») Nov 13, 2025 /
 
A program működik, csak a relé nem kapcsol ki. Két relé van az egyik a fel, a másik a le működtetést végzi. Az a probléma hogy, az aktuális relé mindig bekapcsolva marad, ami felesleges. Azt kellene megoldani, hogy egy idő után kikapcsolja.
(#) lalca válasza meslac hozzászólására (») Nov 14, 2025 / 1
 
Ezért kell jól átgondolni,mit akarok,hogy kell működnie a programnak.Érdemes egy flowchartot rajzolni,
vagy fejben jól átgondolni. Szóban:

loop
FEL? ha igen R2 off, R1 on, oldmillis = millis, IDŐ on
LE? ha igen R1 off, R2 on, oldmillis = millis, IDŐ on
IDŐ on? ha igen lejárt? (millis - oldmillis > 3000?) ha igen R1 off,R2 off,IDŐ off

A lényeg, az időt a loopban kell vizsgálni. Én még beraknék egy STOP-ot is,hogy bármikor meg lehessen állítani.

STOP? ha igen R1 off, R2 off, IDŐ off
(#) lalca válasza meslac hozzászólására (») Nov 14, 2025 /
 
Közben eszembe jutott egy hiba

FEL & IDŐ off és LE & IDŐ off - ot kell vizsgálni.

A programodban a hiba, nem
if (jelenlegiIdo - elozoIdo >= keslIdo) hanem while (jelenlegiIdo - elozoIdo < keslIdo) {} csak így beragad a
program 3 másodpercre és nem lehet STOP.
(#) meslac válasza (Felhasználó 32034) hozzászólására (») Nov 14, 2025 /
 
Köszönöm a segítséget. Az még a hiba, hogy az "elozoIdo-t" mindig nullának veszi és így mindig teljesül a feltétel. Azt kellene megoldani, ha
  1. digitalWrite(output6, HIGH);
teljesül, akkor az "elozoIdo" vegye fel és rögzítse pillanatnyi időt és ezzel számoljon.
(#) meslac válasza lalca hozzászólására (») Nov 14, 2025 /
 
Köszönöm a segítséget. Sajnos az nem szerencsés, ha leállítjuk a programot, mert az a 3 mp idő lényegesen több fog lenni. Akkor egyszerűen delay-el meglehetne oldani. Egyébként stop van bent, hogy útközben leállítható legyen. Arra kellene megoldás, ha elindul a redőny attól az időtől számítva bizonyos idő után leállítsa. A hiba az "elozoIdo-ben" van azt mindig 0-nak veszi, aminek az elindulás idejét kellene felvenni. Sajnos ezt nem tudom megoldani, mert nem nagyon értek hozzá.
(#) mnyugger válasza meslac hozzászólására (») Nov 14, 2025 /
 
Ne direktben add - HIGH. Tedd változóba.
(#) Panhard válasza meslac hozzászólására (») Nov 14, 2025 /
 
Szia. Megmutatom az én redőnyvezérlésem részletét, ami a mozgatást csinálja. Nálam tudja a vezérlés a teljes mozgatási időt és azt felosztja százalékosra. Bármikor meg is lehet állítani, és a redőnyt deaktiválni is lehet, ha mondjuk meghibásodik. A mozgat függvénynek a redőny száma kell és a százalékos érték és kiszámolja, hogy hány ms-ig kell mozognia.

  1. void loop(){
  2.  
  3.  
  4.  
  5.   unsigned long temp_millis = millis();
  6.  
  7.  for(unsigned int i=0;i<darab;i++){
  8.     if((start_ido_mozgatas[i]<temp_millis && stop_ido_mozgatas[i]>temp_millis && mozgatas_irany_fel[i])){irany_fel[i]=true;}else{irany_fel[i]=false;}
  9.     if((start_ido_mozgatas[i]<temp_millis && stop_ido_mozgatas[i]>temp_millis && mozgatas_irany_le[i])){irany_le[i]=true;}else{irany_le[i]=false;}
  10.     if(irany_fel[i] || irany_le[i]){mozgasban[i] = true;}else{mozgasban[i] = false;}
  11.   }
  12.  
  13.   if(irany_fel[0] && !irany_le[0]){digitalWrite(r00_fel,LOW);}else{digitalWrite(r00_fel,HIGH);}
  14.   if(irany_le[0] && !irany_fel[0]){digitalWrite(r00_le,LOW);}else{digitalWrite(r00_le,HIGH);}
  15.   if(irany_fel[1] && !irany_le[1]){digitalWrite(r01_fel,LOW);}else{digitalWrite(r01_fel,HIGH);}
  16.   if(irany_le[1] && !irany_fel[1]){digitalWrite(r01_le,LOW);}else{digitalWrite(r01_le,HIGH);}
  17.   if(irany_fel[2] && !irany_le[2]){digitalWrite(r02_fel,LOW);}else{digitalWrite(r02_fel,HIGH);}
  18.   if(irany_le[2] && !irany_fel[2]){digitalWrite(r02_le,LOW);}else{digitalWrite(r02_le,HIGH);}
  19.  
  20.  
  21.  
  22.  
  23. }
  24. //*****************************************************************************
  25. void mozgat(unsigned int rsz,unsigned int pos){
  26.  
  27.    if(mozgasban[rsz]){valasz = "{\"valasz\":[{\"szoveg\":\"Mar mozgasban van!\"}]}"; return;}
  28.    if(!aktiv[rsz]){valasz = "{\"valasz\":[{\"szoveg\":\"Redony uzemen kivul!\"}]}"; return;}
  29.    
  30.    unsigned int kulonbseg=0;
  31.    unsigned long mozgasi_ido=0;
  32.    start_ido_mozgatas[rsz] = millis();
  33.    unsigned int pluszido=0;
  34.  
  35.     if(pos<0){pos=0;}
  36.  
  37.     if(pos>100){pos=100;}
  38.  
  39.     if(pos==0||pos==100){pluszido=plusz_ido;}else{pluszido=0;}
  40.  
  41.      unsigned int posms = map(pos,0,100,0,teljes_mozgasi_ido[rsz]);
  42.      
  43.  
  44.     if(posms<posinms[rsz]-100){                 //lefelé
  45.         kulonbseg = posinms[rsz] - posms;      
  46.         mozgatas_irany_le[rsz] = true;      
  47.       }else{
  48.         mozgatas_irany_le[rsz] = false;      
  49.         }
  50.        
  51.     if(posms>posinms[rsz]+100){                 //felfelé
  52.         kulonbseg = posms - posinms[rsz];    
  53.         mozgatas_irany_fel[rsz] = true;      
  54.       }else{
  55.         mozgatas_irany_fel[rsz] = false;      
  56.         }
  57.  
  58.     if(!mozgatas_irany_fel[rsz] && !mozgatas_irany_le[rsz]){kulonbseg = 0;}
  59.  
  60.     stop_ido_mozgatas[rsz] = start_ido_mozgatas[rsz] + kulonbseg + pluszido;
  61.  
  62.  
  63.  
  64.           valasz="{\"valasz\":[";
  65.           valasz+="{\"szoveg\":";          
  66.           valasz+="\"OK\"";      
  67.           valasz+=",\"redonyszam\":";          
  68.           valasz+=rsz;      
  69.           valasz+=",\"kellpos\":";          
  70.           valasz+=posms;    
  71.           valasz+=",\"kulonbseg\":";
  72.           valasz+=kulonbseg;    
  73.           valasz+=",\"irany\":";
  74.       if(mozgatas_irany_fel[rsz]){valasz += "\"fel\"";}  
  75.       else if(mozgatas_irany_le[rsz]){valasz += "\"le\"";}
  76.       else{valasz += "\"nincs\"";}      
  77.           valasz += "}]}";
  78.  
  79. }
  80. //*****************************************************************************
  81. void veszstop(unsigned int sz){
  82.  
  83.     start_ido_mozgatas[sz] = millis();
  84.     stop_ido_mozgatas[sz] = millis();
  85.  
  86.   valasz = "{\"valasz\":[{\"szoveg\":\"Redony megallitva.\"}]}";
  87.  
  88. }
  89. //*****************************************************************************
  90. void service(unsigned int rsz,unsigned int sta){
  91.  
  92.   if(sta>1){sta=1;}
  93.  
  94.     aktiv[rsz]=sta;
  95.     EEPROM.write(rsz,sta);
  96.  
  97.     valasz = "{\"valasz\":[{\"szoveg\":\"Redony ";
  98.     valasz += rsz;
  99.     if(sta){valasz += " aktivalva!\"}]}";}else{valasz += " deaktivalva!\"}]}";}  
  100.  
  101. }
  102. //*****************************************************************************
(#) meslac válasza (Felhasználó 32034) hozzászólására (») Nov 14, 2025 /
 
Igen nagyon hasonló.
(#) meslac válasza Panhard hozzászólására (») Nov 14, 2025 /
 
Köszönöm! Én nem akarom nagyon bonyolítani, az enyémen van egy gomb redőnyönként ami fel-le irányt vezérli és egy amivel meglehet állítani. Ez működik is, csak az aktuális relé meghúzva marad, ezt kellene egy idő után automatikusan kikapcsolni.
(#) Panhard válasza meslac hozzászólására (») Nov 15, 2025 /
 
Leegyszerüsítve így néz ki. Ha érkezik a GET kérés, akkor beírja az aktuális idő+10mp-et az ido_fel vagy ido_le változóba. Ez a rész csak egyszer fut le. Ezt lejjebb kiértékeli. Ha kisebb a millis() mint az ido_fel vagy ido_le változóban lévő érték, akkor mozog a redőny le vagy fel. Ha már valamelyik irányba mozog a redőny, akkor a kérésnél nem fogja indítani a másik irányt. Erre van a redony_fel és redony_le változó. Érdemes hardveresen is a reléknél reteszelni a két irányt.

  1. void loop(){
  2.  
  3.  
  4.         if (header.indexOf("GET /5/fel") >= 0 && !redony_le) {
  5.             ido_fel = millis() + 10000;
  6.         }
  7.        
  8.         if (header.indexOf("GET /5/le") >= 0 && !redony_fel) {
  9.             ido_le = millis() + 10000;
  10.         }
  11.        
  12.         if (header.indexOf("GET /5/stop") >= 0) {
  13.             ido_fel = millis();
  14.             ido_le = millis();
  15.         }
  16.        
  17.        
  18.         if(ido_fel>millis()){
  19.                 redony_fel = true;
  20.                 digitalWrite(output5, HIGH);
  21.             }else{
  22.                 redony_fel = false;
  23.                 digitalWrite(output5, LOW);
  24.         }
  25.        
  26.         if(ido_le>millis()){
  27.                 redony_le = true;
  28.                 digitalWrite(output6, HIGH);
  29.             }else{
  30.                 redony_le = false;
  31.                 digitalWrite(output6, LOW);
  32.         }
  33.                        
  34.                        
  35. }
(#) Panhard válasza (Felhasználó 32034) hozzászólására (») Nov 15, 2025 /
 
Nincs azzal semmi gond, ha egy feltétel folyamatosan lefut. (a debugtól eltekintve, mert az ideiglenes) "Az állapotokat is az indexof... sorokban kellene bebillenteni" miért is?
Mutass egy működő példát, a szószaporítás helyett, de ne a ChatGPT-t másolgasd ide, mert azzal csak a fórumot terheled, de haszna nem sok van.
(#) Panhard válasza (Felhasználó 32034) hozzászólására (») Nov 15, 2025 /
 
Parancsolj. Így már lehet debugolni minden műveletet, és a kimenetek is csak egyszer vannak írva.

  1. void loop(){
  2.  
  3.  
  4.         if (header.indexOf("GET /5/fel") >= 0 && !redony_le) {
  5.                 ido_fel = millis() + 10000;
  6.                 Serial.println("GET keres erkezett: fel");
  7.         }
  8.        
  9.         if (header.indexOf("GET /5/le") >= 0 && !redony_fel) {
  10.                 ido_le = millis() + 10000;
  11.                 Serial.println("GET keres erkezett: le");
  12.         }
  13.        
  14.         if (header.indexOf("GET /5/stop") >= 0) {
  15.                 ido_fel = millis();
  16.                 ido_le = millis();
  17.                 Serial.println("GET keres erkezett: stop");
  18.         }
  19.        
  20.        
  21.        
  22.         if(ido_fel>millis() && !redony_fel){
  23.                 redony_fel = true;
  24.                 digitalWrite(output5, HIGH);
  25.                 Serial.println("Redony start fel");
  26.         }
  27.        
  28.         if(ido_fel<millis() && redony_fel){
  29.                 redony_fel = false;
  30.                 digitalWrite(output5, LOW);
  31.                 Serial.println("Redony stop fel");
  32.         }
  33.        
  34.         if(ido_le>millis() && !redony_le){
  35.                 redony_le = true;
  36.                 digitalWrite(output5, HIGH);
  37.                 Serial.println("Redony start le");
  38.         }
  39.        
  40.         if(ido_le<millis() && redony_le){
  41.                 redony_le = false;
  42.                 digitalWrite(output5, LOW);
  43.                 Serial.println("Redony stop le");
  44.         }
  45.  
  46.        
  47. }
A hozzászólás módosítva: Nov 15, 2025
(#) Panhard válasza (Felhasználó 32034) hozzászólására (») Nov 15, 2025 /
 
Ezt gondold át mégegyszer. Mi történik akkor, ha a millis már a vége előtt 4000ms-nál tart, és te pont akkor hozzáadsz 10000-ms-t és elmented az ido_fel változóba.
(#) Panhard válasza Panhard hozzászólására (») Nov 15, 2025 /
 
Mivel a millis unsigned long és az ido_fel is unsigned long tipusú, ezért az ido_fel új értéke 6000 lesz, és a millis is 10000-el később 6000 lesz. Nem történik semmi, működni fog rendesen.
(#) KoblogPerGyok válasza meslac hozzászólására (») Nov 15, 2025 /
 
Szia!

Én ennél a problémánál inkább timer-eket használnék. Megfelelő ponton indít és a láb magas másik esetben meg leállít és láb alacsony. Túlcsordulási eseményre meg leállít ÉS a láb nullára.
Természetesen 10s nagy, nem tudom ennél a cpu-nál mi lehet és mi nem, de megpróbálnám úgy megadni az előosztókat satöbbi és az induláskor a timer értékét annyira állítanám be, hogy 10s-nél legyen a megszakítás kérelem.
(#) KoblogPerGyok válasza KoblogPerGyok hozzászólására (») Nov 15, 2025 /
 
Vagy ehhez hasonlóan, ami elvileg nem foglalja annyira a cpu-t, mert az kell a wifi-hez:

  1. #include <Ticker.h>
  2.  
  3. Ticker timer;
  4.  
  5. void myFunction() {
  6.   Serial.println("10 másodperc eltelt");
  7. }
  8.  
  9. void setup() {
  10.   Serial.begin(115200);
  11.   timer.attach(10, myFunction);  // 10 másodpercenként fut
  12. }
  13.  
  14. void loop() {
  15. }
A hozzászólás módosítva: Nov 15, 2025
(#) KoblogPerGyok válasza KoblogPerGyok hozzászólására (») Nov 15, 2025 /
 
Közben megnéztem ilyesmi is lehet:

  1. #include <Ticker.h>
  2.  
  3. Ticker timer;
  4.  
  5. bool timerActive = false; // fut-e éppen?
  6.  
  7. void myFunction() {
  8.   Serial.println("10 másodperc eltelt");
  9. }
  10.  
  11. void setup() {
  12.   Serial.begin(115200);
  13.  
  14.   // Példának 3 GPIO bemenet
  15.   pinMode(0, INPUT_PULLUP); // Start feltétel
  16.   pinMode(2, INPUT_PULLUP); // Stop feltétel
  17.   pinMode(3, INPUT_PULLUP); // Reset feltétel (ha van)
  18. }
  19.  
  20. void loop() {
  21.  
  22.   // ----- Indítás feltételre -----
  23.   if (!digitalRead(0) && !timerActive) {   // gomb = LOW
  24.     timer.attach(10, myFunction);          // Indít
  25.     timerActive = true;
  26.     Serial.println("TIMER ELINDÍTVA");
  27.     delay(300);  // kontakt zaj ellen
  28.   }
  29.  
  30.   // ----- Leállítás -----
  31.   if (!digitalRead(2) && timerActive) {
  32.     timer.detach();                        // Leállít
  33.     timerActive = false;
  34.     Serial.println("TIMER LEÁLLÍTVA");
  35.     delay(300);
  36.   }
  37.  
  38.   // ----- Újraindítás (= nullázás) -----
  39.   if (!digitalRead(3)) {
  40.     timer.detach();                        // Leállít
  41.     timer.attach(10, myFunction);          // Újraindít (nullázza az időt)
  42.     timerActive = true;
  43.     Serial.println("TIMER RESET + INDÍTÁS");
  44.     delay(300);
  45.   }
  46. }


Azaz tetszőlegesen ki/be lehet kapcsolni eseményekhez kötve. A void myFunction() {}-ben lehetne a relék kikapcsolása.
A fő programban pedig a bekapcsolásuk és a ticker indítása.
Ez egy könnyítés csak, mert a ticker meg lett írva máshol, annyit tudok, hogy timer-t használ, és jelentősen tehermentesíti a cpu-t. Még a milis()-nél is jobban, ha minden igaz.
(#) mnyugger válasza mnyugger hozzászólására (») Nov 15, 2025 /
 
sikerült
(#) proli007 válasza mnyugger hozzászólására (») Nov 15, 2025 /
 
(#) Panhard válasza (Felhasználó 32034) hozzászólására (») Nov 15, 2025 / 1
 
Igazad van. Tényleg lehet gond belőle, bár nagyon kicsi rá az esély.

  1. void loop(){
  2.  
  3.  
  4.         if (header.indexOf("GET /5/fel") >= 0 && !redony_le) {
  5.                 redony_fel = true;
  6.                 startido = millis();
  7.                 digitalWrite(output5, HIGH);
  8.                 Serial.print("Redony start fel");
  9.         }
  10.        
  11.         if (header.indexOf("GET /5/le") >= 0 && !redony_fel) {
  12.                 redony_le = true;
  13.                 startido = millis();
  14.                 digitalWrite(output6, HIGH);
  15.                 Serial.print("Redony start le");
  16.         }
  17.        
  18.         if (header.indexOf("GET /5/stop") >= 0) {
  19.                 digitalWrite(output5, LOW);
  20.                 digitalWrite(output6, LOW);
  21.                 Serial.print("GET keres erkezett: stop");
  22.         }
  23.        
  24.        
  25.        
  26.         if(millis() - startido > 10000){
  27.                
  28.                 if(redony_fel){
  29.                         redony_fel = false;
  30.                         digitalWrite(output5, LOW);
  31.                         Serial.print("Redony stop fel");
  32.                 }
  33.                
  34.                 if(redony_le){
  35.                         redony_le = false;
  36.                         digitalWrite(output6, LOW);
  37.                         Serial.print("Redony stop le");
  38.                 }
  39.                
  40.         }
  41.        
  42.        
  43. }
(#) mnyugger válasza proli007 hozzászólására (») Nov 16, 2025 /
 
A másik elterül.
(#) meslac válasza Panhard hozzászólására (») Nov 16, 2025 /
 
Köszönöm a segítséget! A módosításodat bemásoltam, lefut, de még élesben nem próbáltam ki.
(#) ink hozzászólása Feb 1, 2026 /
 

RFID több tag

Hello! A csatolt képen látható projekthez hogyan tudok még további 3 kártyát hozzáadni?

rfid.tag.png
    
(#) ink válasza (Felhasználó 32034) hozzászólására (») Feb 2, 2026 /
 
A programban hova illesszem be?
(#) ink válasza (Felhasználó 32034) hozzászólására (») Feb 3, 2026 / 1
 
Köszönöm, működik!
(#) Zoli_bácsi hozzászólása Feb 9, 2026 /
 

Program kód védelem

Sziasztok!

Ha írok egy programot, amit hex formában töltök fel az arduinora (mega 2560-ra), akkor hogyan tudom ki olvasás ellen levédeni a programot? Flowcode-ban nem találok fuse biteket.

Köszönöm.
(#) Régi motoros válasza Zoli_bácsi hozzászólására (») Feb 9, 2026 / 1
 
Próbáld ki az AVRDUDESS programot. Van benne FUSE és LOCK bit kalkulátor is.
Ez ugyan csak a GUI, de az oldalon ott van maga az AVRDUDE program is ami kell hozzá.
Csak aztán nehogy kizárd magad, arra vigyázz.
A hozzászólás módosítva: Feb 9, 2026
Következő: »»   865 / 872
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem