Selle aasta alguses käisite Raspberry Pi GPIO-ga ja soovitasite ka mõned tõeliselt kasulikud lauaplaadid pin-numbrite tuvastamiseks. Täna jätkame seda teemat ja hakkame kasutama neid kontakte koos koodi ja riistvaraga.
GPIO-s on see, kuidas Raspberry Pi räägib välismaailmast - "reaalsed asjad" - kasutades koodi signaalide ja pingete programmeerimiseks 40-pin-päisesse ja sellest.
GPIO-ga kodeerimine on üsna lihtne alustada, eriti algajatele mõeldud projektide puhul, nagu LED-id ja helkurid. Ainult mõne komponendi ja mõne koodiliiniga saate oma projekti raames valgustada või vilkuda LED-d.
See artikkel näitab teile, mida peate teie Raspberry Pi jaoks kasutama Pythoni koodi kasutades LED-d, kasutades traditsioonilist RPi.GPIO-meetodit.
01, 04
Mida sa vajad
Siin on loetelu sellest, mida vajate selle väikese starterprojekti jaoks. Teil peaks olema võimalik neid elemente leida oma lemmikmeisteri poodis või veebipõhises oksjonisaitidel.
- Raspberry Pi tööjaam, kus töötab viimane Raspbian (Pi, ekraan, klaviatuur, hiir, võimsus, SD-kaart - kõik on ühendatud)
- Väike lehel
- 5mm LED
- 330 ohm takisti
- 2 meessoost naissoost hüppaju juhtmed
02 04
Loo vooluahel - 1. samm
Me kavatseme kasutada selle projekti jaoks kahte GPIO-pinu, LED-i maa-ala ja PIN-koodi GPIO-pistikut (GPIO 21, füüsilist pistikut 40) maandusjuhtmega (füüsiline pistik 39), kuid ainult siis, kui me otsustasime - mis on koodi sisestamise koht.
Esiteks lülitage välja vaarika pi. Nüüd, kasutades hüppajujuhtmeid, ühendage maanduskinnitus leti joonega. Seejärel tehke GPIO-tõmblukuga sama, mis ühendab erineva rajaga.
03 alates 04
Loo vooluahel - 2. samm
Järgnevalt lisame vooluahela LED-i ja takisti.
LEDidel on polaarsus - see tähendab, et nad peavad olema kindlalt ühendatud juhtmega. Neil on tavaliselt üks pikem jala, mis on anoodi (positiivne) jala ja tavaliselt LED-plastpeaga tasane serv, mis tähistab katoodi (negatiivset) jala.
Takistust kasutatakse LED-i kaitsmiseks liiga suure voolu saamiseks ja GPIO-pin on liiga palju andnud - see võib kahjustada mõlemat.
Standardsed valgusdioodide jaoks on natuke üldist takistorit - 330 ohm. Selle taga on matemaatika, kuid nüüd keskendume sellele projektile - saate alati uurida oomi seadust ja sellega seotud teemasid hiljem.
Ühendage üks resistori jada oma lehest GND rajale ja teine takisti jala, mis on ühendatud LED-i lühema jalaga.
LED-i pikem jalg peab nüüd liituma GPIO-pistikuga ühendatud sõidurajaga.
04 04
Pythoni GPIO-kood (RPi.GPIO)
Praegu on meil voolujuhe ühendatud ja valmis minema, kuid me ei ole GPIO-pulgale veel öelnud, et saata veel võimsust, nii et teie LED ei peaks põlema.
Teeme Pythoni faili, et oma GPIO-pulgale teatada, et saata mõni toide 5 sekundiks ja seejärel peatada. Raspbian uusim versioon on juba varustatud GPIO-i raamatukogudega.
Avage terminali aken ja looge uus Pythoni skript, sisestage järgmine käsk:
sudo nano led1.pySee avab tühja faili meie koodi sisestamiseks. Sisestage allolevad read:
#! / usr / bin / python # Importige raamatukogud, mida peame importima RPi.GPIO kui GPIO impordi aeg # Määra GPIO režiim GPIO.setmode (GPIO.BCM) # Määrake LED GPIO numbri LED = 21 # Määrake LED GPIO-pistik väljund GPIO.setup (LED, GPIO.OUT) # Lülitage GPIO pistik GPIO-väljundisse (LED, True) # Oodake 5 sekundit. sleep (5) # Lülitage GPIO pistik välja GPIO.väljundist (LED, False)Faili salvestamiseks vajutage Ctrl + X. Faili käivitamiseks sisestage terminalis järgmine käsk ja vajutage sisestusklahvi:
sudo python led1.pyLED peaks 5 sekundit valgust põlema, seejärel lülitub välja, lõpetades programmi.
Miks mitte üritada muuta "time.sleep" numbrit, et valgustada erinevatel aegadel LED-i või proovida muuta GPIO.output (LED, True) väärtuseks GPIO.output (LED, False) ja näha, mis juhtub?