Hírek:

Fontos tudnivalók a migrációval kapcsolatban, kérlek olvasd el:

A régi fórumról áthozott hozzászólásoknál a felhasználó neve adatvédelmi megfontolásokból véletlenszerűen generált értékekre lett  lecserélve. Ez akkor tud a valódi értékre visszaállni, ha az adott felhasználó a régi fórumon nyilatkozik, hogy beleegyezik az adatainak az új fórumra továbbításához, majd ezután itt a régi felhasználónevével és email címével regisztrál.
8~20 óra között, 1~30 percen belül megtörténik a jóváhagyás, 30 percenként ellenőrizd email fiókodat (SPAM-ot is) mindenképp kapsz mail-t, a sikeres regisztrácioról, vagy a hibáról és, hogy mi a teendőd.
Nézd meg  "A régi fórumról, az új fórumra költözés útmutatót."
A régi fórumon használt email címmel de más felhasználói azonosítóval érkező regisztrációs kérelmek törlésre kerűlnek.

Main Menu

Arduino

Indította gaben, 2025 február 03, 18:09

Előző téma - Következő téma

000000000

senki?[#nemtudom][#nemtudom][#nemtudom][#nemtudom]

GG

Lehet hogy ezt keresed? [#zavart2]


if (Serial) {
  // led aktiv
} else {
  // led passziv
}


azon belul nezheted meg a

 if (Serial.available ()) // erkezett adat

fuggvenyt is.

000000000

Ezt pobálgatom hadweres serialon de nem reagál..

int port=0;
void setup() {
 
  pinMode(LED_BUILTIN, OUTPUT);
  port=1;
  Serial.begin(9600);
 
}
 
void loop(){
   
if (!Serial) {
    port=0;
  }
  if (port==0)
 
  {
 
  digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);                       // wait for a second
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);
  }
}

000000000

Serial.available is jó lene de ez mért nem veszi észre amit beirok Serial.write ("ok") modal csak akor veszi ha terminálba "ok" és entert nyomok!?
Serial.find probálnám de csak amit beirok termial/entez azt keresi meg Serial.write karakteres beirásra nem reagál..[#wilting]

mjfpgx8v0

Szerintem próbáld ki, hogy a LED_BUILTIN értékét definiálod, vagy csak beírsz helyette szimplán 13-at. Olvastam valahol, hogy nem működik az a konstans valamiért....

s7manbs8

Egyáltalán mit akarsz csináltatni a programmal
? Mi lenne a feladata ?

000000000

Sorosport státusz ellenörzés szeretnék csinálni de az istené nem jön össze ifSerial erre lene álitolag de gyakorlatba semmi nem hozz eredményt!
Aztán gondoltam mást ha benyitom a sorost akor küldene egy karaktert egy serial.write de a Serial.available nem veszi észre amit serial.write elküldöt csak ha én manuálisan beirom terminálba és enter nyomok(ez nem jó automatizálni kell) az elküldöt karaktert figyelem serial.find feltételesel..

s7manbs8

A terminálban nem lehet beállítani, hogy ne enterre menjen a karakter, hanem rögtön ?

000000000

Sorosport státusz ellenörzés mit is értek serial.begin ha nyitom ott valami történik pl start bit vagy más jelenség lehetne figyelni e csak egy pl gondolat vagy port nyitási idöt?[#wilting]
Sorosport státusz: open port>>>led_on
                  close port>>>led_off

Jozs

Bocs hogy belekotyogok, de biztos vagy benne, hogy a soros portnak van "nyitott" állapota ? Van két madzag, és ha a végükön a protokollok egyeznek, akkor az egyiken jön az adat ha jön, a másikon pedig megy ha megy. A Serial.Available jelzi ha jött valami.

000000000

nem tudok ilyenröl de csak egy ötket volt de jolene az ardu küldene ilyenkor a Serial.available felé ha nyitva a port...

Jozs

A start bit nem a port nyitását jelzi, hanem egy byte ill. karakter érkezésének a kezdetét.

000000000

mért fontos ez van egy eszköz (ardu projekt) amit terminálrol progtamozható linux win android ákár csak egy terminál kell hozzá...

000000000

csak csomagnál start1...adat8..stop1 ha joltudom?

Jozs

Nem, minden egyes karakternél. A protokollnál lehet/kell megadni, mennyi legyen az adatbitek száma, a paritásbit páros vagy páratlanra egészítse ki ( even/odd ) és hogy hány stop bit legyen. Pl. 7E1 azt jelenti, hogy 7 adatbit, páros paritás, 1 db stop bit. De start bit mindig van. És minden egyes karakternél.