- Paparan Tujuh Segmen:
- Komponen yang Diperlukan:
- Litar dan Penjelasan Kerja:
- Penjelasan Pengaturcaraan:
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 Seri Tutorial Raspberry Pi ini, anda akan dapat mempelajari Raspberry Pi dan membuat sendiri projek yang baik. Baca tutorial di bawah:
- Bermula dengan Raspberry Pi
- Konfigurasi Pi Raspberry
- LED Berkelip
- Antaramuka Butang
- Generasi Raspberry Pi PWM
- Antara muka LCD dengan Raspberry Pi
- Mengawal Motor DC
- Kawalan Motor Stepper
- Daftar Pergeseran Antaramuka
- Tutorial ADP Raspberry Pi
- Kawalan Motor Servo
- Pad Sentuh Kapasitif
Dalam tutorial ini, kita akan melakukan antar muka paparan segmen Raspberry Pi 7. Paparan Tujuh Segmen adalah yang paling murah untuk unit paparan. Beberapa segmen ini disusun bersama dapat digunakan untuk memaparkan suhu, nilai kaunter, dll. Kami akan menghubungkan unit paparan 7 segmen ke GPIO PI dan mengendalikannya untuk memaparkan digit dengan sewajarnya. Selepas itu kami akan menulis program dalam PYTHON untuk paparan tujuh segmen untuk dikira dari 0-9 dan menetapkan semula dirinya menjadi sifar.
Paparan Tujuh Segmen:
Terdapat pelbagai jenis dan saiz 7 Paparan Segmen. Kami telah merangkumi Seven Segment yang bekerja secara terperinci di sini. Pada asasnya terdapat dua jenis 7 Segmen, jenis Anode Biasa (Common Positif atau Common VCC) dan jenis Katod Biasa (Common Negative atau Common Ground).
Common Anode (CA): Dalam ini semua terminal Negatif (katod) dari semua 8 LED disambungkan bersama (lihat rajah di bawah), dinamakan sebagai COM. Dan semua terminal positif dibiarkan begitu sahaja.
Common Cathode (CC): Dalam ini semua terminal positif (Anod) dari semua 8 LED disambungkan bersama, dinamakan sebagai COM. Dan semua termal negatif dibiarkan begitu sahaja.
Paparan segmen CC dan CA tujuh ini sangat berguna sambil mengagregatkan beberapa sel bersama. Dalam tutorial kami, kami akan menggunakan CC atau Common Cathode Seven Segment Display.
Kami sudah mempunyai Interfaced 7 segmen dengan 8051, dengan Arduino dan dengan AVR. Kami juga telah menggunakan paparan 7 segmen di banyak Projek kami.
Kami akan membincangkan sedikit mengenai Raspberry 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, lihat gambar di bawah. Sebilangan pin ini menjalankan beberapa fungsi khas. Dengan GPIO khas, kita mempunyai baki 17 GPIO.
Isyarat GPIO (pin 1 atau 17) + 3.3V sudah cukup untuk menggerakkan 7 Segmen Display. Untuk memberikan had semasa, kami akan menggunakan perintang 1KΩ untuk setiap segmen seperti yang ditunjukkan dalam Rajah Litar.
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
- Paparan segmen Common Cathode 7 (LT543)
- Resistor 1KΩ (8 keping)
- Papan roti
Litar dan Penjelasan Kerja:
Sambungan, yang dilakukan untuk paparan segmen Interfacing 7 ke Raspberry Pi, diberikan di bawah. Kami telah menggunakan Segmen Common Cathode 7 di sini:
PIN1 atau e ------------------ GPIO21
PIN2 atau d ------------------ GPIO20
PIN4 atau c ------------------ GPIO16
PIN5 atau h atau DP ---------- GPIO 12 // tidak wajib kerana kami tidak menggunakan titik perpuluhan
PIN6 atau b ------------------ GPIO6
PIN7 atau ------------------ GPIO13
PIN9 atau f ------------------ GPIO19
PIN10 atau g ---------------- GPIO26
PIN3 atau PIN8 ------------- disambungkan ke Ground
Oleh itu, kita akan menggunakan 8 pin GPIO PI sebagai PORT 8bit. Di sini GPIO13 menjadi LSB (Paling Tidak Sedikit Pasti) dan GPIO 12 menjadi MSB (Bit Paling Penting).
Sekarang, jika kita ingin memaparkan Nombor "1", kita perlu segmen kuasa B dan C. Untuk menggerakkan segmen B dan C, kita perlu menghidupkan GPIO6 dan GPIO16. Jadi bait untuk fungsi 'PORT' akan menjadi 0b00000110 dan nilai hex dari 'PORT' akan menjadi 0x06. Dengan kedua-dua pin tinggi, kita akan mendapat paparan “1”.
Kami telah menuliskan nilai untuk setiap digit yang akan ditampilkan dan menyimpan nilai-nilai tersebut dalam Rentetan Karakter bernama 'DISPLAY' (Lihat bahagian Kod di bawah). Kemudian kami memanggil nilai-nilai tersebut satu persatu untuk menunjukkan digit yang sesuai pada paparan, menggunakan Fungsi 'PORT'.
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 8 pin GPIO sebagai pin output, untuk pin Data dan Kawalan LCD.
IO.setup (13, IO.OUT) IO.setup (6, IO.OUT) IO.setup (16, IO.OUT) IO.setup (20, IO.OUT) IO.setup (21, IO.OUT) IO.setup (19, IO.OUT) IO.setup (26, IO.OUT) IO.setup (12, IO.OUT)
Sekiranya keadaan di pendakap benar, pernyataan di dalam gelung akan dilaksanakan sekali. Jadi jika 'pin' bit0 dari 8bit benar, PIN13 akan menjadi TINGGI, jika tidak, PIN13 akan menjadi RENDAH. Kami mempunyai lapan syarat 'jika ada' untuk bit0 hingga bit7, sehingga LED yang sesuai, di dalam paparan segmen 7, dapat dibuat Tinggi atau Rendah, untuk menampilkan Nombor yang sesuai.
jika (pin & 0x01 == 0x01): IO.output (13,1) yang lain: IO.output (13,0)
Perintah ini melaksanakan gelung 10 kali, x bertambah dari 0 hingga 9.
untuk julat x (10):
Perintah di bawah digunakan sebagai loop selamanya, dengan perintah ini pernyataan di dalam gelung ini akan dilaksanakan secara berterusan.
Semasa 1:
Semua fungsi dan perintah lain telah dijelaskan di bahagian 'Kod' di bawah dengan bantuan 'Komen'.
Setelah menulis program dan melaksanakannya, Raspberry Pi mencetuskan GPIO yang sesuai untuk menunjukkan digit pada 7 Segmen Display. Program ini ditulis agar paparan dapat dihitung dari 0-9 secara berterusan.