Advertentie
De Raspberry Pi is een goedkope en kleine computer die een groot aantal taken kan uitvoeren, waaronder retro gaming en zijnde een thuis mediacentrum Installeer Kodi om van je Raspberry Pi een thuismediacentrum te makenAls je een Raspberry Pi hebt, kun je er een goedkoop maar effectief thuismediacentrum van maken door Kodi te installeren. Lees verder . De Pi heeft ook een sterke focus op onderwijs, met beide Krassen Aan de slag met Scratch op de Raspberry PiMet onze Scratch-zelfstudie kun je plezier beleven aan een Raspberry Pi, zelfs als je niet weet hoe je moet coderen. Lees verder en Minecraft Pi-editie Leer Python en elektronica met Minecraft Pi EditionHeb je altijd al willen leren coderen, maar wist je niet waar je moest beginnen? Leer hoe je Minecraft op de Raspberry Pi bestuurt met Python en wat eenvoudige elektronica. Lees verder gericht op het helpen van jongeren bij het leren coderen, en de GPIO-pinnen (Invoer / uitvoer voor algemeen gebruik) een hele wereld van elektronisch knutselen en uitvinden voor doe-het-zelf openen.
Wat zijn Raspberry Pi GPIO-pinnen?
In dit artikel zullen we je alles vertellen wat je moet weten over de PiIO GPIO-pinnen: wat ze kunnen doen, hoe ze te gebruiken en fouten die je moet vermijden tijdens het gebruik ervan.
Een opmerking voordat we beginnen: Verschillende revisies van de Pi kunnen variëren met hun pinnen! Voordat u iets op uw bord bevestigt, moet u ervoor zorgen dat u de juiste gebruikt. Een snelle manier om te controleren is typen pinout in de terminal van je Raspberry Pi, die een diagram van je huidige setup zal weergeven.
De GPIO-pinnen zijn geïntegreerd in de printplaat van de computer. Hun gedrag kan door de gebruiker worden gecontroleerd, zodat ze gegevens van sensoren kunnen lezen en componenten zoals LED's, motoren en displays kunnen besturen. Oudere modellen van de Pi hadden 26 GPIO-pinnen, terwijl de nieuwere modellen er allemaal 40 hebben. Deze grafiek laat zien wat elke pin doet:
In het gelabelde diagram hierboven ziet u dat er verschillende soorten GPIO-pinnen zijn die verschillende doeleinden dienen. U kunt een interactieve versie van deze kaart vinden op pinout.xyz Het schetst ook een van de eerste verwarrende dingen waarmee u te maken zult krijgen. Elke pin heeft twee nummers. Haar BORD nummer (de cijfers in de cirkel) en zijn BCM (Broadcom SOC-kanaal) nummer. U kunt kiezen welke conventie u wilt gebruiken wanneer u uw Python-code schrijft:
# 1 - GPIO / BCM-nummering. GPIO.setmode (GPIO.BCM) # 2 - Bordnummering. GPIO.setmode (GPIO.BOARD)
U kunt in elk project slechts één conventie gebruiken, dus kies er een en houd u eraan. Geen van beide conventies is 'juist', dus ga met degene die voor u het meest logisch is. Het is echter vermeldenswaard dat bepaalde randapparatuur afhankelijk is van GPIO / BCM-nummering.
Voor dit artikel houden we vast BORD nummering. Dus wat doen de pinnen eigenlijk?
Stroompinnen
Laten we beginnen met de stroompinnen. De Raspberry Pi kan zowel 5v (pinnen 2 en 4) als 3,3v (pinnen 1 en 17) stroom leveren. Het biedt ook een grond (GND) voor circuits op pinnen 6, 9, 14, 20, 25, 30, 34 en 39.
Helaas is er geen enkel antwoord op hoeveel stroom de 5v-stroompinnen kunnen trekken, omdat het afhankelijk is van de voeding die u gebruikt en welke andere componenten die u op uw Pi hebt aangesloten. De Raspberry Pi 3 haalt slechts 2,5 A uit de voeding en heeft ongeveer 750 mA nodig om op te starten en normaal zonder hoofd operatie. Dit betekent dat als u een 2,5A-voeding gebruikt, de 5v-pinnen een totale stroom van ongeveer 1,7A maximaal kunnen leveren. Vervelend genoeg varieert dit echter tussen Pi-modellen, zoals deze tabel laat zien:
Voor de meeste gebruikers die net met de Pi beginnen, is dit geen probleem, maar het is iets om in gedachten te houden als je meer tijd doorbrengt met de GPIO-pinnen.
De 3.3v-pinnen zijn iets eenvoudiger, met recente Raspberry Pi-revisies (vanaf model B +) tot 500mA totaal, en oudere modellen bieden gewoon 50mA. Merk op dat deze stroom ook wordt gedeeld door alle andere GPIO-pinnen!
Deze pinnen kunnen dus stroom leveren aan uw componenten, maar dat is alles wat ze doen. De echte leuke dingen komen van de rest van de pinnen.
Standaard GPIO
Op de bovenstaande tabel ziet u dat als u de stroompinnen negeert, sommige zijn gemarkeerd in verschillende kleuren. De groene pinnen zijn standaard GPIO-pinnen, en dit zijn wat je zult gebruiken voor de meeste beginnersprojecten. Deze pinnen zijn in staat tot 3.3v output, ook wel het instellen van de pin HOOG in code. Wanneer een output pin is LAAG dit betekent dat het simpelweg 0v levert.
Ze zijn ook in staat om een invoer van maximaal 3.3v, wat de pin leest als HOOG.
Voorzie de pinnen niet van meer dan 3.3v: dit is een snelle manier om je Pi te bakken!
Probeer onze voor een geweldige gids om aan de slag te gaan met het gebruik van de GPIO-pinnen in een eenvoudig project Aan de slag met het Raspberry Pi GPIO-project Aan de slag met GPIO op een Raspberry PiAls je dacht dat de Arduino cool was, wacht dan maar tot je een Raspberry Pi in handen hebt - deze dingen zijn geweldig. Ze zijn niet alleen een volledig functionele computer, maar hebben ook een ... Lees verder .
Hoewel we in dit artikel enkele pinnen met speciale toepassingen behandelen, kunt u alle pinnen gebruiken behalve de power pins, en pins 27 en 28 als gewone GPIO-pinnen.
PWM
PWM (Pulse Width Modulation) wordt gebruikt met componenten zoals motoren, servo's en LED's door korte pulsen te sturen om te bepalen hoeveel vermogen ze ontvangen. We gebruikten het met een Arduino in onze Ultieme gids voor LED-strips tutorial Ultieme gids voor het aansluiten van LED-lichtstrips op ArduinoEen van de meest voorkomende LED-producten is de LED-strip. In dit artikel gaan we in op het instellen van de twee meest voorkomende typen met een Arduino. Lees verder .
PWM is ook mogelijk op de Pi. Pin 12 (GPIO 18) en pin 35 (GPIO 35) zijn geschikt voor hardware PWM, hoewel de Pi ook in staat is om software PWM te leveren via bibliotheken zoals Pigpio.
Voor een inleiding tot de code die vereist is voor PWM, is dit eenvoudig LED-helderheid tutorial zou je op weg moeten helpen.
UART
Pinnen 8 en 10 (GPIO 14 en 15) zijn UART-pinnen, ontworpen voor communicatie met de Pi via de seriële poort. Er zijn bepaalde situaties waarin u dit misschien wilt doen, maar voor de meeste beginners die verbinding maken met uw Pi zonder hoofd via SSH Uw Raspberry Pi instellen voor gebruik zonder hoofd met SSHDe Raspberry Pi kan SSH-opdrachten accepteren wanneer deze is verbonden met een lokaal netwerk (via Ethernet of Wi-Fi), zodat u deze eenvoudig kunt instellen. De voordelen van SSH gaan verder dan het verstoren van de dagelijkse screening ... Lees verder of met behulp van een VNC Een extern bureaublad uitvoeren op Raspberry Pi met VNCWat als u toegang nodig heeft tot de Raspberry Pi-desktop vanaf uw pc of laptop, zonder dat u een toetsenbord, muis en monitor hoeft aan te sluiten? Dit is waar VNC binnenkomt. Lees verder zal waarschijnlijk gemakkelijker zijn.
Als u geïnteresseerd bent in een gedetailleerd overzicht van hoe de seriële pinnen werken, dit is een geweldige inleiding.
SPI
SPI (Serial Peripheral Interface bus) is een methode om te communiceren met apparaten zoals de RFID-lezer die we in onze hebben gebruikt DIY Smart Lock met Arduino en RFID DIY Smart Lock met Arduino en RFIDHier leest u hoe u een eenvoudig op RFID gebaseerd slim slot bouwt met een Arduino als ruggengraat en een paar goedkope componenten. Lees verder project.
Het stelt apparaten in staat om synchroon met de Raspberry Pi te communiceren, wat betekent dat er veel meer gegevens kunnen worden overgedragen tussen de meester en slaaf apparaten. Als u ooit een klein touchscreen voor je Pi, dit is hoe ze communiceerden.
Er zijn verschillende apparaten en uitbreidingshats voor de Raspberry Pi die SPI gebruiken, en het kan uw projecten openen voor veel meer hardware dan de gewone GPIO-pinnen kunnen ondersteunen. Het vereist echter behoorlijk wat bedrading om het te laten werken. Er is een diepgaand overzicht van SPI op de Website van de Raspberry Pi-stichting.
Pinnen 19, 21, 23, 24, 25 en 26 (GPIO 10, 9, 11, 8, GND en GPIO 26) worden gebruikt om verbinding te maken met een SPI-apparaat en ze zijn allemaal vereist voor een soepele werking. Een goede manier om alle spaghetti te vermijden, is door een premade-extensie zoals de Sense HAT, die bovenop je board past en voorzien is van een led matrix en een breed scala aan sensoren. Het is al een aantal jaren een favoriet en was zelfs gebruikt op het International Space Station om wat experimenten te doen!
Het SPI-protocol is niet standaard ingeschakeld op Raspbian, maar het kan worden ingeschakeld in het raspi-config-bestand, samen met I2C.
I2C
I2C (Inter-Integrated Circuit) is vergelijkbaar met SPI, maar wordt over het algemeen beschouwd als eenvoudiger in te stellen en te gebruiken. Het communiceert asynchroon en kan zoveel verschillende apparaten ondersteunen als nodig is, op voorwaarde dat ze elk unieke adresplaatsen op de I2C-bus hebben. Vanwege dit adressysteem heeft de Pi slechts twee I2C-pinnen nodig: pin 3 (GPIO 2) en pin 5 (GPIO 3), waardoor het veel eenvoudiger te gebruiken is dan SPI.
De kleine voetafdruk van I2C biedt een enorm scala aan mogelijkheden. Met standaard GPIO-pinnen zou het instellen van een LCD-scherm en sommige knoppen bijna elke pin in beslag nemen, met behulp van een I2C-apparaat zoals de Adafruit Negatieve LCD-controller brengt het op slechts twee pinnen!
Sparkfun hebben een volledig overzicht van SPI en I2C samen met voorbeelden om u op weg te helpen.
Pinnen 27 en 28 (gemarkeerd ID_SD en ID_SC) zijn ook I2C. Er worden door de Pi gebruikt voor interne functies, en ook enkele HAT-boards. Maak in het algemeen geen grapjes met ze, tenzij jij werkelijk weet wat je doet!
Raspberry Pi: een GPIO-pin voor alles!
De Raspberry Pi is het Zwitserse zakmes van modern computergebruik. Samen met een enorme hoeveelheid geweldig dagelijks gebruik, het opent ook iedereen voor de mogelijkheid om zijn eigen coole creaties te maken.
Veel Raspberry Pi-beginnersprojecten De 11 beste Raspberry Pi-projecten voor beginnersDeze Raspberry Pi-projecten voor beginners zijn geweldig om aan de slag te gaan met de mogelijkheden van elk Raspberry Pi-model. Lees verder gebruik de protocollen die in dit artikel worden besproken, en een praktische benadering is de beste manier om te leren. Blijf knutselen en veel plezier!
Ian Buckley is freelance journalist, muzikant, artiest en videoproducent en woont in Berlijn, Duitsland. Als hij niet schrijft of op het podium staat, sleutelt hij aan doe-het-elektronica of code in de hoop een gekke wetenschapper te worden.