-
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
-
cog777
őstag
válasz
Istv@n #22799 üzenetére
"A freertos takokból meg lehet egyáltalán hívni egy "sima" függvényt?"
Hello, persze. Szerintem probald ki elorol felepiteni a programot, nem mindent atmasolva. Sok a hibalehetoseg es igy nehez segiteni.A setup-ban latom a Wifi csatlakozast, az jol mukodik, ido beallitas stb.
Az MQTT, adatbazis kapcsolodas, szenzorok kezelesehez hozzarendelhetsz egy-egy orokke mukodo FreeRTOS feladatot. Ezekbol nem kell kilepni, mert futhatnak folyamatosan.Itt van egy FreeRTOS pelda, probald eloszor ki, ket feladatot futtatva:
Ha ez mukodik, akkor elkezdheted megirni a programodat, pl MQTT. A kliensnek itt a library-ja, letoltod es megnezed az mqtt_basic peldat.
Latod hogy meg kell hivni a loop-ot:if (!client.connected()) {
reconnect();
}
client.loop();Szoval az egesz MQTT kezelest beleteheted egy FreeRTOS task-ba. Tehat:
void mqtt_task(void *param)
{
EthernetClient ethClient;
PubSubClient client(ethClient);
while(1)
{
if (!client.connected()) {
reconnect();
}
client.loop();
}
}Szenzor feladatnak is keszithetsz sajat feladatot, es elindithatod akar a masik CPU magra is teheted.
Az adatokat megoszthatod atomic-al a szenzor es az MQTT feladatok kozott:
std::atomic<float> homerseklet;
Komolyabb kommunikaciot a feladatok kozott queue-val szoktak (xQueueCreate-ra keress ra).
Tovabba erdemes a feladatokat kulon .cpp es .h fajlokba tenni, igy szetvalasztva logikailag a programot.
Most ennyi idom van, esetleg irhatnal par szot mire kell az MQTT es az adatbazis?
FreeRTOS programozasnal figyelj a stack beallitasra. Erdemes lepesrol lepesre felepiteni es tesztelni a programot mert nagyon nehez megtalalni a hibat ha egybol mindent beleteszel. Asszem debuggolni lehet ha eredeti Arduino ESP32-t vasarolsz.
Új hozzászólás Aktív témák
- ASUS TUF F15 gamer laptop, i5-11400H, RTX 3050 Ti, makulátlan állapotban+ajándék
- SONY NEX-5N (SONY E bajonett)
- Samsung 870 QVO 8TB - keveset használt, 2026-ig garanciális - 100/100
- Garanciális // Lenovo Legion 5 // i9-14900HX // 32GB RAM // 1TB SSD // RTX 4070 // 240Hz
- Acer Predator Helios 16 // i7-13700HX // 32GB RAM // 1TB SSD // RTX 4070 // 240Hz
- 13-14" Új és használt laptopok , üzletitől a gamerig , kedvező áron. Garanciával !
- 123 - Lenovo Legion Pro 5 (16ARX8) - AMD Ryzen 7 7745HX, RTX 4070 - 4 év garancia
- Bowers & Wilkins Px7 S2 fejhallgatók
- ÁRGARANCIA! Épített KomPhone i5 13400F 16/32/64GB RAM RTX 3060 12GB GAMER PC termékbeszámítással
- GYÖNYÖRŰ iPhone 13 mini 128GB Red -1 ÉV GARANCIA - Kártyafüggetlen, MS3325
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest