InputPullupSerial
Menunjukkan penggunaan INPUT_PULLUP dengan pinMode()
Tarik Masukan Serial
Contoh ini
menunjukkan penggunaan INPUT_PULLUP dengan pinMode(). Ia memantau status
sakelar dengan membuat komunikasi serial antara Arduino
dan komputer Anda melalui USB.
Selain itu, bila
masukannya TINGGI, LED terintegrasi yang terpasang pada pin 13 akan menyala;
bila RENDAH, LED akan mati.
Perangkat Keras yang Diperlukan
·
Sakelar sesaat, tombol, atau sakelar sakelar
·
papan tempat memotong roti
·
kawat penghubung
Sirkuit
Hubungkan dua kabel
ke papan Arduino. Kabel hitam menghubungkan ground ke salah satu kaki tombol
tekan. Kabel kedua terhubung dari pin digital 2 ke kaki tombol tekan lainnya.
Tombol tekan atau
sakelar menghubungkan dua titik dalam rangkaian saat Anda menekannya. Saat
tombol tekan terbuka (tidak ditekan), tidak ada koneksi antara kedua kaki
tombol tekan. Karena pull-up internal pada pin 2 aktif dan terhubung ke 5V,
kita membaca HIGH saat tombol terbuka. Saat tombol tertutup, Arduino membaca
LOW karena koneksi ke ground telah selesai.
Skema
Desain PCB
Kode Contoh
Kode
Dalam program di
bawah ini, hal pertama yang akan Anda lakukan dalam fungsi pengaturan adalah
memulai komunikasi serial, pada 9600 bit data per detik, antara Arduino dan
komputer Anda dengan baris:
Serial.begin(9600);
Berikutnya,
inisialisasi pin digital 2 sebagai input dengan resistor pull-up internal
diaktifkan:
pinMode(2,INPUT_PULLUP);
Baris berikut
membuat pin 13, dengan LED onboard, sebuah output:
pinMode(13, OUTPUT);
Setelah pengaturan
Anda selesai, lanjutkan ke loop utama kode Anda. Saat tombol tidak ditekan,
resistor pull-up internal terhubung ke 5 volt. Hal ini menyebabkan Arduino
melaporkan "1" atau TINGGI. Saat tombol ditekan, pin Arduino ditarik
ke ground, menyebabkan Arduino melaporkan "0", atau RENDAH.
Hal pertama yang
perlu Anda lakukan dalam loop utama program Anda adalah membuat variabel untuk
menampung informasi yang masuk dari switch Anda. Karena informasi yang masuk
dari switch akan berupa "1" atau "0", Anda dapat menggunakan int tipe data . Panggil variabel ini sensorValue,
dan atur agar sama dengan apa pun yang sedang dibaca pada pin digital 2. Anda
dapat melakukan semua ini hanya dengan satu baris kode:
int sensorValue = digitalRead(2);
Setelah Arduino
membaca input, buat ia mencetak informasi ini kembali ke komputer sebagai
desimal (DEC)
nilai. Anda dapat melakukannya dengan perintah Serial.println () di baris kode
terakhir kita:
Serial.println(sensorValue, DEC);
Sekarang, saat Anda
membuka Serial Monitor di lingkungan Arduino, Anda akan melihat aliran
"0" jika sakelar Anda tertutup, atau "1" jika sakelar Anda
terbuka.
LED pada pin 13 akan
menyala saat sakelar dalam posisi TINGGI, dan mati saat RENDAH.
Pelajari lebih lanjut
Anda dapat menemukan tutorial yang lebih mendasar di bagian contoh bawaan
Tidak ada komentar:
Posting Komentar