Menggunakan Pernyataan Switch Case dalam Pemrograman Arduino
Pada artikel ini, kita akan belajar bagaimana menggunakan jenis pernyataan kondisional lain pada Arduino yang disebut pernyataan switch case. Pernyataan switch case menggantikan kebutuhan akan beberapa pernyataan if ketika Anda memiliki beberapa kondisi yang perlu diuji. Kode ini lebih sederhana, lebih cepat, dan lebih dioptimalkan.
Pernyataan switch case berguna ketika Anda memiliki beberapa rentang input dan perlu melakukan sesuatu yang berbeda untuk setiap rentang.
Mari kita lihat contoh sketsa untuk memahami ini dengan lebih baik. Sketsa ini akan mengambil pembacaan dari sensor suhu dan mencetak rendah, sedang atau tinggi ke monitor serial tergantung pada pembacaan suhu:
Di bagian atas sketsa kami mendeklarasikan variabel pin yang dipanggil thermistorPin dan mengaturnya sama dengan pin analog A0.
Di bagian setup() ini, kami menginisialisasi monitor serial. Pin analog diasumsikan sebagai input sehingga kita tidak perlu menggunakan fungsi pinMode() di sini.
Di bagian loop() ini, kami mendeklarasikan variabel yang dipanggil temp untuk menyimpan nilai pembacaan analog dari file thermistorPin. Arduino akan mengambil pembacaan dari thermistorPin dan menyimpan nilai dalam variabel temp. Nilainya akan berada di antara 0 dan 1023, tergantung pada suhu yang diukurnya.
Selanjutnya kita gunakan temp = temp / 341; untuk mengonversi nilai yang disimpan temp menjadi satu, dua atau tiga. Angka-angka ini masing-masing mewakili rentang suhu rendah, sedang dan tinggi.
Pernyataan switch melihat variabel di dalam tanda kurung (temp) dan membandingkannya dengan setiap pernyataan kasus. Jika nilai yang disimpan dalam variabel cocok dengan nomor kasus, kode di dalam tubuh pernyataan kasus akan dieksekusi. Misalnya jika temp sama dengan dua, case 2 akan dieksekusi dan "Suhu sedang" akan dicetak ke monitor serial. Jika temp sama dengan tiga, case 3 akan dijalankan dan "Suhu tinggi" akan dicetak ke monitor serial.
Setiap pernyataan kasus diakhiri dengan kata kunci break. Kata kunci break membuat program keluar dari pernyataan switch setelah pernyataan kasus dieksekusi. Ini mencegah program memeriksa semua pernyataan kasus lain terhadap kondisi sakelar setelah menemukan kecocokan.
Pernyataan switch case diakhiri dengan pernyataan default. Pernyataan default akan dieksekusi jika tidak ada pernyataan kasus yang cocok dengan kondisi sakelar. Ini opsional tetapi dapat bermanfaat. Misalnya, jika tidak ada pernyataan kasus yang dieksekusi, mungkin ada yang salah dengan sensor. Jadi kode di dalam pernyataan default mencetak "Sensor error" ke monitor serial.
Sumber: Circuit Basics