Dalam tutorial ini kita akan menghubungkan keypad sentuh 4x2 (8 tombol) dengan mikrokontroler ATMEGA32A. Kita semua tahu keypad adalah salah satu perangkat input terpenting yang digunakan dalam teknik elektronik. Modul ini tidak memiliki kunci sebenarnya, tetapi memiliki bantalan logam kapasitif yang dirancang khusus, dan bantalan ini sangat sensitif. Jadi ketika seseorang melakukan kontak dengan salah satu bantalan, akan ada perubahan kapasitif di loop yang sesuai, dan perubahan ini akan dirasakan oleh kontrol elektronik di modul. Sebagai respons terhadap sentuhan, pin output pad yang sesuai menjadi tinggi.
Untuk panel sentuh delapan tombol, kami akan memiliki delapan keluaran. Meskipun ada fitur lain dengan modul ini, kami tidak akan membahasnya di sini.
Komponen Diperlukan
Perangkat keras: Mikrokontroler ATMEGA32, power supply (5v), AVR-ISP PROGRAMMER, JHD_162ALCD (16x2LCD), kapasitor 100uF, kapasitor 100nF, resistor 1KΩ (2 buah), modul keypad sentuh.
Perangkat lunak: Atmel studio 6.1 atau Atmel studio 6.2, progisp atau flash magic.
Diagram Sirkuit dan Penjelasan Kerja
Pada rangkaian PORTB ATMEGA32 terhubung ke port data LCD. Di sini orang harus ingat untuk menonaktifkan komunikasi JTAG di PORTC ke ATMEGA dengan mengubah byte sekering, jika seseorang ingin menggunakan PORTC sebagai port komunikasi normal. Pada LCD 16x2 terdapat 16 pin semuanya jika ada lampu belakang, jika tidak ada lampu belakang akan ada 14 pin. Satu dapat memberi daya atau meninggalkan pin lampu belakang. Sekarang di 14 pin ada 8 data pin (7-14 atau D0-D7), 2 pin power supply (1 & 2 atau VSS & Vdd atau gnd & + 5V), 3 rd pin untuk kontrol kontras (VEE-kontrol seberapa tebal karakter harus ditampilkan), dan 3 pin kontrol (RS & RW & E)
Di sirkuit, Anda dapat mengamati bahwa saya hanya mengambil dua pin kontrol, ini memberikan fleksibilitas pemahaman yang lebih baik, bit kontras dan READ / WRITE tidak sering digunakan sehingga dapat disingkat ke ground. Ini menempatkan LCD dalam kontras tertinggi dan mode baca. Kita hanya perlu mengontrol pin ENABLE dan RS untuk mengirim karakter dan data yang sesuai.
Koneksi yang dilakukan untuk LCD diberikan di bawah ini:
PIN1 atau VSS ke ground
PIN2 atau VDD atau VCC ke daya + 5v
PIN3 atau VEE ke ground (memberikan kontras maksimum yang terbaik untuk pemula)
PIN4 atau RS (Daftar Pilihan) ke PD6 dari UC
PIN5 atau RW (Baca / Tulis) ke ground (menempatkan LCD dalam mode baca memudahkan komunikasi untuk pengguna)
PIN6 atau E (Enable) ke PD5 dari UC
PIN7 atau D0 ke PB0 dari UC
PIN8 atau D1 ke PB1 dari UC
PIN9 atau D2 ke PB2 dari UC
PIN10 atau D3 ke PB3 dari UC
PIN11 atau D4 ke PB4 dari UC
PIN12 atau D5 ke PB5 dari UC
PIN13 atau D6 ke PB6 dari UC
PIN14 atau D7 ke PB7 dari UC
Pada rangkaian tersebut kita dapat melihat bahwa kita telah menggunakan komunikasi 8bit (D0-D7) namun hal ini tidak wajib, kita dapat menggunakan komunikasi 4bit (D4-D7) tetapi dengan program komunikasi 4 bit menjadi agak rumit.
Jadi dengan memperhatikan tabel di atas kita menghubungkan 10 pin LCD ke pengontrol dimana 8 pin adalah pin data dan 2 pin untuk kontrol.
Sebelum melangkah lebih jauh, perlu diketahui bahwa modul kapasitif bekerja untuk tegangan 2.5V. Dan juga arus yang ditarik oleh modul sentuh tidak tinggi. Jadi untuk mendapatkan 2.5V untuk modul dari 5V kita akan menggunakan rangkaian pembagi tegangan.
Rangkaian pembagi tegangan bekas oleh resistor ditunjukkan pada gambar di bawah ini.
Sekarang rangkaian pembagi tegangan memberikan tegangan rendah untuk modul dan referensi lainnya. Seperti yang ditunjukkan pada gambar, tegangan keluaran di titik tengah adalah rasio resistansi. Jadi untuk mendapatkan 2.5v dari 5V kita akan menggunakan R1 = R2 = 1KΩ, jadi untuk tegangan suplai 5V tegangan titik tengah akan menjadi 2.5V sehubungan dengan ground. Tegangan dari rangkaian pembagi ini dihubungkan ke modul. Kapasitor dihubungkan di atasnya untuk menyaring harmonisa, seperti yang ditunjukkan pada diagram rangkaian.
Port output modul sentuh terhubung ke pengontrol atmega, jadi setiap kali bantalan disentuh, output pin yang sesuai menjadi tinggi. Perubahan logika ini dirasakan oleh pengontrol. Pengontrol menunjukkan digit pada LCD berdasarkan pin, yang menjadi tinggi.
Untuk keamanan, semua pin output modul dapat ditarik ke ground melalui resistor 10K, meskipun itu tidak wajib.
Cara kerja TOUCH KEAYPAD INTERFACE paling baik dijelaskan dalam langkah demi langkah kode C yang diberikan di bawah ini.