Daftar Isi:

Panduan Penggunaan One Pin Keypad Raspberry Pi: 9 Langkah
Panduan Penggunaan One Pin Keypad Raspberry Pi: 9 Langkah

Video: Panduan Penggunaan One Pin Keypad Raspberry Pi: 9 Langkah

Video: Panduan Penggunaan One Pin Keypad Raspberry Pi: 9 Langkah
Video: Raspberry Pi Tutorial 20 - GPIO How to use a Push Button 2024, Juli
Anonim
Panduan Penggunaan One Pin Keypad Raspberry Pi
Panduan Penggunaan One Pin Keypad Raspberry Pi

DISCLAIMER: INI ADALAH PANDUAN PENGGUNAAN UNTUK PRODUK OPEN SOURCE: KEYPAD SATU PIN. INI BUKAN PROYEK DIY. JIKA ANDA INGIN MEMBUAT BOARDS SENDIRI, FILE EAGLE DAPAT DITEMUKAN DI AKHIR TUTORIAL

Apa itu Keypad Satu Pin?

One Pin Keypad membuat penggunaan keypad matriks jauh lebih mudah dan memungkinkan Anda memesan pin I/O berharga Anda untuk tujuan lain. Sebuah keypad matriks 16 tombol biasanya membutuhkan 8 input digital pada mikrokontroler atau komputer papan tunggal. Arduino paling populer membatasi Anda hanya pada 14 pin digital, jadi keypad 16 tombol membuat Anda hanya memiliki 6 pin untuk sisa proyek Anda. Kekurangan sumber daya ini dapat menyebabkan trade-off desain yang mahal atau peningkatan mikrokontroler yang lebih mahal. Modul One Pin Keypad menghilangkan kebutuhan akan semua input digital ini. Sesuai dengan namanya, One Pin Keypad hanya menggunakan satu pin (input analog) ditambah koneksi GND dan VCC, jadi menghubungkan keypad Anda dengan mudah! Untuk pengguna Raspberry Pi (audiens target untuk tutorial ini) juga memerlukan konverter analog ke digital ADS1115, yang sangat mudah untuk disambungkan. Paket Python One Pin Keypad (termasuk) juga menyederhanakan pemrograman yang diperlukan untuk memproses input keypad, menghemat lebih banyak waktu dan tenaga.

Untuk Panduan Penggunaan Arduino, klik di sini.

Langkah 1: Kumpulkan Semua Bagian

Kumpulkan Semua Bagian!
Kumpulkan Semua Bagian!

Untuk memulai dengan papan Papan Tombol Satu Pin, Anda memerlukan:

  • Papan Keypad Satu Pin
  • Arduino dengan beberapa rasa (Arduino Nano digunakan dalam kasus ini)
  • 3 kabel jumper M/F,
  • 4 M/M ATAU 4 kabel jumper M/F lainnya, tergantung jenis header yang ada di Raspberry Pi Anda
  • Keypad membran 16 tombol
  • Papan tempat memotong roti (Yang sangat kecil digunakan di sini)
  • Modul ADS1115 (dari Adafruit atau klon)
  • Raspberry Pi dengan koneksi internet dan Raspbian OS (saya menggunakan Stretch)
  • Aksesoris Raspberry Pi (Kabel HDMI, power supply, dongle, monitor, dll tergantung pada rasa Raspberry Pi Anda)

Langkah 2: Pengkabelan

Pengkabelan!
Pengkabelan!
kabel!
kabel!

Hubungkan One Pin Keypad sesuai dengan diagram Fritzing, foto atau keduanya, mana saja yang Anda inginkan.

Harap dicatat: catatan pada diagram Fritzing mewakili Papan Tombol Satu Pin (dan singkatan GND VCC dan AOUT menunjukkan pin dari papan Papan Tombol Satu Pin)

Langkah 3: Instalasi Paket Python

Instalasi Paket Python!
Instalasi Paket Python!
Instalasi Paket Python!
Instalasi Paket Python!

Buka jendela terminal dan ketik perintah berikut:

sudo apt-get update

kemudian

pip3 menginstal Progetto-One-Pin-Keypad

untuk menginstal paket dan dependensi yang diperlukan

Langkah 4: Memasang Contoh

Memasang Contoh
Memasang Contoh

Saya membuat folder dev untuk menampung repositori di bawah home/pi jika Anda ingin melakukan hal yang sama (ini sepenuhnya opsional), jalankan perintah ini:

mkdir dev

kemudian, untuk menavigasi ke dalam folder, ketik:

cd dev

Terakhir, untuk mengkloning repositori, masukkan perintah berikut:

git clone

Langkah 5: Mengaktifkan I2C

Mengaktifkan I2C
Mengaktifkan I2C
Mengaktifkan I2C
Mengaktifkan I2C
Mengaktifkan I2C
Mengaktifkan I2C

ADS1115 ADC (Analog to Digital Converter) mengandalkan protokol I2C (Inter-Integrated Circuit) untuk berkomunikasi dengan Raspberry Pi, secara default bus I2C dinonaktifkan, untuk mengaktifkannya, ketik:

sudo raspi-config

yang akan membawa Anda ke jendela konfigurasi biru, dari sana, menggunakan tombol panah dan tombol enter, pilih

  1. Opsi Antarmuka
  2. I2C
  3. Kemudian turun ke

Tip: Mengacu pada screenshot di atas mungkin bisa sedikit membantu! Jika Anda masih terjebak, jangan takut! Lihat cara menakjubkan ini dari Sparkfun!

Langkah 6: Jalankan Calibratethresholds

Jalankan Calibratethresholds!
Jalankan Calibratethresholds!

Arahkan ke repositori jika Anda belum melakukannya dan buka folder contoh menggunakan perintah ini:

Tip: ketik 'cd Prog' lalu tekan Tab, itu akan melengkapi nama repositori secara otomatis!

cd Progetto_One_Pin_Keypad_Python_Package

lalu ketik:

contoh cd

selanjutnya, jalankan contoh calibratethresholds menggunakan perintah ini:

python3 kalibrasi ambang batas

dan ikuti petunjuk yang ditampilkan di konsol untuk mengkalibrasi papan Anda. Setelah kalibrasi berjalan melalui semua tombol, uji nilai analog baru Anda untuk melihat apakah mereka berfungsi dengan menekan beberapa tombol saat diminta untuk "Mulai.", jika nilai baru terbukti tidak akurat, gunakan Ctrl C untuk mematikan program dan menjalankannya lagi.

Contoh kalibrasi akan memberi Anda 2 baris kode yang Anda perlukan dalam contoh berikutnya, pastikan konsol tetap terbuka dan/atau salin keduanya!

Langkah 7: Ubah dan Jalankan Readkeypadwithtimeout

Ubah dan Jalankan Readkeypadwithtimeout
Ubah dan Jalankan Readkeypadwithtimeout
Ubah dan Jalankan Readkeypadwithtimeout
Ubah dan Jalankan Readkeypadwithtimeout
Ubah dan Jalankan Readkeypadwithtimeout
Ubah dan Jalankan Readkeypadwithtimeout

Sekarang setelah One Pin Keypad Anda dikalibrasi, sekarang saatnya untuk menggunakannya. Meskipun Anda dapat melakukan ini dari baris perintah menggunakan vi, saya pribadi lebih suka menggunakan IDE seperti IDLE.

Buka IDLE (Anda akan menginginkan versi python3) dan ubah baris berikut:

Ingat array nilai analog yang Anda salin? Ganti baris 13 (lihat di bawah) dengan nilai analog yang baru dikalibrasi.

# mis: my_thresholds = [nilai yang dikalibrasi akan ada di sini]

diganti dengan ini:

my_thresholds = [225, 2116, 3904, 5200, 6300, 7350, 8450, 9325, 10000, 10750, 11500, 12100, 12550, 13100, 13800, 14250]

Selanjutnya, tambahkan baris kode berikutnya setelah baris 23, (lihat di bawah):

keypad.useCalibratedThresholds(my_thresholds)

ditambahkan setelah baris 23:

# contoh: keypad.use_calibrated_thresholds(nama array Anda)

membuat baris 22 hingga 24 terlihat seperti ini pada akhirnya:

# Jika nilai yang dikalibrasi sedang digunakan, gunakan_calibrated_thresholds di bawah ini:

# contoh: keypad.use_calibrated_thresholds(nama array Anda)

keypad.use_calibrated_thresholds(batas_saya)

Setelah selesai, jalankan kode dan uji dengan menekan beberapa tombol! Jangan ragu untuk menyesuaikan contoh sketsa dengan proyek Anda! Ingat bahwa read_keypad_with_timeout mengembalikan tombol yang ditekan sebagai karakter dan batas waktu diatur dalam milidetik! Jika Anda tidak ingin timeout gunakan konstanta keypad. NO_TIMEOUT.

Langkah 8: Cara Kerja One Pin Keypad

Cara Kerja One Pin Keypad
Cara Kerja One Pin Keypad
Cara Kerja One Pin Keypad
Cara Kerja One Pin Keypad

Sebagian besar desain Papan Tombol Satu Pin didasarkan pada penerapan pembagi tegangan oleh Hari Wiguna untuk mendapatkan nilai analog yang unik untuk setiap tombol dalam papan tombol 16 pin. Desain One Pin Keypad sebagian besar tetap sama, dengan beberapa penyesuaian. Jika Anda menginginkan tutorial hebat tentang cara kerja One Pin Keypad, jangan ragu untuk melihat video keren Hari Wiguna di sini!

Langkah 9: Kesimpulan

Kesimpulan
Kesimpulan

Dalam instruksi ini, kami membahas cara memulai papan Keypad One Pin Anda. Nah, yang penasaran di antara Anda mungkin bertanya-tanya mengapa contoh sketsa readKeypadInstantaneous tidak pernah digunakan, alasannya tidak begitu berguna, karena tombol harus ditekan ketika dipanggil, fungsi readKeypadInstantaneous() digunakan terutama untuk menyederhanakan readKeypadWithTimeout() di perpustakaan. Jika itu menarik perhatian Anda, jangan ragu untuk mencobanya. Selamat Meretas!

Jika Anda memiliki pertanyaan, tinggalkan komentar di bawah atau email kami di [email protected]. Semua yang terbaik, Progetto Company P. S. Seperti yang dijanjikan, tautan ke File Eagle papan.

Direkomendasikan: