Aiemmin tänä vuonna tutustut Raspberry Pi: n GPIO: een ja suosittelet myös joitain todella hyödyllisiä pudotuspaneeleja pin-numeroiden tunnistamiseen. Tänään jatkamme teemaa ja aloitamme näiden nastojen yhdistämisen yhdessä koodin ja laitteiston kanssa.
GPIO on miten Vadelma Pi puhuu ulkomaailmaan - "todelliset asiat" - koodin avulla ohjelmoidaan signaalit ja jännitteet 40-nastaiseen otsikkoon ja siitä.
GPIO: n koodaus on melko yksinkertaista päästä alkuun, varsinkin aloitteleville hankkeille, kuten LEDille ja sävyttimille. Vain pari komponenttia ja muutamaa riviä koodia voit valoa tai vilkkua LED-osana osana projektia.
Tässä artikkelissa näytetään, mitä LED-valoa tarvitset, kun käytät Raspberry Pi: n Python-koodia käyttäen perinteistä RPi.GPIO-menetelmää.
01/04
Mitä tarvitset
Tässä on luettelo kaikesta, mitä tarvitset tämän pienen käynnistysprojektin tarpeisiin. Sinun pitäisi pystyä löytämään nämä kohteet suosikkien valmistajan myymälässä tai verkkohuutokauppapaikoissa.
- Raspberry Pi -työasema, jossa on uusin Raspbian (Pi, näyttö, näppäimistö, hiiri, teho, SD-kortti - kaikki kytketty)
- Pieni leipälauta
- 5mm LED
- 330 ohmia vastus
- 2 uros-naaras hyppyjohtoa
02/04
Luo piiri - vaihe 1
Käytämme tätä projektia varten kaksi GPIO-nastaa, LED-kentän maadoitusnuppi (fyysinen tappi 39) ja yleinen GPIO-nasta (GPIO 21, fyysinen pin 40), mutta vain silloin, kun me päätämme - missä koodi tulee.
Ensinnäkin sammuta vadelmasi Pi. Käytä nyt hyppyjohdot kytkemällä maadoitusvipu leipälautan kaistalle. Seuraavaksi tee sama GPIO-tappi, joka kytkeytyy toiseen kaistaa.
03/04
Luo piiri - vaihe 2
Seuraavaksi lisätään LED ja vastus piiriin.
LEDeillä on napaisuus eli ne on kytkettävä tiettyyn tapaan. Niissä on yleensä yksi pidempi jalka, joka on anodin (positiivinen) jalka ja yleensä litteä reuna LED-muovipäässä, joka merkitsee katodin (negatiivista) jalkaa.
Vastusta käytetään suojaamaan sekä LED: tä että liian paljon virtaa, ja GPIO-nastaa "antamalla" liikaa - mikä voi vahingoittaa molempia.
Vakiolampuille on olemassa jokin yleinen vastusluokka - 330ohm. Tämän takana on joitain matematiikkoja, mutta nyt keskitymme nyt projektiin - voit aina katsoa omiin lakia ja niihin liittyviä aiheita sen jälkeen.
Kytke vastuksen yksi jalka teidän leipälautan GND-kaistalle ja toinen vastus reuna-alueelle, joka on kytketty LEDin lyhyempään osaan.
LED: n pidempi jalka on nyt liittyä GPIO-liitäntään yhdistettyyn kaistaan.
04/04
Python GPIO -koodi (RPi.GPIO)
Tällä hetkellä meillä on piiri, joka on kytketty ja valmis menemään, mutta emme ole kertoneet GPIO-pinillemme lähettää vielä mitään tehoa, joten LED-valoa ei tule palaa.
Tehdään Python-tiedosto kertoa GPIO-pinnalle lähettämällä virtaa 5 sekunnin ajan ja lopettamaan sitten. Raspbianin uusimmalla versiolla on jo valmiit GPIO-kirjastot.
Avaa pääteikkuna ja luo uusi Python-komentosarja kirjoittamalla seuraava komento:
sudo nano led1.pyTämä avaa tyhjän tiedoston, jotta voimme kirjoittaa koodimme. Syötä seuraavat rivit:
#! / usr / bin / python # Tuoda kirjastot tarvitsemme tuoda RPI.GPIO GPIO-tuontiajaksi # Aseta GPIO-tila GPIO.setmode (GPIO.BCM) # Aseta LED GPIO-numero LED = 21 # Aseta LED-GPIO-nastaa (LED, GPIO.OUT) # Käännä GPIO-nasta GPIO.output (LED, True) # Odota 5 sekuntia time.sleep (5) # Käännä GPIO-nasta pois GPIO.output (LED, False)Tallenna tiedosto painamalla Ctrl + X. Voit suorittaa tiedoston antamalla seuraavan komennon päätteeseen ja painamalla enter:
sudo python led1.pyLED-merkkivalo palaa 5 sekunnin ajaksi ja sammuu, lopettaen ohjelman.
Miksi et yritä vaihtaa "time.sleep" -numeroa LED-merkkivalon ilmaisemiseksi eri aikoina tai kokeilemalla GPIO.output (LED, True) vaihtamista "GPIO.output (LED, False)" ja näet, mitä tapahtuu?