Raspberry Pi adalah papan berasaskan pemproses seni bina ARM yang direka untuk jurutera elektronik dan penggemar hobi. PI adalah salah satu platform pembangunan projek yang paling dipercayai di luar sana sekarang. Dengan kelajuan pemproses yang lebih tinggi dan RAM 1 GB, PI dapat digunakan untuk banyak projek berprofil tinggi seperti pemprosesan Imej dan IoT.
Untuk melakukan projek berprofil tinggi, seseorang perlu memahami fungsi asas PI. Kami akan merangkumi semua fungsi asas Raspberry Pi dalam tutorial ini. Dalam setiap tutorial kita akan membincangkan salah satu fungsi PI. Pada akhir Siri Tutorial Raspberry Pi ini, anda akan dapat membuat projek berprofil tinggi sendiri. Baca tutorial di bawah:
- Bermula dengan Raspberry Pi
- Konfigurasi Pi Raspberry
- LED Berkelip
- Antaramuka Butang
- Penjanaan PWM
- Mengawal Motor DC
- Kawalan Motor Stepper
- Daftar Pergeseran Antaramuka
- Tutorial ADP Raspberry Pi
- Kawalan Motor Servo
- Pad Sentuh Kapasitif
Dalam tutorial ini, kita akan Mengendalikan Paparan LCD 16x2 menggunakan Raspberry Pi. Kami akan menyambungkan LCD ke pin GPIO (Output Tujuan Umum) PI untuk memaparkan watak di atasnya. Kami akan menulis program dalam PYTHON untuk menghantar arahan yang sesuai ke LCD melalui GPIO dan memaparkan watak yang diperlukan di skrinnya. Layar ini akan berguna untuk memaparkan nilai sensor, status gangguan dan juga untuk waktu paparan.
Terdapat pelbagai jenis LCD di pasaran. LCD grafik lebih kompleks daripada LCD 16x2. Jadi di sini kita akan mendapatkan paparan LCD 16x2, anda bahkan boleh menggunakan LCD 16x1 jika anda mahu. 16x2 LCD mempunyai 32 watak dalam jumlah, 16 dalam 1 st talian dan satu lagi 16 dalam 2 nd garis. JHD162 adalah LCD watak 16x2 LCD. Kami telah menghubungkan LCD 16x2 dengan 8051, AVR, Arduino dll. Anda boleh mendapatkan semua projek berkaitan 16x2 LCD kami dengan mengikuti pautan ini.
Kami akan membincangkan sedikit mengenai PI GPIO sebelum melangkah lebih jauh.
Terdapat 40 pin output GPIO di Raspberry Pi 2. Tetapi daripada 40, hanya 26 pin GPIO (GPIO2 hingga GPIO27) yang dapat diprogramkan. Sebilangan pin ini menjalankan beberapa fungsi khas. Dengan GPIO khas, kita mempunyai baki 17 GPIO.
Terdapat pin output kuasa + 5V (Pin 2 atau 4) dan + 3.3V (Pin 1 atau 17) di papan, ini adalah untuk menghubungkan modul dan sensor lain. Kami akan menghidupkan LCD 16 * 2 melalui rel + 5V. Kita boleh menghantar isyarat kawalan + 3.3v ke LCD tetapi untuk berfungsi LCD kita perlu menghidupkannya dengan + 5V. LCD tidak akan berfungsi dengan + 3.3V.
Untuk mengetahui lebih lanjut mengenai pin GPIO dan output semasa, baca: LED Berkedip dengan Raspberry Pi
Komponen yang Diperlukan:
Di sini kita menggunakan Raspberry Pi 2 Model B dengan OS Raspbian Jessie. Semua keperluan asas Perkakasan dan Perisian dibincangkan sebelumnya, anda boleh mencarinya dalam Pengenalan Raspberry Pi, selain daripada yang kami perlukan:
- Pin penyambung
- Modul LCD 16 * 2
- Resistor 1KΩ (2 keping)
- Periuk 10K
- Kapasitor 1000µF
- Papan roti
Litar dan Penjelasan Kerja:
Seperti yang ditunjukkan dalam Circuit Diagram, kita mempunyai Interpaced Raspberry Pi dengan paparan LCD dengan menyambungkan 10 pin GPIO PI ke Pin Kawalan dan Pemindahan Data LCD 16 * 2. Kami telah menggunakan GPIO Pin 21, 20, 16, 12, 25, 24, 23, dan 18 sebagai BYTE dan membuat fungsi 'PORT' untuk menghantar data ke LCD. Di sini GPIO 21 adalah LSB (Least Significant Bit) dan GPIO18 adalah MSB (Bit Paling Penting).
Modul LCD 16x2 mempunyai 16 pin, yang boleh dibahagikan kepada lima kategori, Pin Kuasa, pin kontras, Pin Kawalan, pin Data dan pin Lampu Latar. Berikut adalah penerangan ringkas mengenai mereka:
Kategori |
Pin TIDAK. |
Nama Pin |
Fungsi |
Pin Kuasa |
1 |
VSS |
Ground Ground, disambungkan ke Ground |
2 |
VDD atau Vcc |
Pin Voltan + 5V |
|
Pin Kontras |
3 |
V0 atau VEE |
Pengaturan Kontras, disambungkan ke Vcc dengan teliti perintang berubah. |
Pin Kawalan |
4 |
RS |
Daftar Pilih Pin, RS = 0 Mod arahan, RS = 1 mod Data |
5 |
RW |
Pin Baca / Tulis, RW = 0 Mod penulisan, Mod RW = 1 Baca |
|
6 |
E |
Aktifkan, nadi tinggi hingga rendah perlu mengaktifkan LCD |
|
Pin Data |
7-14 |
D0-D7 |
Pin Data, Menyimpan Data yang akan dipaparkan di LCD atau arahan arahan |
Pin Lampu Latar |
15 |
LED + atau A |
Untuk menghidupkan Lampu Belakang + 5V |
16 |
LED- atau K |
Tanah Lampu Latar |
Kami sangat mengesyorkan untuk membaca artikel ini untuk memahami LCD yang berfungsi dengan Pin dan Hex Commands.
Kami akan membincangkan secara ringkas proses penghantaran data ke LCD:
1. E diatur tinggi (mengaktifkan modul) dan RS diatur rendah (memberitahu LCD bahawa kita memberi perintah)
2. Memberi nilai 0x01 ke port data sebagai arahan untuk membersihkan skrin.
3. E diatur tinggi (mengaktifkan modul) dan RS diatur tinggi (memberitahu LCD bahawa kita memberikan data)
4. Membekalkan kod ASCII untuk watak perlu ditunjukkan.
5. E diatur rendah (memberitahu LCD bahawa kita sudah selesai mengirim data)
6. Setelah pin E ini menjadi rendah, LCD memproses data yang diterima dan menunjukkan hasil yang sesuai. Jadi pin ini diset ke tinggi sebelum mengirim data dan ditarik ke bawah setelah mengirim data.
Seperti yang dikatakan, kita akan menghantar watak satu demi satu. The watak-watak yang diberikan kepada LCD dengan kod ASCII (American standard Kod untuk Saling Tukar Maklumat). Jadual kod ASCII ditunjukkan di bawah. Sebagai contoh, untuk menunjukkan watak "@", kita perlu menghantar kod heksadesimal "40". Sekiranya kita memberikan nilai 0x73 ke LCD, ia akan memaparkan "s". Seperti ini kita akan mengirim kod yang sesuai ke LCD untuk menampilkan rentetan " CIRCUITDIGEST ".
Penjelasan Pengaturcaraan:
Setelah semuanya dihubungkan mengikut gambarajah litar, kita dapat menghidupkan PI untuk menulis program dalam PYHTON.
Kami akan membincangkan beberapa arahan yang akan kami gunakan dalam program PYHTON, Kami akan mengimport fail GPIO dari perpustakaan, fungsi di bawah ini membolehkan kita memprogram pin GPIO PI. Kami juga mengganti nama menjadi "GPIO" menjadi "IO", jadi dalam program setiap kali kami ingin merujuk pada pin GPIO, kami akan menggunakan kata 'IO'.
import RPi.GPIO sebagai IO
Kadang-kadang, apabila pin GPIO, yang cuba kita gunakan, mungkin melakukan beberapa fungsi lain. Sekiranya demikian, kami akan menerima amaran semasa menjalankan program. Perintah di bawah ini memberitahu PI untuk mengabaikan amaran dan meneruskan program.
Peringatan IO (Salah)
Kita boleh merujuk pin GPIO PI, sama ada dengan nombor pin di papan atau dengan nombor fungsinya. Seperti 'PIN 29' di papan adalah 'GPIO5'. Oleh itu, kami katakan di sini sama ada kami akan mewakili pin di sini dengan '29' atau '5'.
IO.setmode (IO.BCM)
Kami menetapkan 10 pin GPIO sebagai pin output, untuk pin Data dan Kawalan LCD.
IO.setup (6, IO.OUT) IO.setup (22, IO.OUT) IO.setup (21, IO.OUT) IO.setup (20, IO.OUT) IO.setup (16, IO.OUT) IO.setup (12, IO.OUT) IO.setup (25, IO.OUT) IO.setup (24, IO.OUT) IO.setup (23, IO.OUT) IO.setup (18, IO.OUT)
manakala perintah 1: digunakan sebagai loop selamanya, dengan perintah ini pernyataan di dalam gelung ini akan dilaksanakan secara berterusan.
Semua fungsi dan perintah lain telah dijelaskan di bahagian 'Kod' di bawah dengan bantuan 'Komen'.
Setelah menulis program dan melaksanakannya, Raspberry Pi menghantar watak ke LCD satu persatu dan LCD memaparkan watak di skrin.