01 de 09
Enkonduko al la Frembaj Pi-Pingloj
La termino 'GPIO' (Ĝenerala Propozenta Eniga Eligo) Ne estas ekskluziva al la Frambo Pi. Enmetaj kaj elsendaj pingloj troviĝas plejparte de mikrokontroliloj kiel ekzemple Arduino, Beaglebone kaj pli.
Kiam ni parolas pri GPIO kun la Frambo Pi, ni aludas al la longa bloko de pingloj ĉe la supra maldekstra angulo de la tabulo. Pli malnovaj modeloj havis 26 pingloj, tamen la plej multaj el ni uzos nunan modelon kun 40.
Vi povas konekti komponantojn kaj aliajn aparatajn aparatojn al ĉi tiuj pingloj, kaj uzi kodon por kontroli kion ili faras. Ĝi estas grava parto de la Frambo Pi kaj bonega maniero por lerni pri elektroniko.
Post kelkaj programprogramoj, vi verŝajne trovos vin spertanta kun ĉi tiuj pingloj, avida miksi vian kodon kun aparataro por fari aferojn okazi en 'reala vivo'.
Ĉi tiu procezo povas timigi se vi estas nova al la sceno, kaj konsiderante ke unu falsa movado povas damaĝi vian Frambon Pi, ĝi estas komprenebla, ke ĝi estas nervoza areo por komencantoj esplori.
Ĉi tiu artikolo klarigos, kion faras ĉiu tipo de GPIO-pin kaj iliaj limigoj.
02 de 09
La GPIO
Unue, ni rigardu la GPIO en lia aro. La pingloj eble aspektas samaj, sed ĉiuj havas malsamajn funkciojn. La supra bildo montras ĉi tiujn funkciojn en malsamaj koloroj, kiujn ni klarigos en la sekvaj paŝoj.
Ĉiu pinglo estas kalkulita de 1 ĝis 40 ekde la malsupro maldekstre. Ĉi tiuj estas la fizikaj pingaj nombroj, tamen, ekzistas ankaŭ numeri / etikedaj konvencioj kiel 'BCM', kiuj estas uzataj dum skribado de kodo.
03an de 09
Potenco & Tero
Elstarita ruĝa, estas potencaj pingloj etikeditaj '3' aŭ '5' por 3.3V aŭ 5V.
Ĉi tiuj pingloj permesas vin rekte sendi potencon al aparato sen neceso de iu ajn kodo. Ne estas maniero ankaŭ turni ĉi tiujn.
Estas 2 potencaj reloj - 3.3 voltoj kaj 5 voltoj. Laŭ ĉi tiu artikolo, la 3-a veturilo estas limigita al 50mA aktuala kotizo, dum la 5V-fervojo povas provizi, kia ajn nuna kapablo restos de via potenco post kiam la Pi prenis tion, kion ĝi bezonas.
Frapita bruna estas la grundaj pingloj (GND). Ĉi tiuj pingloj estas precize, kion ili diras - grundaj pingloj - kiuj estas esenca parto de iu ajn elektronika projekto.
(5-a GPIO-pingloj estas fizikaj nombroj 2 kaj 4. 3.3V GPIO-pingloj estas fizikaj nombroj 1 kaj 17. Tero GPIO-pingloj estas fizikaj nombroj 6, 9, 14, 20, 25, 30, 34 kaj 39)
04 de 09
Enmeto / Eligo Pingloj
La verdaj pingloj estas tio, kion mi nomas "generie" enigo / elsendaj pingloj. Ĉi tiuj povas esti facile uzataj kiel enigoj aŭ eliroj sen ia maltrankvilo pri kolizio kun aliaj funkcioj kiel I2C, SPI aŭ UART.
Ĉi tiuj estas la pingloj, kiuj povas sendi potencon al LED, buzzer aŭ aliaj komponantoj, aŭ esti uzataj kiel enigo por legi sensores, ŝaltiloj aŭ alia eniga aparato.
La potenco de eliro de ĉi tiuj pingloj estas 3.3V. Ĉiu pinglo ne devas superi 16mA de fluo, nek enprofundiĝanta aŭ envendado, kaj la tuta aro de GPIO-pingloj ne devas superi pli ol 50mA samtempe. Ĉi tio povas esti limiga, do vi eble devas krei iujn projektojn.
(Ĝeneralaj GPIO-pingloj estas fizikaj nombroj 7, 11, 12, 13, 15, 16, 18, 22, 29, 31, 32, 33, 35, 36, 37, 38 kaj 40)
05 de 09
I2C Pingloj
En flava, ni havas la I2C-pingloj. I2C estas komunika protokolo, kiu en simplaj terminoj permesas al mekanismoj komuniki kun la Frambo Pi. Ĉi tiuj pingloj ankaŭ povas esti uzataj kiel "generitaj" GPIO-pinĉiloj.
Bona ekzemplo de uzado de I2C estas la populara ĉifono de ekspanderigilo de haveno MCP23017, kiu povas doni al vi pliajn enirojn / elirojn per ĉi tiu protokolo I2C.
(I2C GPIO-pingloj estas fizikaj pingaj nombroj 3 kaj 5)
06 de 09
UART (Seriaj) Pingloj
En griza, estas la UART-pingloj. Ĉi tiuj pingloj estas alia komunika protokolo, kiu proponas seriajn ligojn, kaj ankaŭ povas esti uzataj kiel GPI-enigoj / eliroj.
Mia plej ŝatata uzo por UART estas ebligi serian konekton de mia Pi al mia tekkomputilo super USB. Ĉi tio povas esti atingita per aldonaj tabuloj aŭ simplaj kabloj kaj forigas la bezonon de ekrano aŭ interreta konekto por aliri vian Pi.
(UART GPIO-pingloj estas fizikaj pingaj nombroj 8 kaj 10)
07 de 09
SPIaj Pingloj
En rozkolora , ni havas la SPI-poŝojn. SPI estas interfaco-buso, kiu sendas datumojn inter la Pi kaj aliaj aparataro / ekstercentraj. Ĝi estas kutime uzita por ĉenado de aparatoj kiel LED-matrico aŭ ekrano.
Kiel aliaj, ĉi tiuj pingloj ankaŭ povas esti uzataj kiel GPI-enigoj / eliroj ankaŭ.
(SPI-GPIO-pingloj estas fizikaj pingaj nombroj 19, 21, 23, 24 kaj 26)
08 de 09
DNC-Pingloj
Finfine estas du pingloj en bluo, kiuj nuntempe estas etikeditaj kiel DNC, kiuj signifas 'Ne Konekti'. Ĉi tio eble ŝanĝos en la estonteco se la Raspberry Pi Foundation ŝanĝos la tabulojn / programaron.
(DNC GPIO-pingloj estas fizikaj pingaj nombroj 27 kaj 28)
09 de 09
Konvencioj de numerado de GPIO
Kiam kodita kun la GPIO, vi havas la elekton importi la GPIO-bibliotekon laŭ unu maniero - BCM aŭ BOARD.
La opcio, kiun mi preferas, estas GPIO BCM. Ĉi tiu estas la varianta konvencio de Broadcom kaj mi trovas, ke ĝi estas uzata pli komune inter projektoj kaj aparataro-aldonoj.
La dua opcio estas GPIO BOARD. Ĉi tiu metodo uzas la fizikajn pinglojn anstataŭe, kio estas oportuna kiam kalkulataj pingloj, sed vi trovos ĝin uzata malpli en projektoj.
La modo GPIO estas metita kiam importado de la GPIO-biblioteko:
Importi kiel BCM:
Importi RPi.GPIO kiel GPIO GPIO.setmode (GPIO.BCM)Importi kiel BOARDO:
Importi RPi.GPIO kiel GPIO GPIO.setmode (GPIO.BOARD)Ambaŭ ĉi tiuj metodoj faras ĝuste la saman laboron, ĝi estas nur afero pri nombranta prefero.
Mi regule uzas oportunajn etikedojn de GPIO-etikedoj, kiel ekzemple la RasPiO Portsplus (en la bildo) por kontroli ĉu pingloj mi ankaŭ konektas dratojn. Unuflanke montras la BCM-numeron konvencion, la alia montras BOARD - do vi estas kovrita por iu projekto, kiun vi trovos.