Memperbaiki masalah latensi serial Arduino
Memperbaiki masalah latensi serial Arduino

Memperbaiki masalah latensi serial Arduino

[Paul] menulis untuk memberi tahu kami tentang beberapa masalah latensi Arduino yang menarik yang ia bantu paku dan perbaiki di Arduino.

Tampaknya [Michu] memiliki beberapa masalah dengan mengendalikan proyek Rainbowduino-nya yang kami tampilkan awal tahun ini, dan dia tidak tahu mengapa dia mengalami penundaan besar saat mengirim dan menerima data.

Mencari online untuk jawaban muncul sangat sedikit, dan karena [Michu] menggunakan pemrosesan, pasangan ini mengembangkan serangkaian tes untuk melihat latensi seperti apa yang diperkenalkan oleh Java. Pitting A Arduino Uno dan Arduino dari 2009 melawan Teensy 2.0, tes yang mengukur latensi transfer data asli versus transfer yang difasilitasi oleh Java melalui perpustakaan serial yang digunakan untuk komunikasi serial.

Hasilnya cukup menakjubkan. Sementara kedua Arduinos tertinggal di belakang para remaja dengan tembakan panjang, nilai latensi mereka di bawah Jawa selalu 20ms seminimal mungkin – sesuatu yang tidak bertambah. [Michu] menyodok dalam kode rxtx dan menemukan penundaan misteri 20ms diprogram ke perpustakaan serial. Itu tidak masuk akal baginya, jadi dia mengubah penundaan menjadi 2 ms dan melihat peningkatan kinerja yang drastis ketika mentransfer kurang dari 128 byte data.

Perbaikan pasangan tampaknya tidak mempengaruhi latensi ketika jumlah data yang lebih besar (> 1KB) sedang ditransfer, tetapi itu membuat perbedaan dunia ketika memanipulasi potongan data yang lebih kecil.

Demi pengungkapan, ia harus dicatat bahwa perusahaan [Paulus] menghasilkan MCU Teensy.

Leave a Reply

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