Ang kahayag usa ka LED sa GPIO sa Raspberry Pi

Sa sayo niining tuiga nakig -tour ka sa GPIO sa Raspberry Pi ug nagrekomenda usab sa pipila ka mga mapuslanong breakout boards alang sa pag-ila sa mga numero sa pin. Karon gipadayon namon ang maong tema ug gisugdan ang paggamit niini nga mga pinahiusa sa code ug hardware.

Ang GPIO mao kung giunsa ang pakigpulong sa Raspberry Pi sa kalibutan sa gawas - "tinuod nga mga butang" - gamit ang code aron sa programa ang mga signal ug voltages sa ug gikan sa 40-pin header.

Ang pag-encode sa GPIO sayon ​​ra kaayo nga masugdan, ilabi na sa mga proyektong nagsugod sama sa LEDs ug buzzers. Uban sa usa ka magtiayon nga mga sangkap ug pipila ka mga linya sa code nga imong mapadan-agan o mapalong ang usa ka LED isip kabahin sa imong proyekto.

Ipakita niining artikuloha kon unsa ang imong gikinahanglan nga magdan-ag sa LED gamit ang Python code sa imong Raspberry Pi, gamit ang tradisyonal nga 'RPi.GPIO' nga pamaagi.

01 sa 04

Unsa imong kinahanglan

Dunay pipila ka yano ug barato nga mga bahin nga gikinahanglan alang niini nga proyekto. Richard Saville

Ania ang lista sa tanan nga kinahanglan nimo niining gamay nga proyekto sa starter. Kinahanglan nimo nga makit-an kining mga butanga sa imong paborito nga tindahan sa magbubuhat o sa online auction sites.

02 sa 04

Create The Circuit - Lakang 1

Ikonektar ang matag lagdok sa breadboard nga adunay mga jumper wires. Richard Saville

Gamiton namo ang 2 GPIO pins alang sa maong proyekto, usa ka ground pin (physical pin 39) alang sa ground leg sa LED, ug usa ka generic GPIO pin (GPIO 21, pisikal nga pin 40) nga magamit sa LED - apan kung kita modesisyon - nga diin ang kodigo mosulod.

Una, patya ang imong Raspberry Pi. Karon, gamit ang jumper wires, sumpay-sumpay ang pin sa yuta ngadto sa usa ka lane sa imong breadboard. Ang sunod buhaton usab alang sa GPIO pin, nga nagkonektar sa usa ka laing dalan.

03 of 04

Create The Circuit - Lakang 2

Ang LED ug resistor makompleto ang sirkito. Richard Saville

Sunod among idugang ang LED ug resistor sa sirkito.

Ang mga LED adunay polarity - nagpasabut nga sila kinahanglan nga gamiton sa usa ka paagi. Sila kasagaran adunay usa ka paa nga anode (positibo) nga paa, ug kasagaran usa ka patag nga sulud sa LED plastik nga ulo nga nagpasabot sa katod (negatibo) nga paa.

Ang usa ka resistor gigamit aron mapanalipdan ang LED gikan sa pagdawat sa sobra nga kasamtangan, ug ang GPIO pin gikan sa paghatag og daghan kaayo - nga makadaut sa duha.

Adunay usa ka gamay sa usa ka generic nga resistor rating alang sa standard LEDs - 330ohm. Adunay pipila ka mga maths sa luyo niana, apan karon hatagan na'g pagtagad ang proyekto - mahimo nimong tan-awon ang balaod sa ohms ug mga hilisgutan nga may kalambigitan.

Sumpaysumpaya ang usa ka hugpong sa resistor sa GND lane sa imong breadboard, ug ang laing resistor leg sa lane konektado sa mas mubo nga paa sa imong LED.

Ang mas taas nga paa sa LED karon kinahanglan nga moapil sa lane nga konektado sa pin GPIO.

04 sa 04

Ang Python GPIO Code (RPi.GPIO)

Ang RPi.GPIO usa ka maayo kaayo nga librarya alang sa paggamit sa mga GPIO pin. Richard Saville

Sa higayon nga kami adunay sirkito nga naka-wire ug andam nga moadto, apan wala kami nagsulti sa among GPIO pin aron ipadala ang bisan unsang gahum, busa ang imong LED dili kinahanglan nga magdagkot.

Maghimo kita og file sa Python aron sultihan ang atong GPIO pin aron ipadala ang pipila ka gahum sulod sa 5 segundo ug dayon mohunong. Ang pinakabag-o nga bersyon sa Raspbian adunay mga necassary GPIO libraries nga na-instalar na.

Ablihi ang usa ka terminal nga bintana ug paghimo og bag-ong script sa Python pinaagi sa pagsulod sa mosunod nga sugo:

sudo nano led1.py

Magbukas kini og blangko nga file aron makasulod sa atong code. Pagsulod sa mga linya sa ubos:

#! / usr / bin / python # I-import ang mga librarya nga kinahanglan namong i-import RPi.GPIO ingon GPIO import nga oras # Itakda ang GPIO mode GPIO.setmode (GPIO.BCM) # Itakda ang LED GPIO nga numero LED = 21 # Itakda ang LED GPIO pin # GPO.output (LED, GPIO.OUT) # Ibutang ang GPIO pin sa GPIO.output (LED, Tinuod) # Paghulat 5 segundos sa oras.sleep (5) # Ibalik ang GPIO pin sa GPIO.output (LED, Bakak)

Pindota ang Ctrl + X aron sa pagluwas sa file. Aron sa pagdagan sa file, ipasulod ang mosunod nga command sa terminal ug i-enter:

sudo python led1.py

Ang LED kinahanglan nga magdagkot sulod sa 5 segundo unya mopalong, nga matapos ang programa.

Nganong dili nimo sulayan nga usbon ang 'time.sleep' nga gidaghanon aron mahayagan ang LED alang sa lainlaing panahon, o sulayan ang pag-usab sa 'GPIO.output (LED, True)' ngadto sa 'GPIO.output (LED, False)' ug tan-awon kung unsay mahitabo?