Isi kandungan:

Mengawal Pelbagai LED Dengan Pin GPIO Python dan Raspberry Pi anda: 4 Langkah (dengan Gambar)
Mengawal Pelbagai LED Dengan Pin GPIO Python dan Raspberry Pi anda: 4 Langkah (dengan Gambar)

Video: Mengawal Pelbagai LED Dengan Pin GPIO Python dan Raspberry Pi anda: 4 Langkah (dengan Gambar)

Video: Mengawal Pelbagai LED Dengan Pin GPIO Python dan Raspberry Pi anda: 4 Langkah (dengan Gambar)
Video: How to set up the new Blynk app with an ESP32 board | ESP32 projects 2024, November
Anonim
Mengawal Pelbagai LED Dengan Pin GPIO Python dan Raspberry Pi anda
Mengawal Pelbagai LED Dengan Pin GPIO Python dan Raspberry Pi anda

Instructable ini menunjukkan cara mengawal beberapa pin GPIO pada RaspberryPi anda untuk menghidupkan 4 LED. Ini juga akan memperkenalkan anda kepada parameter dan pernyataan bersyarat di Python.

Kami yang Diperintahkan Menggunakan Pin GPIO Raspberry Pi anda untuk Mengawal LED menunjukkan cara menghidupkan dan mematikan LED tunggal dengan menggunakan arahan GPIO.output. Instructable ini menggunakan pengetahuan tersebut untuk mengajar anda bagaimana mendapatkan lebih banyak kawalan ke atas litar anda.

Langkah 1: Apa yang Anda Perlu

Apa yang Anda Perlu
Apa yang Anda Perlu
Apa yang Anda Perlu
Apa yang Anda Perlu

- RaspberryPi dengan Raspbian sudah dipasang. Anda juga perlu dapat mengakses Pi menggunakan Monitor, Tetikus dan Papan Kekunci atau melalui Desktop Jauh. Anda boleh menggunakan mana-mana model Raspberry Pi. Sekiranya anda mempunyai salah satu model Pi Zero, anda mungkin ingin menyisipkan beberapa pin header ke port GPIO.

- LED Merah, Biru, Kuning dan Hijau

- Papan Roti Prototaip Solderless

- Perintang 4 x 330 ohm

- Beberapa wayar pelompat Lelaki ke Wanita

Langkah 2: Bina Litar Anda

Bina Litar Anda
Bina Litar Anda
Bina Litar Anda
Bina Litar Anda

Bina litar di atas di papan roti anda dan pastikan tiada komponen yang menyentuh dan LED disambungkan dengan betul.

Bagaimana anda mengenal pasti petunjuk positif dan negatif (kekutuban) pada LED anda? Sekiranya anda melihat LED dengan teliti, anda akan melihat bahawa ia mempunyai dua kepingan kecil logam di dalam selongsong berwarna. Ini dipanggil Anode dan Katod. Cathode adalah yang terbesar dari kedua dan juga disambungkan ke plumbum negatif LED.

Setelah anda memeriksa litar anda, sambungkan kabel jumper pin GPIO Raspberry Pi anda dengan mengikuti rajah di atas.

Langkah 3: Buat Skrip untuk Mengawal dan Menguji LED

Buat Skrip untuk Mengawal dan Menguji LED
Buat Skrip untuk Mengawal dan Menguji LED

Pada Raspberry Pi anda, buka IDLE (Menu> Pengaturcaraan> Python 2 (IDLE)).

Buka projek baru pergi ke Fail> Fail Baru. Kemudian ketik (atau salin dan tampal) kod berikut:

import RPi. GPIO sebagai GPIO

masa import GPIO.setmode (GPIO. BCM) GPIO.setup (17, GPIO. OUT) GPIO.setup (18, GPIO. OUT) GPIO.setup (22, GPIO. OUT) GPIO.setup (23, GPIO. OUT) GPIO.output (17, True) time.sleep (3) GPIO.output (17, False) time.sleep (1) GPIO.output (18, True) time.sleep (3) GPIO.output (18, Salah) time.sleep (1) GPIO.output (22, True) time.sleep (3) GPIO.output (22, False) time.sleep (1) GPIO.output (23, True) time.sleep (3) GPIO. output (23, Salah)

Simpan projek anda sebagai multilights.py (Fail> Simpan Sebagai) dalam folder Dokumen Raspberry Pis anda.

Pada Raspberry Pi, buka Terminal (Menu> Aksesori> Terminal) dan arahkan ke folder Dokumen anda dengan menaip perkara berikut:

cd / rumah / pi / Dokumen

Anda kini boleh menjalankan skrip baru anda dengan mengetik yang berikut:

python multilights.py

Lampu akan bergantian untuk menghidupkan dan mematikan. Skrip di atas menggunakan perintah time.sleep untuk membuat jeda antara setiap langkah, menjadikan setiap cahaya menyala selama 3 saat dan menunggu selama 1 saat sebelum menyalakan lampu seterusnya.

Langkah 4: Menambah Kelenturan dengan Menggunakan Parameter dan Pernyataan Bersyarat

Dengan menggunakan Parameter dan Pernyataan Bersyarat kita dapat membuat skrip di atas menjadi lebih fleksibel.

Parameter membolehkan anda menyimpan nilai yang boleh anda gunakan kemudian dalam skrip. Jenis nilai yang paling biasa adalah rentetan (teks), bilangan bulat (nombor bulat) atau terapung (nombor perpuluhan).

Pernyataan Bersyarat akan menentukan sama ada segmen kod harus dilaksanakan atau tidak dengan memeriksa sama ada syarat tertentu dipenuhi. Keadaan ini juga boleh melibatkan parameter.

Buka IDLE pada Raspberry Pi anda dan buka projek baru (Fail> Fail Baru). Kemudian taipkan perkara berikut. Berhati-hati untuk memastikan bahawa semua lekukan (tab) disertakan dengan menggunakan kekunci tab:

import RPi. GPIO sebagai GPIO

masa import dari sys import argv whichled = argv [1] ledaction = argv [2] LEDa = 17 LEDb = 18 LEDc = 22 LEDd = 23 GPIO.setmode (GPIO. BCM) GPIO.setup (LEDa, GPIO. OUT) GPIO. setmode (GPIO. BCM) GPIO.setup (LEDb, GPIO. OUT) GPIO.setmode (GPIO. BCM) GPIO.setup (LEDc, GPIO. OUT) GPIO.setmode (GPIO. BCM) GPIO.setup (LEDd, GPIO. OUT) if ledaction == "off": if whichled == "a": GPIO.output (LEDa, False) if thatled == "b": GPIO.output (LEDb, False) if thatled == "c": GPIO.output (LEDc, False) ifledled == "d": GPIO.output (LEDd, False) if thatled == "all": GPIO.output (LEDa, False) GPIO.output (LEDb, Salah) GPIO. output (LEDc, False) GPIO.output (LEDd, False) jika ledaction == "on": if thatled == "a": GPIO.output (LEDa, True) if thatled == "b": GPIO.output (LEDb, True) ifledled == "c": GPIO.output (LEDc, True) ifledled == "d": GPIO.output (LEDd, True) jika mana == "semua": GPIO.output (LEDa, Benar) GPIO.output (LEDb, True) GPIO.output (LEDc, True) GPIO.output (LEDd, Benar)

Simpan projek anda sebagai Controllight.py (Fail> Simpan Sebagai) dalam folder Dokumen anda. Sekarang buka Terminal (Menu> Aksesori> Terminal) dan ketik arahan berikut:

python Controllight.py b dihidupkan

LED kedua harus dihidupkan. Sekarang ketik perkara berikut:

python Controllight.py b mati

LED kedua harus dimatikan.

Pada baris 5, 6, 7 & 8, kami membuat parameter LEDa, LEDb, LEDc dan LEDd untuk menyimpan pin GPIO yang telah kami sambungkan ke LED mana. Ini membolehkan kita menggunakan pin GPIO alternatif tanpa perlu membuat perubahan besar pada skrip.

Sebagai contoh, jika kita menyambungkan plumbum LED pertama ke Pin 3 (GPIO 2), kita hanya perlu menukar baris 5 kepada yang berikut:

LEDa = 2

Baris 4 menyimpan nilai yang anda ketik setelah Controllight.py ke dalam parameter yang melambung (c) dan ledaction (on). Skrip kemudian menggunakan parameter ini, di samping sejumlah Pernyataan Bersyarat untuk menentukan LED mana yang hendak dikendalikan dan sama ada untuk menghidupkan atau mematikannya.

Baris 16 (jika ledaction == "on":) adalah pernyataan bersyarat. Garis lekukan yang mengikuti pernyataan ini hanya akan berjalan jika syarat penyataan dipenuhi. Dalam senario ini, syaratnya adalah bahawa ledaksi mengandungi teks pada.

Dengan membaca Pernyataan Bersyarat yang lain dari skrip, bolehkah anda meramalkan apa yang akan berlaku apabila anda mengetik perintah berikut di Terminal?

python Controllight.py semua dihidupkan

Mengapa tidak mencuba dan hantar jawapan anda di bahagian komen di bawah.

Disyorkan: