Cara Menghubungkan dan Memprogram Push Button di Arduino

kita akan belajar bagaimana menghubungkan dan memprogram push button pada Arduino. Kita juga akan belajar tentang floating pin, resistor pull up dan s
Cara Menghubungkan dan Memprogram Push Button di Arduino

Cara Menghubungkan dan Memprogram Push Button di Arduino

Push button dapat digunakan untuk mengontrol LED, relai, motor dan hampir semua hal lain yang ada dalam pikirkan dan imajinasi Anda.

Pada artikel ini, kita akan belajar bagaimana menghubungkan dan memprogram push button pada Arduino. Kita juga akan belajar tentang floating pin, resistor pull up dan sesistor pull down, fungsinya digitalRead() dan resistor pull up internal Arduino. Setelah membaca artikel ini, Anda akan dapat menambahkan push button ke proyek apa pun.

Pengantar Push Button

Push button tersedia dalam berbagai format berbeda, seperti:

Jenis-jenis Push Button

Push button yang akan kita gunakan dalam artikel ini juga dikenal sebagai sakelar taktil atau momentary push button:

Push Button Taktil

Pin di setiap sisi button memiliki kontak listrik di dalam button housing. Button itu sendiri memiliki sepotong logam konduktif listrik yang melekat padanya. Ketika button ditekan, sirkuit ditutup antara pin di setiap sisi dan arus dibiarkan mengalir di antara mereka:

Diagram Push Button

Contoh Proyek

Untuk mendemonstrasikan cara mengontrol perangkat dengan push button, mari buat rangkaian yang dapat menyalakan LED saat button ditekan. LED hanyalah sebuah contoh, Anda dapat menggunakan rangkaian ini untuk mengontrol perangkat apa pun yang ditenagai oleh sinyal berupa 5 volt.

Ini adalah bagian yang diperlukan untuk membangun proyek:

  • Arduino
  • Kabel jumper
  • Project Board atau Papan Breadboard
  • IC Schmitt SN74HC14N
  • Push button taktil
  • Resistor 10K Ohm
  • Kapasitor1 uF

Ikuti diagram ini untuk menghubungkan sirkuit:

Push Button LED Tanpa Resistor Pull Up

Nilai resistor pembatas arus dapat berupa apa saja dari 200 Ohm hingga 1K Ohm.

Satu sisi push button dihubungkan ke 5 volt dan sisi lainnya terhubung ke pin 7 pada Arduino. Ketika tombol ditekan, arus akan mengalir ke pin 7 sehingga menjadi HIGH. Kami akan menggunakan fungsi digitalRead() untuk mendeteksi ketika itu terjadi. Kemudian kita akan menggunakan fungsi digitalWrite() untuk mengatur pin 11 tinggi, hal tersebut dapat membuat LED menyala.

Cara memprogram Push Button di Arduino

Setelah rangkaian terhubung, unggah kode ini ke Arduino:

int buttonPin = 7; int ledPin = 11; void setup() { pinMode(buttonPin, INPUT); pinMode(ledPin, OUTPUT); } void loop() { int buttonState = digitalRead(buttonPin); digitalWrite(ledPin, buttonState); }

Di bagian atas sketsa kami mendeklarasikan dua variabel pin. Variabel buttonPin akan menahan nomor pin dari pin Arduino yang terhubung ke tombol (pin 7). Variabel ledPin akan menahan nomor pin Arduino yang terhubung ke LED.

Di bagian setup() ini, kami menggunakan fungsi pinMode() untuk mengatur buttonPin sebagai input. Kemudian kita atur ledPin sebagai output.

Di bagian loop() ini, kami mendeklarasikan variabel int yang dipanggil buttonState dan menyetelnya sama dengan digitalRead(buttonPin). Saat tombol tidak ditekan, tegangan pada tombol buttonPin akan rendah, sehingga fungsi digitalRead() akan mengembalikan nilai rendah. Nilai rendah disimpan dalam variabel buttonState. Saat tombol ditekan, tegangan pada tombol buttonPin akan menjadi tinggi, sehingga nilai yang tinggi akan disimpan dalam variabel buttonState.

Kami menggunakan fungsi digitalWrite() untuk mengirim sinyal tegangan ke LED. Pin yang ingin kita kirimi tegangan adalah ledPin argumen pertama. Argumen kedua dari digitalWrite() memberitahu fungsi untuk mengirim tegangan tinggi atau rendah ke pin. Tetapi alih-alih menulis tinggi atau rendah, kita dapat menggunakan variabel buttonState dan fungsi akan menulis nilai apa pun yang disimpan dalam variabel itu ke ledPin.

Pin Mengambang

Jika Anda membangun proyek di atas dan mengujinya, Anda akan melihat bahwa sesuatu yang aneh sedang terjadi. LED mungkin akan menyala dan mati setiap kali Anda menggerakkan tangan Anda ke dekat tombol. Apa yang bisa menyebabkan itu?

Pin digital Arduino sangat sensitif. Bahkan medan elektromagnetik lemah yang dibuat oleh tangan Anda dapat dideteksi oleh Arduino. Dan itu terdaftar sebagai sinyal tinggi oleh fungsinya digitalRead().

Ketika pin GPIO diizinkan untuk mengambil medan elektromagnetik yang menyimpang, mereka disebut pin mengambang. Kita perlu memperbaikinya dengan memastikan buttonPin tetap rendah saat tombol tidak ditekan. Jadi bagaimana kita bisa melakukan itu?

Resistor Pull Down

Cara termudah adalah menghubungkan resistor dari sisi kiri tombol tekan ke ground, seperti ini:

Push Button LED Dengan Resistor Pull Down

Ketika tombol tidak ditekan, energi elektromagnetik yang menyimpang akan mengalir ke ground melalui resistor. Ketika tombol ditekan, resistor akan membatasi aliran arus ke ground dan arus akan mengalir ke pin 7. Ini disebut resistor pull down karena menghubungkan pin ke ground untuk menjaganya dalam keadaan tegangan rendah. Nilai resistor pull down dapat bervariasi, tetapi biasanya lebih tinggi dari 10K Ohm.

Resistor Pull Up

Resistor pull up lebih umum daripada resistor pull down. Resistor pull up terhubung ke sumber tegangan dan menjaga pin dalam keadaan tegangan tinggi:

Push Button LED Dengan Resistor Pull Up

Pada rangkaian ini, resistor pull up dihubungkan dengan tegangan 5 volt dan sisi kanan tombol dihubungkan ke ground. Push button akan mengirim sinyal rendah ke pin 7, menyalakan LED. Resistor pull up diikat ke 5 volt dan menjaga pin 7 tetap tinggi sampai push button ditekan.

Kode untuk menggunakan resistor pull up terlihat seperti ini:

int buttonPin = 7; int ledPin = 11; void setup() { pinMode(buttonPin, INPUT); pinMode(ledPin, OUTPUT); } void loop() { int buttonState = digitalRead(buttonPin); if (buttonState == LOW) { digitalWrite(ledPin, HIGH); } if (buttonState == HIGH) { digitalWrite(ledPin, LOW); } }

Serupa dengan program sebelumnya, kita mendeklarasikan variabel untuk variabel buttonPin dan ledPin dan menetapkannya sebagai output. Kemudian kita menggunakan fungsi digitalRead() untuk mendeteksi keadaan tegangan buttonPin dan menyimpannya dalam variabel buttonState.

Kami ingin Arduino mengirim sinyal tinggi ke ledPin saat variabel buttonState rendah. Di bagian loop() ini, kami menggunakan dua pernyataan if untuk mengontrol apa yang terjadi ketika variabel buttonState tinggi atau rendah. Jika buttonState rendah, pernyataan if pertama dieksekusi dan ledPin ditulis tinggi. Jika variabel buttonState tinggi, program memasuki pernyataan if kedua dan tegangan rendah ditulis ke ledPin.

Jadi sekarang ketika Anda menekan tombol, LED seharusnya menyala dan tidak berkedip ketika Anda menggerakkan tangan Anda di sekitar sirkuit. Masalah pin mengambang terpecahkan.

Resistor Pull Up Internal Arduino

Resistor pull up dan pull down yang kita lihat dalam artikel ini adalah komponen rangkaian eksternal. Tetapi Arduino juga memiliki resistor pull up internal yang dapat Anda gunakan untuk tujuan yang sama. Untuk menggunakan resistor pull up internal Arduino, gunakan INPUT_PULLUP sebagai argumen kedua dalam fungsi pinMode() buttonPin seperti ini:

int buttonPin = 7; int ledPin = 11; void setup() { pinMode(buttonPin, INPUT_PULLUP); pinMode(ledPin, OUTPUT); } void loop() { int buttonState = digitalRead(buttonPin); if (buttonState == LOW) { digitalWrite(ledPin, HIGH); } if (buttonState == HIGH) { digitalWrite(ledPin, LOW); } }

Sekarang Anda dapat menghubungkan rangkaian tanpa resistor pull up yang terhubung ke 5 volt. Resistor pull up internal menggunakan satu komponen lebih sedikit dan membuat rangkaian sedikit lebih sederhana.



Sumber: Artikel lengkap pada post ini dapat Anda baca di Circuit Basics


Nama

3D,1,3D Mapping,2,Aerial,51,Agrikultur,3,Arduino,21,Arduino Programming,20,Arkeologi,2,Article,94,Batimetri,2,Bencana,3,Blog,69,Decode,1,Drone,51,Eksplorasi,3,Electric,1,Emlid,1,Fotogrametri,1,Gaji,1,Geodetic,2,Geologi,4,GIS,2,GPS,1,Hidrografi,1,How To,35,Infrastruktur,4,Inspeksi,11,Jembatan,1,Just,8,Konservasi,3,Konstruksi,2,LiDAR,2,Mapping,51,Microcontroller,18,Microprocessor,2,Mining,1,Minyak & Gas,2,Nimbus,1,Oseanografi,3,Panduan,10,Pemetaan,51,Pertanian,2,PnS,1,ProblemSolution,7,Programming,21,Properti,4,Python,3,Raspberry Pi,2,Real Estate,1,RnD,3,Security,2,Slider,4,Solar,1,Story,4,Survey,51,Tambang,3,Technology,22,Termal,1,Tidal,1,Tips,2,Topografi,1,Transportasi,1,UAV,8,Velodyne,1,Velodyne Lidar,1,VTOL,1,Waterpass,2,Windows,3,
ltr
item
Nashrul - Tempatnya Ilmu Pengetahuan: Cara Menghubungkan dan Memprogram Push Button di Arduino
Cara Menghubungkan dan Memprogram Push Button di Arduino
kita akan belajar bagaimana menghubungkan dan memprogram push button pada Arduino. Kita juga akan belajar tentang floating pin, resistor pull up dan s
https://blogger.googleusercontent.com/img/a/AVvXsEjh0n5GyJQ0w_pwx7oQmvR0WNwG2dKV0Jv1VzAXJvbJ1vGFWmOkIa985-mGIBj7ZajDIWWP7jvnmVQFLyaqz7hDffaQ8LamJ_WW8y1ZRtLbeOV3v7qwxNhIF994sA1-lH8zM9iqOm8G2OclXPwCUZvDUxbpzklrLR-CGTvYB1_OrLghVIKC-7qmL8tU=w640-h310
https://blogger.googleusercontent.com/img/a/AVvXsEjh0n5GyJQ0w_pwx7oQmvR0WNwG2dKV0Jv1VzAXJvbJ1vGFWmOkIa985-mGIBj7ZajDIWWP7jvnmVQFLyaqz7hDffaQ8LamJ_WW8y1ZRtLbeOV3v7qwxNhIF994sA1-lH8zM9iqOm8G2OclXPwCUZvDUxbpzklrLR-CGTvYB1_OrLghVIKC-7qmL8tU=s72-w640-c-h310
Nashrul - Tempatnya Ilmu Pengetahuan
https://www.nashrul.com/2022/03/cara-menghubungkan-dan-memprogram-push-button-di-arduino.html
https://www.nashrul.com/
https://www.nashrul.com/
https://www.nashrul.com/2022/03/cara-menghubungkan-dan-memprogram-push-button-di-arduino.html
true
6034623560228479934
UTF-8
Loaded All Posts Not found any posts VIEW ALL Readmore Reply Cancel reply Delete By Home PAGES POSTS View All RECOMMENDED FOR YOU LABEL ARCHIVE SEARCH ALL POSTS Not found any post match with your request Back Home Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sun Mon Tue Wed Thu Fri Sat January February March April May June July August September October November December Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec just now 1 minute ago $$1$$ minutes ago 1 hour ago $$1$$ hours ago Yesterday $$1$$ days ago $$1$$ weeks ago more than 5 weeks ago Followers Follow THIS PREMIUM CONTENT IS LOCKED STEP 1: Share to a social network STEP 2: Click the link on your social network Copy All Code Select All Code All codes were copied to your clipboard Can not copy the codes / texts, please press [CTRL]+[C] (or CMD+C with Mac) to copy Table of Content