Alt du trenger å vite om Raspberry Pi GPIO Pins

Alt du trenger å vite om Raspberry Pi GPIO Pins / DIY

Raspberry Pi er en billig og liten datamaskin som kan utføre et stort utvalg av oppgaver, inkludert retro gaming og være et hjem mediesenter. Installer Kodi for å slå din Raspberry Pi inn i et hjemmemediasenter. Installer Kodi for å slå din Raspberry Pi inn i et Home Media Center Hvis du har en Raspberry Pi, kan du konvertere den til et billig, men effektivt hjemme mediesenter bare ved å installere Kodi. Les mer . Pi har også en tung satsing på utdanning, med både skrape Komme i gang med Scratch på Raspberry Pi Komme i gang med Scratch på Raspberry Pi Vår Scratch opplæringen kan du ha det gøy med en Raspberry Pi, selv om du ikke vet hvordan å kode . Les mer og Minecraft Pi utgave Lær Python og Elektronikk med Minecraft Pi Edition Lær Python og Elektronikk med Minecraft Pi Edition Har du alltid ønsket å lære å kode, men visste ikke hvor du skal begynne? Lær hvordan du kontrollerer Minecraft på Raspberry Pi ved hjelp av Python og noen enkle elektronikk. Les mer rettet mot å hjelpe unge mennesker å lære å kode, og GPIO-pinnene (Generell Inngang / Utgang) åpne opp en hel verden av DIY elektronisk tinkering og oppfinnelse.

Hva er Raspberry Pi GPIO Pins?

I denne artikkelen vil vi fortelle deg alt du trenger å vite om Pi's GPIO-pinner: hva de kan gjøre, hvordan du bruker dem og feil å unngå mens du bruker dem.

Et notat før vi begynner: Ulike revisjoner av Pi kan variere med pinnene sine! Før du legger til noe i brettet, må du kontrollere at du bruker de riktige. En rask måte å sjekke på er å skrive pinout inn i din Raspberry Pi-terminal, som vil gi et diagram over ditt nåværende oppsett.

GPIO-pinnene er integrert i datamaskinens kretskort. Deres oppførsel kan kontrolleres av brukeren slik at de kan lese data fra sensorer og kontrollere komponenter som lysdioder, motorer og skjermer. Eldre modeller av Pi hadde 26 GPIO-pinner, mens nyere modeller alle har 40. Dette diagrammet viser hva hver pinne gjør:

I det merkede diagrammet ovenfor kan du se at det finnes forskjellige typer GPIO-pinner som tjener forskjellige formål. Du kan finne en interaktiv versjon av dette diagrammet på pinout.xyz Det skisserer også en av de første forvirrende tingene du må kjempe med. Hver pin har to numre knyttet til den. Det er BORDE tall (tallene i sirkelen) og dets BCM (Broadcom SOC kanal) nummer. Du kan velge hvilken konvensjon du skal bruke når du skriver Python-koden:

# 1 - GPIO / BCM nummerering GPIO.setmode (GPIO.BCM) # 2 - Board nummerering GPIO.setmode (GPIO.BOARD) 

Du kan bare bruke en konvensjon i hvert prosjekt, så velg en og hold deg til den. Verken konvensjon er ikke “Ikke sant”, så gå med hvilken som helst som gir mest mening til deg. Det er imidlertid verdt å merke seg at visse eksterne enheter er avhengige av GPIO / BCM nummerering.

For denne artikkelen vil vi holde oss til BORDE nummerering. Så hva gjør pinnene egentlig?

Power Pins

La oss starte med pinnene. Raspberry Pi kan gi både 5v (pins 2 og 4) og 3,3v (pins 1 og 17) kraft. Det gir også en bakke (GND) for kretser på pinnene 6, 9, 14, 20, 25, 30, 34 og 39.

Dessverre er det ikke noe enkelt svar på hvor mye strøm de 5v pinnene kan tegne, da det er avhengig av hvilken strømforsyning du bruker, og hvilke andre komponenter du har festet til Pi. Raspberry Pi 3 vil kun trekke 2,5A fra strømforsyningen, og krever rundt 750mA for oppstart og normal hodeløs drift. Dette betyr at hvis du bruker en 2,5A strømforsyning, kan 5v-pinnene gi en total strøm på rundt 1,7A maksimalt. Irriterende, dette varierer mellom modeller av Pi imidlertid, som dette tabellen viser:

Bildekreditt: raspberrypi.org

For de fleste brukere som bare starter med Pi, vil dette ikke være et problem, men det er noe å huske på når du bruker mer tid med GPIO-pinnene.

3.3V-pinnene er noe enklere, med de siste fremskrittene av Raspberry Pi (Model B + og fremover) som gir opp til 500mA totalt og eldre modeller som bare gir 50mA. Merk at denne nåværende er delt i alle de andre GPIO-pinnene også!

Så disse pinnene kan gi strøm til komponentene dine, men det er alt de gjør. Den virkelige morsomme ting kommer fra resten av pinnene.

Standard GPIO

På oversikten ovenfor, ignorerer du pinnene, så ser du at noen er merket i forskjellige farger. De grønne pinnene er standard GPIO-pinner, og dette er det du vil bruke for de fleste nybegynnerprosjekter. Disse pinnene er i stand til en 3.3v produksjon, også referert til som å sette pinnen HØY i kode. Når en utgangsstift er LAV Dette betyr at det bare gir 0v.

De er også i stand til å ta en inngang på opptil 3,3v, som tappen leser som HØY.

Ikke gi pinnene større enn 3.3v: Dette er en rask måte å steke Pi på!

For en flott guide til å komme i gang med å bruke GPIO-pinnene i et enkelt prosjekt, kan du prøve vår Komme i gang med Raspberry Pi GPIO-prosjektet Komme i gang med GPIO På en Raspberry Pi Komme i gang med GPIO På en Raspberry Pi Hvis du, selv om Arduino var kult, bare vent til du får hendene på en Raspberry Pi - disse tingene er fantastiske. I tillegg til å være en fullt funksjonell datamaskin, har de også en ... Les mer .

Mens vi vil dekke noen av pinnene med spesielle bruksområder i denne artikkelen, kan du bruke noen pinner unntatt kraftpinnene og pinnene 27 og 28 som vanlige GPIO-pinner.

PWM

PWM (Pulse Width Modulation) brukes med komponenter som motorer, servoer og lysdioder ved å sende korte pulser for å kontrollere hvor mye strøm de mottar. Vi brukte det med en Arduino i vår Ultimate Guide til LED Strips opplæring. Ultimate Guide til Kobling av LED-lysstrimler til Arduino Ultimate Guide til Kobling av LED-lysstrimler til Arduino En av de vanligste LED-produktene er LED-stripen. I denne artikkelen vil vi dekke hvordan du konfigurerer de to vanligste typene med en Arduino. Les mer .

PWM er også mulig på Pi. Pin 12 (GPIO 18) og pin 35 (GPIO 35) er maskinvare PWM kapabel, selv om Pi også kan levere programvare PWM gjennom biblioteker som pigpio.

For en introduksjon til koden som kreves for PWM, bør denne enkle LED-lysstyrkeopplæringen hjelpe deg med å komme i gang.

UART

Pins 8 og 10 (GPIO 14 og 15) er UART-pinner, designet for å kommunisere med Pi ved hjelp av seriell port. Det er visse situasjoner hvor det kan være lurt å gjøre dette, men for de fleste nybegynnere å koble til Pi headlessly via SSH Oppsett av Raspberry Pi For Hodeløs Use With SSH Oppsett av Raspberry Pi For Hodeløs bruk med SSH The Raspberry Pi kan akseptere SSH-kommandoer når det er koblet til et lokalt nettverk (enten med Ethernet eller Wi-Fi), slik at du enkelt kan konfigurere det. Fordelene med SSH går utover å forstyrre den daglige screeningen ... Les mer eller bruk en VNC Slik kjører du et eksternt skrivebord på Raspberry Pi med VNC Slik kjører du et eksternt skrivebord på Raspberry Pi med VNC Hva om du trenger tilgang til Raspberry Pi-skrivebordet fra din PC eller laptop, uten å måtte koble til et tastatur, en mus og en skjerm? Det er her VNC kommer inn. Les mer vil trolig være lettere.

Hvis du er interessert i en detaljert oversikt over hvordan seriepinnene fungerer, er dette en flott primer.

SPI

SPI (Serial Peripheral Interface Bus) er en metode for å kommunisere med enheter som RFID-leser vi brukte i vår DIY Smart Lock med Arduino og RFID DIY Smart Lock med Arduino og RFID DIY Smart Lock med Arduino og RFID Her er hvordan du kan bygge en enkel RFID-baserte smart lås ved hjelp av en Arduino som ryggraden og noen få billige komponenter. Les mer prosjekt.

Det tillater enheter å kommunisere med Raspberry Pi synkront, noe som betyr at mye mer data kan passere mellom herre og slave enheter. Hvis du noen gang har brukt en liten berøringsskjerm for Pi, så snakker de slik.

Bilde Kreditt: Gareth Halfacree / flickr.com

Det finnes ulike enheter og utvidelses-HAT for Raspberry Pi som bruker SPI, og det kan åpne opp prosjektene dine for mye mer maskinvare enn de vanlige GPIO-pinnene kan opprettholde. Det krever imidlertid ganske mange ledninger for å få det til å fungere. Det er en grundig oversikt over SPI på Raspberry Pi Foundation nettsiden.

Pins 19, 21, 23, 24, 25 og 26 (GPIO 10, 9, 11, 8, GND og GPIO 26) brukes til å koble til en SPI-enhet, og de er alle nødvendige for jevn drift. En god måte å unngå spaghetti på er å kjøpe en premade forlengelse som Sense HAT, som passer på toppen av bordet ditt og gir den en LED matrise og et bredt utvalg på sensorer. Det har vært en favoritt i flere år nå, og ble til og med brukt på den internasjonale romstasjonen for å gjøre noen eksperimenter!

SPI-protokollen er ikke aktivert som standard på Raspbian, men den kan aktiveres i raspi-config-filen, sammen med I2C.

I2C

I2C (Inter-Integrated Circuit) ligner SPI, men anses generelt å være lettere å sette opp og bruke. Den kommuniserer asynkront, og er i stand til å opprettholde så mange forskjellige enheter som nødvendig, forutsatt at de hver har unike adresseplasser på I2C-bussen. På grunn av dette adresseringssystemet trenger Pi bare to I2C pin-pin 3 (GPIO 2) og pin 5 (GPIO 3), noe som gjør det mye enklere å bruke enn SPI.

Det lille fotavtrykket av I2C åpner et stort utvalg av muligheter. Med standard GPIO-pinner, kan du sette opp en LCD-skjerm og noen knapper tar opp nesten hver pinne, ved hjelp av en I2C-enhet som Adafruit Negative LCD-kontrolleren bringer den ned til bare to pinner!

Sparkfun har en full oversikt over SPI og I2C sammen med eksempler for å komme i gang.

Pins 27 og 28 (merket ID_SD og ID_SC) er også I2C. Det brukes av Pi til interne funksjoner, og også noen HAT-brett. Som regel må du ikke rote med dem med mindre du egentlig vet hva du gjør!

Raspberry Pi: En GPIO Pin for Everything!

Raspberry Pi er den sveitsiske hærkniven av moderne databehandling. Sammen med en enorm mengde flotte daglige bruksområder, åpner det også noen opp til muligheten for å lage sine egne, kule kreasjoner.

Mange Raspberry Pi nybegynnerprosjekter Raspberry Pi-prosjekter for nybegynnere Raspberry Pi-prosjekter for nybegynnere Disse 10 Raspberry Pi-prosjektene for nybegynnere er gode for å få en introduksjon til maskinvaren og programvarefunksjonene til Pi, og vil hjelpe deg med å komme opp og kjøre på kort tid! Les mer bruk protokollene som er omtalt i denne artikkelen, og en hånd på tilnærming er den beste måten å lære. Hold tinkering, og ha det gøy!

.