-
Fototrend
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
Janos250
őstag
válasz
Blasius
#19716
üzenetére
Én nem látok benne hibát. Viszont most döbbentem rá, hogy én a Serial.begin után mindig teszek egy delay(1000)-t, de már fogalmam sincs, miért.
Valami itt van róla:
https://forum.arduino.cc/t/delay-for-serial-print/954782
Nem látok benne kivetni valót, én legfeljebb az if-eket Case-el oldottam volna meg, mert az jobban áttekinthető, de ugyanarra fordítódik. -
válasz
Blasius
#19716
üzenetére
Nem tákolt ez attól, hogy tettél bele késleltetést, miért lenne? Figyelembe kell venni a hardverek sajátosságait. Ha jól értelmezem, a GPS modul az adatot adagokban küldi az UNO-nak. Az UNO több sort vár a feldolgozáshoz, de a GPS egy sor után nem kezdi meg a következő adag küldését, hanem vár valamennyit (nyilván műszaki okból, nem kitolásból
). Neked ezt ki kell várni a fogadó oldalon. -
Janos250
őstag
válasz
Blasius
#19708
üzenetére
Bocs, nem tudom milyen kontrollert használsz. ESP32-n lefordul.
A volatile azt jelenti, hogy ha egy változót nemrégiben használt a processzor, akkor annak a tartalma a cache-ben van még, és ha nincs volatile, akkor onnan kivehető. Ha van volatile előtte, akkor minden egyes használatkor az eredeti helyőről kell beolvasni. Ez akkor létszükséglet, ha "valaki más " (pl. másik szál, interrupt) is változtat a változó értékén. Ilyenkor lehet figyelni pl. arra, hogy ha egy vektorba rakjuk az értékeket, és a foglaltságot növeljük, akkor mi történik, ha a kettő között kéri a program (pl. interrupttal) valamelyik értéket. A legősibb, hogy addig letiltjuk az interruptot, a korszerűbb meg a mutex, hogy nem engedjük, hogy másik szál használja.
Amit linkeltél, ott nem látok bajt a sorrendiséggel, vagy párhuzamos hozzáféréssel. -
Janos250
őstag
-
Janos250
őstag
válasz
Blasius
#19703
üzenetére
Ennyiből nem látom át, de nem az a baj ugye, hogy "máshol is elérhetõ kell hogy legyen:", nincs volatile, hogy ne optimalizáljon a fordító?
volatile char receivedChars[numChars];
Továbbá - nem tudom mitől receive, tehát valahonnan jön - ahhoz is kellhet idő. Ehhez viszont Aryes javaslata a megoldás
Új hozzászólás Aktív témák
- ARCTIC Liquid Freezer III 360 A-RGB Processzor vízhűtő
- Phanteks Eclipse P600S Black Számítógép ház
- Corsair 32GB KIT DDR5 6000MHz CL30 Vengeance RGB Grey AMD EXPO / XMP
- Iphone 16 PRO 256GB Titanium BLACK - Garanciás - Akku: 94%
- Esport Gaming PC (Intel i5-9400F, 32GB RAM, RTX 2060, 500GB SSD) Eredeti Windows11 Pro
- Gamer PC-Számítógép! Csere-Beszámítás! I7 6700K / GTX 1660TI / 16GB / 128GB SSD + 1TB HDD
- Apple iPhone 13 / 128GB / Kártyafüggetlen / 12Hó Garancia / Akku: 100%
- BESZÁMÍTÁS! Sony PlayStation 5 825GB SSD lemezes konzol garanciával hibátlan működéssel
- Azonnali készpénzes AMD Ryzen 1xxx 2xxx 3xxx 5xxx processzor felvásárlás személyesen / csomagküldés
- HIBÁTLAN iPhone 13 Pro 256GB Sierra Blue 1ÉV GARANCIA -Kártyafüggetlen, MS3744, 100% Akkumulátor
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi
). Neked ezt ki kell várni a fogadó oldalon.
ekkold
