-
Mobilarena
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
-
Teasüti
nagyúr
válasz
Janos250 #10900 üzenetére
Ez is egy full-fledge firmware, ami rohadt hosszú.
Ráadásul C-ben írták Atmel328-ra.
Nekem kb annyit kéne látnom, hogy hogy írják meg azt az egy ciklust, ami beolvassa a Serial stream-et és kiválogatja a switch case-be a szavakat. Úgy 5-10 sallangmentes sorról lehet szó. Viszont Marlin-ban is ez szanaszét van dobálva. Illetve a parser lib ott is túl van bonyolítva. Mire abból kihámozom a lényeget...Jelenleg ennyim van:
for (byte i = 0; i <= messageSize; i++) {
if (isAlpha(Message[i]) || isPunct(Message[i])) {
switch (Message[i]) {
case 'R':
parameter = atoi(& Message[i + 1]);Ez elég arra, hogy végig iterálja a stream-et és ahol betűt talál, ott veszi a betű után lévő paramétert. Majd iterálja tovább, amíg a végére nem ér.
Ez így gyönyörűen beolvas egy "R255G255B255\n" üzenetet így egyben vagy elválasztókkal, mindegy.
Viszont nincs annyi betű az ábécében, amennyi nekem kéne. Így kénytelen vagyok átállni vmi G-kódos rendszerre, ahol nem egy szót kell csak értelmezni hanem mondatokat. Tehát mondjuk bejön, hogy "G01", akkor várható, hogy lesz még utána két-három paraméter is: "G01 X0 Y0\n".
És ezt kellene valahogy megoldanom, hogy a parancsszóhoz kapcsoljam a paramétereket is.
Ehhez kell vmi look-ahead parsing algoritmus, ami pár sor lehet, de még nem láttam rá tömör példát.
És ha lehet, akkor nem szeretném órákig bogarászni egy hatalmas forráskódban.
Már rászántam egy kis időt a Marlin elemzésére, és nem jutottam vele messzire.
Ekkora kódban még a kereső se működik, mert annyi találat van mint a qrva élet...
Új hozzászólás Aktív témák
- Luck Dragon: Asszociációs játék. :)
- Facebook és Messenger
- Mazda topik
- Macron betiltatná az EU-ban a közösségi médiát a 15 év alattiaknak
- Székesfehérvár és környéke adok-veszek-beszélgetek
- TP-LINK routerek
- Samsung Galaxy S21 FE 5G - utóirat
- Ford topik
- NBA és kosárlabda topic
- Nyaralás topik
- További aktív témák...
- AKCIÓ! PC Specialist Recoil VIII 17 notebook - i9 14900HX 16GB RAM 2TB SSD RTX 4060 8GB WIN11
- Samsung Odyssey G6 S27BG650EU - 27" QHD 2K 240Hz Ivelt - Gaming monitor - 1,5 év Gyári garancia
- Apple iPhone 14 256GB/ 86% Akkuval / 12 hónap jótállással!
- BESZÁMÍTÁS! Gigabyte H610M i5 13400F 32GB DDR4 512GB SSD RTX 3070 8GB Zalman Z1 Plus Enermax 750W
- LG 45GS95QE - 45" Ívelt OLED / 2K WQHD / 240Hz 0.03ms / NVIDIA G-Sync / FreeSync Premium / HDMI 2.1
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: CAMERA-PRO Hungary Kft
Város: Budapest