Tutorial: Pemograman Arduino Pro Micro
Pro Mikro
Pro Micro AtMega34u2 [ 3.3V/8MHz dan 5V/16MHz ] adalah papan pengembangan kecil yang sangat keren. Ini adalah mikrokontroler yang kompatibel dengan Arduino, berukuran mikro, dan diselesaikan dengan satu chip tunggal.
Sketsa Blink standar Arduino tidak akan memiliki efek yang terlihat pada Pro Micro -- tidak ada LED pada pin 13. Faktanya, satu-satunya LED di papan adalah indikator daya, dan kedipan RX/TX. Tidak seperti papan Arduino lainnya, kita dapat mengontrol LED RX/TX dalam sketsa kita. Jadi mari kita berkedip!
Unggah RX/TX Blinky, Sketsa Hello World
Salin dan tempel kode di bawah ini ke dalam Arduino IDE. Pastikan untuk memilih papan dan port COM yang benar yang disebutkan oleh papan kita masing-masing. Terakhir, unggah [1] ke Pro Micro kita
Buka Arduino IDE
Masuk ke menu Tools > pilih Board > Arduino Leonardo
Hubungkan Arduino Pro Micro dan komputer menggunakan kabel micro USB
Maka akan menginstal driver baru , silahkan tunggu sampai penginstalan selesai.
Upload code berikut
int RXLED = 17; // Definisikan RXLED
void setup()
{
pinMode(RXLED, OUTPUT); // Set RX LED sebagai output
Serial.begin(9600); //serial monitor
Serial.println("Initialize Serial Monitor");
Serial1.begin(9600); //UART hardware
Serial1.println("Initialize Serial Hardware UART Pins");
}
void loop()
{
Serial.println("Hello world!"); // Print "Hello World" pada Serial Monitor
Serial1.println("Hello! Dapatkah seseorang mendengar ku?"); // Print "Hello!" ke hardware UART
digitalWrite(RXLED, LOW); // set RX LED ON
TXLED0; //LED TX tidak terikat pada pin yang dikontrol secara normal sehingga diperlukan makro, matikan LED
delay(1000); // delay
digitalWrite(RXLED, HIGH); // set RX LED OFF
TXLED1; //TX LED macro LED ON
delay(1000); // delay
}
RX LED
LED RX terhubung ke pin 17 Arduino. Kita dapat mengontrolnya seperti halnya pin digital lainnya. Atur sebagai OUTPUT, dan digitalWrite([pin], [level]) HIGH untuk mematikan LED atau LOW untuk menyalakan LED.
LED TX
Sayangnya, LED TX tidak disediakan sebagai pin yang ditentukan Arduino, jadi kita harus menggunakan sepasang makro untuk mengontrolnya. TXLED1 menyalakan LED, dan TXLED0 mematikan LED.
Serial Monitor (Serial
) dan Hardware Serial UART (Serial1
)
Bayangkan Pro Micro yang memiliki dua port serial terpisah. Yang tanpa "1" adalah untuk komunikasi ke dan dari komputer melalui USB; inilah yang terlihat di Serial Monitor. Port Serial1 adalah UART perangkat keras, tempat Pro Micro kita dapat berkomunikasi dengan perangkat keras apa pun yang mendukung serial.
Jika kita membuka Serial Monitor, Kita hanya akan melihat Hello world! dicetak. Sedang 'Halo! Dapatkah seseorang mendengar ku?' dikirim melalui UART perangkat keras,
Pro Micro Menghitung Ulang Setiap Unggahan
Untuk berkomunikasi secara serial, Pro Micro mengemulasi port serial virtual. Sebenarnya, ini mengemulasi dua port serial yang berbeda -- satu untuk bootloader, dan satu lagi untuk sketsa. Karena bootloader dan sketsa berjalan satu per satu. Hanya satu dari port serial ini yang terlihat pada satu waktu.
Ketika Anda mengklik 'Unggah' di Arduino IDE, Pro Micro me-reset sendiri dan memulai program bootloadernya. (Bootloader adalah program tingkat rendah pada Pro Micro yang memungkinkan pemrograman mandiri melalui serial.) Untuk sistem operasi kami, bootloader terlihat seperti perangkat yang sama sekali berbeda, sehingga mendapatkan nomor port serialnya sendiri. Saat Pro Micro sedang diprogram, port serial bootloader akan terbuka. Ketika pengunggahan sketsa selesai, bootloader akan keluar, port serial itu akan ditutup, dan port serial Pro Micro biasa akan terbuka.
Inti dari semua ini adalah kenyataan bahwa kita harus bersabar dengan Pro Micros. Setiap kali Anda mengunggah sketsa baru, OS Anda perlu menjalankan keajaiban drivernya sebelum kita dapat membuka port COM. Ini bisa memakan waktu beberapa detik setelah kode selesai diunggah.