Mugitu Pipetako GPIO batera LED argia

Aurten Raspberry Pi-ren GPIOren ibilbidea egin zenuen eta, gainera, bolumen- zenbakiak identifikatzeko zenbait bozketa-batzordeak gomendatzen dituzu. Gaur egun, gaia jarraitzen dugu eta kodeak eta hardwareak konbinatu ditugun pinu hauek erabiltzen hasi gara.

GPIOk Raspberry Pi-k kanpoko munduarekin hitz egiten du - "benetako gauzak" - seinaleak eta tentsioak programatzeko 40 pin-ko goiburuko kodea erabiltzea.

GPIOarekin kodetzea oso erraza da hasteko, batez ere hasiberrientzako proiektuetarako, esate baterako, LEDak eta buzzers. Osagai pare bat eta kode lerro batzuk besterik ez dituzue zure proiektuaren zati bat LED argi edo pizteko.

Artikulu honek erakutsiko dizu zein den zure Python kodea Python-en Pi-ren bidez, "RPi.GPIO" metodoa erabiliz.

04. 01. zenbakia

Zer behar duzu

Pieza sinple eta merke batzuk besterik ez dira behar proiektu honetarako. Richard Saville

Hemen hasierako proiektu txiki hau behar duzun guztia aurkituko duzu. Elementu hauek zure makineria denda gogokoetan edo enkanteen guneetan aurki ditzakezu.

02 de 04

Sortu zirkuitua - 1. urratsa

Konektatu pin bakoitza oholera jertse-harien bidez. Richard Saville

Proiektu honetarako 2 GPIO pinuak erabiliko ditugu, lurrezko pin (39 pin fisikoa) LED argia pizteko, eta GPIO pin generikoa (GPIO 21, 40 pin fisikoa) LEDa pizteko, baina soilik erabakitzen dugu - zein den kodea non datorren.

Lehenik eta behin, zure Raspberry Pi itzali. Orain, jertse-hariak erabiliz, konektatu lurrezko pin-a zure oholean dagoen lane batera. Hurrengo egin GPIO pin berdina, beste bide batera konektatzen.

04/03

Sortu zirkuitua - 2. urratsa

LED eta erresistentzia zirkuitu osoa osatzen dute. Richard Saville

Hurrengo LED zirkuituaren erresistentzia gehituko dugu.

LEDak polaritatea dute, modu jakin batean kableatu behar dira. Hodi luzeagoa dute, hau da, anodoa (positiboa) hanka da, eta normalean, LEDko plastikozko buruaren ertz laua, katodoaren (negatiboa) hanka adierazten duena.

Erresistentzia bat erabiltzen da bi LEDk korronte gehiegi jasotzerakoan, eta GPIO pin-ak 'emanda' gehiegi ematen du.

Erresistentzia orokorreko pixka bat dago LED estandarretarako - 330ohm. Matematika batzuk daude horren atzean, baina oraingoz proiektuan sakonduko dugu. Ohmen legeak eta ondorengo gaiei buruz beti begiratu ditzakezu.

Konektatu erresistentzia hanka GND lerroan zure oholaren gainean, eta beste erresistentzia hanka lerroa zure LED hanka laburragora konektatuta.

LEDko hanka luzeagoak GPIO pin sistemara konektatutako kanalarekin bat egin behar du.

04 de 04

Python GPIO kodea (RPi.GPIO)

RPi.GPIO GPIO pinuak erabiltzeko liburutegi bikaina da. Richard Saville

Une honetan zirkuitu bat kableatuta eta prest egon behar dugu, baina ez dugu esan gure GPIO pin-a edozein potentzia bidaltzeko, beraz, zure LEDa ez da pizten.

Python fitxategi bat egin dezagun gure GPIO pin esateko botere bat bidaltzeko 5 segundoz eta gero gelditu. Raspbian-en azken bertsioa jadanik instalatutako GPIO liburutegiak izango dira.

Ireki terminalaren leihoa eta sortu Python script berri bat hurrengo komando hau idazten:

sudo nano led1.py

Fitxategi hutsa irekiko digu gure kodea idazteko. Sartu beheko lerroak:

#! / usr / bin / python # Inportatu liburutegiak RPi.GPIO inportatzea GPIO inportazio denbora gisa # Ezarri GPIO modua GPIO.setmode (GPIO.BCM) # Ezarri LED GPIO zenbakia LED = 21 # Ezarri LED GPIO pin gisa irteera GPIO.setup (LED, GPIO.OUT) # Biratu GPIO pin GPIO.output (LED, True) # Itxaron 5 segundo time.sleep (5) # Biratu GPIO pin GPIO.output itzali (LED, False)

Sakatu Ktrl + X fitxategia gordetzeko. Fitxategia exekutatzeko, sartu hurrengo komandoa terminalean eta sakatu enter:

sudo python led1.py

LED argia piztu behar da 5 segundotan, eta itzali, programa amaitzeko.

Zergatik ez saiatu 'time.sleep' zenbakia aldatzen LED argi desberdinak egiteko edo 'GPIO.output (LED, True)' aldatuz 'GPIO.output (LED, False)' aldatzeko eta ikusi zer gertatzen den?