Tutorial: Pemograman Arduino Pro Micro Promicro

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.