Limyè yon ki ap dirije ak GPIO Raspberry Pi a

Nan kòmansman ane sa a ou te resevwa yon toune nan GPIO Raspberry Pi a epi tou li rekòmande kèk ankadreman levasyon vrèman itil pou idantifye nimewo PIN. Jodi a nou kontinye tèm ak kòmanse lè l sèvi avèk sa yo broch konbine avèk kòd ak pyès ki nan konpitè.

GPIO a se ki jan Raspberry Pi chita pale yo nan mond lan deyò - "bagay sa yo reyèl" - lè l sèvi avèk kòd nan pwogram siyal yo ak tansyon pou ale ak pou soti nan header nan 40-PIN.

Kodaj ak GPIO a se rezonab senp yo kòmanse ak, espesyalman pou pwojè debutan tankou poul ak buz. Avèk jis yon koup nan eleman ak yon liy kèk nan kòd ou ka limyè oswa flash yon dirije kòm yon pati nan pwojè ou.

Atik sa a pral montre w ki sa ou bezwen limyè yon dirije lè l sèvi avèk kòd Python sou Franbwaz Pi, lè l sèvi avèk tradisyonèl 'RPi.GPIO' metòd la.

01 nan 04

Kisa ou bezwen

Jis kèk pati senp ak bon mache ki nesesè pou pwojè sa a. Richard Saville

Isit la nan yon lis tout bagay ou pral bezwen pou pwojè sa a ti starter. Ou ta dwe kapab jwenn bagay sa yo nan magazen pi renmen Maker ou a sou sit vann piblik sou entènèt.

02 nan 04

Kreye Awondisman an - Etap 1

Konekte chak peny nan breadboard la ak fil kavalye. Richard Saville

Nou pral sèvi ak 2 biyo GPIO pou pwojè sa a, yon PIN tè (pik fizik 39) pou pye tè a nan ki ap dirije, ak yon pens GPIO jenerik (GPIO 21, piki fizik 40) nan pouvwa dirije a - men se sèlman lè nou deside - ki se kote postal la vini nan.

Pwemyeman, fèmen Franbwaz Pi. Koulye a, lè l sèvi avèk fil kouran yo, konekte PIN la tè nan yon liy sou breadboard ou. Next fè menm bagay la pou PIN a GPIO, konekte nan yon liy diferan.

03 nan 04

Kreye Awondisman an - Etap 2

Dirije a ak rezistan konplete kous la. Richard Saville

Next nou ajoute dirije a ak rezistan nan kous la.

Dirije gen polarite - sa vle di yo gen yo dwe branche nan yon sèten fason. Yo anjeneral gen yon sèl pye ankò ki se anod (pozitif) pye a, epi anjeneral yon kwen plat sou tèt la plastik dirije ki vle di kotode a (negatif).

Yo itilize yon rezistè pou pwoteje tou de ki soti nan k ap resevwa twòp aktyèl, ak peny GPIO soti nan 'bay' twòp - ki kapab domaj tou de.

Genyen yon ti jan nan yon Rating rezistan jenerik pou ki ap dirije estanda - 330ohm. Gen kèk maths dèyè sa, men pou kounye a se pou yo konsantre sou pwojè a - ou ka toujou gade nan lalwa ame ak sijè ki gen rapò ak apre sa.

Konekte yon sèl pye nan rezistè a nan liy GND sou breadboard ou a, ak lòt janm a rezèvwa nan liy la ki konekte nan janm ki pi kout nan ki ap dirije ou.

Fwa ki pi long nan ki ap dirije a kounye a bezwen rantre nan liy la ki konekte nan PIN a GPIO.

04 nan 04

Python GPIO Kòd (RPi.GPIO)

RPi.GPIO se yon bibliyotèk ekselan pou itilize broch GPIO. Richard Saville

Nan moman sa a nou gen yon sikwi branche moute ak pare yo ale, men nou pa te di pik GPIO nou yo voye soti nenpòt ki pouvwa ankò, se konsa dirije ou pa ta dwe limen.

Ann fè yon dosye Python pou di pik GPIO nou pou voye kèk pouvwa pou 5 segonn epi sispann. Vèsyon an dènye nan Raspbian pral gen bibliyotèk yo GPC necassary enstale deja.

Louvri yon fenèt tèminal epi kreye yon nouvo Python script lè ou antre nan lòd sa a:

sudo nano led1.py

Sa a pral louvri yon dosye vid pou nou antre nan kòd nou an. Antre nan liy anba yo:

#! / usr / bin / python # Import bibliyotèk nou bezwen enpòte RPi.GPIO kòm tan GPIO enpòte # Mete GPIO.setmode mòd GPIO la (GPIO.BCM) # Mete GPIO.setmode mòd GPIO a (GPIO.BCM) GPIO.setup (dirije, GPIO.OUT) # Vire peny GPIO a sou GPIO.output (dirije, vrè) # Sèvi 5 segonn time.sleep (5) # Vire peny GPIO GPIO.output (dirije, fo)

Press Ctrl + X pou konsève pou dosye a. Nan kouri dosye a, antre nan lòd sa a nan tèminal la ak laprès antre nan:

sudo python led1.py

Dirije a ta dwe limyè pou 5 segonn Lè sa a, fèmen, mete fen nan pwogram nan.

Poukisa nou pa eseye chanje 'time.sleep' nimewo a nan limyè ki ap dirije a pou fwa diferan, oswa eseye chanje 'GPIO.output a (ki ap dirije, Vrè)' nan 'GPIO.output (ki ap dirije, fo') ak wè sa k ap pase?