Upevnenie problémov sériovej latencie Arduino

author
1 minute, 15 seconds Read

[Paul] napísal, aby nám povedal o niektorých zaujímavých problémoch latencie Arduino pomohol klinec a opravil na Arduino.

Zdá sa, že [Michu] mal nejaké problémy s riadením svojho projektu Rainbowduino, ktoré sme vystupovali skôr v tomto roku, a nemohol celkom zistiť, prečo sa vyskytli také obrovské oneskorenia pri odosielaní a prijímaní údajov.

Hľadanie online pre odpovede sa veľmi málo, a pretože [Michu] používal spracovanie, pár vyvinul súbor testov, aby videli, aký druh latencie bol zavedený Java. Patition Arduino UNO a ARDUINO od roku 2009 proti teenssy 2.0, testy merajú latenciu natívnych transferov údajov oproti transferom uľahčeným Java cez RXTX knižnicu, ktorú používa na sériovú komunikáciu.

Výsledky boli dosť ohromujúce. Zatiaľ čo obaja Arduinos zaostávali za teensovou dlhou streľou, ich latencie hodnoty pod Java boli vždy 20 ms minimálne – niečo nepridal. [Michu] strhol okolo kódu RXTX a zistil, že do sériovej knižnice sa našiel meškanie Mystery 20ms. Nedostalo mu žiadny zmysel, takže zmenila oneskorenie na 2MS a videl drastické zvýšenie výkonu pri prenose menej ako 128 bajtov údajov.

Zdá sa, že oprava páru neovplyvňuje latenciu, keď sa prenesú väčšie množstvá údajov (> 1KB), ale pri manipulácii s menšími kúskmi údajov robí svetový rozdiel.

V záujme zverejnenia by sa malo poznamenať, že spoločnosť [Paulova] vyrába Teensy MCU.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *