- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- AMD Navi Radeon™ RX 5xxx sorozat
- AMD Ryzen 9 / 7 / 5 7***(X) "Zen 4" (AM5)
- ThinkPad (NEM IdeaPad)
- Hobby elektronika
- Soundbar, soundplate, hangprojektor
- Nem tetszik a Procon-SP-nek, hogy a Nintendo távolról kivégezheti a Switch 2-t
- Milyen TV-t vegyek?
- Amlogic S905, S912 processzoros készülékek
-
PROHARDVER!
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
Djstefan1848 #12634 üzenetére
Nem másra ráerőltetni akarom a véleményem, csak egy kis figyelem felhívás céljából elmondom:
Djstefan1848 kérdezi, de KFORboy problémájára is ez a legegyszerűbb megoldás:
Hogyan lehet arduinot programozni úgy, hogy 2, vagy több párhuzamos loop folyamatot futtasson egymástól függetlenül ?
Annak ellenére, hogy azt írod, hogy újonc vagy, nagyon jól látod a problémát. Több loop kellene párhuzamosan. Ez a párhuzamos szálak futtatása egymás mellett. Hogy van-e ez arduinoban? Erre még így nem lehet válaszolni, mert az arduino programozás is annyiféle, ahányféle a kontroller. A régi Atmel kontrollerekkel valószínűleg nehezebben oldható meg, de itt nem ér véget az arduino világ.
Kezdjük egyből az egyik felső szeletén:
Az ESP32 arduinojában van több lehetőség is, hogy hogyan lehet arduinot programozni úgy hogy 2, vagy több párhuzamos
"loop" folyamatot futtasson egymástól függetlenül.
Az egyik lehetőség a C++ párhuzamos szálai (thread). Ha nem várakoztatod őket egymásra, akkor nyugisan elvannak egymás mellett.
Vagy a freeRTOS taskjait használod. Ez rugalmasabb. Ezekben a delay nem igazi delay, hanem átadja a vezérlést más várakozó tasknak.
Az ESP8266-on is van valami, ami ennek a kisöccse, de már nem pontosan emlékszem, egy ideje már nem használom. Egymás mellett több PWM jellegű vezérlést kellett futtatnom, különböző, és folyamatosan változó, de elég hosszú, több szekundumos periódusidőkkel, de demo módon. Van egy lib, ami azt csinálja, hogy egy beállított idő elteltével megcsinál valamit. Előkotortam egy régi programot, ezt használja:
https://github.com/esp8266/Arduino/tree/master/libraries/Ticker
Azonkívül van ez a lehetőség is schedulerre:
https://github.com/anmaped/esp8266-scheduler
Ezt nem próbáltam. Ez elvileg Atmel procikon is biztosít
párhuzamos futtatást, nem tudom, van-e valaki, aki használta már. Persze a Ticker is az arduino schedulerét használja.
Lehet persze azt csinálni, hogy járogatunk körbe-körbe, és mindig megnézzük, hogy kell-e valakinek valamit csinálni.
Mint már többször írtam, én szinte csak ESP32-t használok. Egy UNO ezer Ft, egy ESP32 kétezer. Ennyit igazán megér a kényelem, hiszen ami
UNO-n megy, az ESP32-n is, de fordítva nem, tehát egyáltalán nincs szükségem UNO-ra. -
válasz
Djstefan1848 #12634 üzenetére
Több loop-ot futtatni nincs lehetőséged, viszont a problémát egyszerű megoldani. A servo motornál ugye sebességet nem tudsz megadni, csak fordulási szöget, a sebességet pedig az adja, hogy adott idő alatt mekkora szöget fordul. Mind 3 szervónál kiszámolod, hogy pl 10ms alatt hány fokot kell neki fordulni, és minden ciklusban annyit adsz hozzá/vonsz le a korábbi értékből. Legyen pl a leglassabb motor 1, akkor a másik kettő 1,5 és 2, akkor az első 1,8mp alatt ér egyik végállásból a másikba, a másik 1,35 és 0,9mp alatt.
Új hozzászólás Aktív témák
- BestBuy topik
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Kerékpárosok, bringások ide!
- A fociról könnyedén, egy baráti társaságban
- AMD Navi Radeon™ RX 5xxx sorozat
- AMD Ryzen 9 / 7 / 5 7***(X) "Zen 4" (AM5)
- Villanyszerelés
- ThinkPad (NEM IdeaPad)
- Luck Dragon: Asszociációs játék. :)
- További aktív témák...
- Eladó Logitech G735 gyári dobozban, kiváló állapotban!
- Eladó RODE NT-USB Mini gyári dobozban, megkímélt állapotban!
- Eladó ASUS ROG FUSION II 500 + ASUS ROG THRONE QI gyári dobozban, kifogástalan állapotban!
- Xiaomi 13T Pro 12/512GB Jótállás: 2026.10.24.-ig Állapot: 10/10 Független
- Gigabyte B550M K épített PC Ryzen 5 5600G 64GB RAM
- LG 48C2 - 48" OLED EVO - 4K 120Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDMI 2.1 - A9 Gen5 CPU
- ÁRGARANCIA! Épített KomPhone i5 14600KF 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- ÁRGARANCIA! Épített KomPhone i5 12400F 16/32/64GB RAM RTX 5060 8GB GAMER PC termékbeszámítással
- 118 - Lenovo Legion Pro 5 (16ARX8) - AMD Ryzen 9 7945HX, RTX 4070 (ELKELT)
- Telefon felvásárlás!! iPhone X/iPhone Xs/iPhone XR/iPhone Xs Max
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest