Program mungkin, kadang-kadang, memiliki kesalahan runtime. Ini kadang-kadang sulit ditemukan dan dapat dengan mudah dilewatkan. Apakah ada cara untuk menguji program sebelum benar-benar membakar ke papan?
Program mungkin, kadang-kadang, memiliki kesalahan runtime. Ini kadang-kadang sulit ditemukan dan dapat dengan mudah dilewatkan. Apakah ada cara untuk menguji program sebelum benar-benar membakar ke papan?
Jawaban:
Ada beberapa proyek Simulator Arduino di luar sana.
Mungkin salah satu yang lebih dewasa adalah Virtronics Simulator untuk Arduino , video YouTube di sini .
Halaman Virtronics yang ditautkan di atas juga mencantumkan beberapa simulator Arduino lainnya, baik gratis maupun berbayar.
Mengingat minat yang Arduino bangkitkan, kemungkinan ada lebih banyak simulator semacam itu di luar sana, jadi tidak ada gunanya mencoba untuk menuliskan semuanya dalam jawaban di sini.
Yang perlu diperhatikan adalah bahwa ada juga aplikasi iPhone Arduino Simulator : Ini bukan rekomendasi, belum melihatnya beroperasi.
Di samping catatan:
Arduino itu sendiri merupakan papan prototyping / eksperimen. Ini sangat ideal untuk pemrograman kode eksperimental, debugging, memodifikasi dan kemudian mem-flashing ulang kode baru, sebanyak yang diinginkan . Jika kode hang, reset dan reflash dengan perubahan apa pun.
Oleh karena itu, manfaat menggunakan simulator, yang tidak pernah dapat dengan sempurna meniru berbagai waktu dunia nyata atau masalah lain yang mungkin dihadapi aplikasi, dipertanyakan.
Jika biaya Arduino menjadi perhatian, ada beberapa opsi terbuka:
Anda dapat menemukan kesalahan runtime jika Anda dapat secara manual melewati program Anda dengan Arduino terhubung dan debug ( setelah mengunduh kode ke Arduino). Ini tersedia dalam Visual Micro walaupun membutuhkan Visual Studio. Anda dapat mengatur breakpoint, mengevaluasi variabel, dan mengubah nilai variabel. Anda juga bisa mendapatkan visualisasi memori dari waktu ke waktu:
Salah satu cara untuk melakukan ini adalah dengan membuat program pembungkus untuk kode aktual yang mensimulasikan semua input dan menerima output (sehingga menciptakan loop umpan balik) sesuai lingkungan nyata. Ini akan mengambil jumlah usaha variabel tergantung pada jenis program, tingkat pengujian dan jumlah input.
Ingatlah bahwa saat menulis program pembungkus, Anda harus mengikuti pendekatan kotak hitam .
Jika tidak, kode luar Anda mungkin tidak menguji program sebaik mungkin dengan mengingat kode yang sebenarnya saat membuat kode uji dapat membuat Anda bias untuk mengabaikan kasus batas atau bidang masalah (Ini telah diamati terjadi saat melakukan Pengujian Kotak Putih yang adalah alternatifnya).