PyPrintPi på en Raspberry Pi (21 / 23 steg)

Steg 21: Ansluta knappar eller en knappsats till Raspberry Pi



I den slutliga iterationen Raspberry Pi kommer att starta upp utan en skärm, tillåter användaren att välja hur många siffror av π de vill skriva ut och sedan skriva ut dem.

Det skulle vara lite bökigt att göra detta med full storlek klaviatur så jag beslutade att använda en mini keypad. Du kan också använda 3 individuella knapparna om du inte har en knappsats.

Följa kopplingsschemat ovan att ansluta tangentbordet eller knappar till din Pi. Om du använder ett tangentbord bör det finnas en gemensam pin som du ska ansluta till V ++ på Pi; Anslut 3 andra knappsatsen pins till motstånden visas i diagrammet.

Du kanske undrar hur krets funktioner, och varför vi inte bara ansluta ingångar på Pi direkt till knapparna. Svaret är att till skillnad från en LED som lyser upp baserat på ström, Pi upptäcker spänning på dess ingångar vilket innebär att en bygga upp av statisk elektricitet kan utlösa indata. För att undvika detta koppla vi varje stift till marken genom en 10 k motstånd. Detta håller spänningen till Pi "drog" till 0v, men när knappen trycks in PIN-koden blir ansluten till 5v källan. Motståndet skall vara tillräckligt stor för att förhindra en stor ström dras från Pi när knappen trycks, som skulle skada Pi.

När du har anslutit den knappar eller tangentbordet till din Pi kan du testa om Pi kan upptäcka knapptryckningar genom att skriva:

sudo python3 button_check.py

Om du trycker på någon knapp, programmet ska skriva ut (för att skärmen inte skrivaren):

Knappen Tryckte

Om detta inte sker kontrollera ditt ledningar och försök igen. Om en knapp fortfarande inte kommer att göra programmet print, prova att ansluta pinnen direkt till 5v. Om programmet svarar du har en trasig knapp, om inte du kan ha en felaktig Pi.

För att se hur button_check.py fungerar öppna den med nano genom att skriva:

Nano button_check.py

Programmet bör se ut så här:

importera RPi.GPIO som GPIO
Importera tid

#set är upp gpio korrekt
GPIO.setmode (GPIO. BCM)
GPIO.setup (23, GPIO. I)
GPIO.setup (24, GPIO. I)
GPIO.setup (25, GPIO. I)

samtidigt sant:
om (GPIO.input(23)):
skriva ut ("Knapp1 pressad")
Time.Sleep(0.2) #waits 0,2 sekunder att undvika knappen bounce

om (GPIO.input(24)):
skriva ut ("Button2" tryckt")
Time.Sleep(0.2) #waits 0,2 sekunder att undvika knappen bounce

om (GPIO.input(25)):
skriva ut ("Button3" tryckt")
Time.Sleep(0.2) #waits 0,2 sekunder att undvika knappen bounce

Om du inte är bekant med någon typ av GPIO bibliotek ska jag förklara grunderna.

Först måste en pin på Pi ställas in till antingen upptäcka en spänning eller till en utspänning.

Om vi vill identifiera knapptryckningar på stift 23 använder vi:

GPIO.setup (23, GPIO. I)

Om vi istället ville utspänning till stift 23 använder vi:

GPIO.setup (23, GPIO. OUT)

Att läsa spänningen på pin 23 av GPIO vi använder:

GPIO.input(23)

som returnerar en 1 om en spänning finns på PIN-koden eller 0 om ingen spänning på stiftet.

Den första raden är avgörande för en korrekt fungerande programmet eftersom det säger Pi vilka krets är det med:

GPIO.setmode (GPIO. BCM)

När programmet upptäcker en knapptryckning väntar det 0.2 sekunder att förhindra program utskriva ut för många meddelanden:

Time.Sleep(0.2)

Se Steg
Relaterade Ämnen

Raspberry Pi dokument Scanner med automatisk belasta upp till Dropbox.

Har du någonsin fått orolig när du inte har kunnat hitta en räkning eller post-it lapp som du verkligen behövs? Bra med denna Raspberry Pi dokument Scanner nu behöver du inte! Alla dina anteckningar, kvitton och handlingar kommer nu att ett klick bor...

En riktigt billig Raspberry Pi GPIO kabel

detta instructable kan nås på författarens hemsida - http://www.neatinformation.com/howto/Pi%20GPIO.html. Om du länkar till detta instructable från en annan webbplats, vänligen inkludera en länk till webbplatsen Ordentlig Information .Projektet beskr...

Öka din verklighet med iTorch raspberry pi ficklampa projektorn

UPPDATERING: Den 3 maj - spela Minecraft på den nyare iTorch :)UPPDATERING: Ny iTorch 3D tryckta version! & & Äntligen lagt upp några filmer, hoppas du gillar dem. :)Inlägg av ITorch mediedelning.https://www.Facebook.com/Photo.php?v=29239404759309...

Automatiserad Aeroponics systemet med Raspberry Pi

i detta Instructable, vi lär dig att göra en Aeroponics systemet som styrs via Raspberry Pi, och använder modulen Raspberry Pi kamera för att ta bilder av dina växter. Aeroponics är en ganska okonventionell metod av trädgårdsarbete, men det är det so...

CoPiino fuktkontroll - raspberry pi och arduino

Jag kom nyligen över en vän till mig. Vi pratade om våra senaste projekt där han slutligen berättade om sin källare som har mycket hög luftfuktighet och är för närvarande inte att bra plats där du vill köra projekt.Detta fick oss att tänka på en ny p...

Hemautomation med nod js, raspberry pi och heimcontrol

I guiden kommer att göra beskriver hur du använder heimcontrol plattform (är NodeJs program för hemautomation öppen källkod under MIT licens)Några av där funktioner:Lyhörda : responsive design ger dig bekväm kontroll hem enheter använda din smartphon...

Arduino / Raspberry Pi fallet med OpenCase

OpenCase kan du enkelt dimension och generera DXF filer för elektronik kapslingar. Du sätter i materialtjockleken, invändiga mått, och berätta det där att skära hål och utskärningar, och det gör resten. OpenSCAD används för alla beräkningar och gener...

Lätt Raspberry Pi baserad skärmsläckare/bildspel för utställningar/butik Front

På utställningar vill du ofta Visa upp ditt arbete i hopp om att locka potentiella kunder. Den här också arbeten för Fönstren av butiker att marknadsföra produkter som säljs inom. De flesta kommer helt enkelt skapa en stor fast bild affisch till stor...

Raspberry Pi I2C (Python)

i detta instructable, jag kommer att förklara hur man använder I2C på Pi, med exempel på CMPS03 kompass modulen och SRF08 ultraljud sortiment, med hjälp av python. Jag kommer att förklara rakt igenom installera OS, att se till att beroenden och allt...

Kör Linux Terminal på Windows med DHCP och Raspberry Pi

Vad du behöver:Dator med Windows installeratRaspberry Pi (jag rekommenderar B + men någon kommer att fungera)SD-kort med Raspberry Pi bild utarbetatsEthernet-kabelStrömkälla för Raspberry PiDHCP-servern (finns här)PuTTY (finns här)Steg 1: Förbered DH...

Skicka en kopia av dina bilder och videor i din Android-telefon till Raspberry Pi med Bluetooth

IntroduktionDetta instructable byggd på en tidigare instructable "vända Raspberry Pi i en Bluetooth-enhet som jag skapat.Foton och videoklipp på min Android telefon säkerhetskopieras automatiskt till Google + Foto moln. Men vill jag spara en kopia i...

Förvandla Raspberry Pi till Network File System version 4 (NFSv4) server

IntroduktionNätverk-filen System(NFS) kan samtidigt köra i version 2, 3, 4. NFS version 4(NFSv4) har flera förbättringar över NFSv2 och NFSv3. De förbättringar som jag gillar mest är:NFSv4 gör konfigurera brandväggen enkelt eftersom NFSv4 använder en...

AirPlay Radio med Raspberry Pi och WiFi

Innan jag började arbeta för Pelagicore vann jag två Raspberry Pi: s (kort RP) som de sponsrade. En eftersom jag var en av de första människorna på foss-gbg epostlistan som de började. Det är för folk från Göteborg och omgivning som vill gå med andra...

Digital notställ: Raspberry Pi + Touchscreen

IMSLP är en av de största sakerna att hända i klassisk musikvärlden under de senaste minne. För dem som inte vet, är IMSLP.org en online-bibliotek med alla noter som inte längre är under copyright-skydd. Du kan hitta ganska mycket något skrivet av Be...

Institutionen för redundans institutionen: Raspberry Pi hallon paj

Pi, naturligtvis, är ett användbart verktyg i matematik- men en Raspberry Pi är ett användbart verktyg i alla möjliga sätt. Vi är mycket glada över att äga en Raspberry Pi - som är ungefär som naken mullvad råttan datorer: det är ett kreditkort storl...

0-5V Analog insignal från Raspberry Pi ett diagram på webben

med hjälp av PIC PI expansionskort i kombination med din Raspberry Pi kommer jag visa dig hur du kan diagram analoga spänningar till CosmMaskinvara som behövs för detta projekt1 x Raspberry Pi1 x PIC PI utveckling styrelsen (du kommer att kunna köpa...

1970-talet raspberry Pi Amazon AlexaPhone

Detta är en av 1970-talet-style trimphone som jag har konverterat för att hysa en Raspberry Pi kör Amazons Alexa röstsökningstjänsten.För att använda det du bara lyfta luren, tala din fråga, hänga upp och alexas svar levereras via en inbyggd högtalar...

1981 Portable VCR Raspberry PI Media Centre

Detta är en tidig 80-Sharp VC - 2300H bärbara Videobandspelare som jag har konverterat - det har nu en Raspberry Pi i centrum, kör de utmärkta Raspbmc medierna Center software. Andra uppgraderingar inkluderar en snazzy arduino-baserad klocka och en E...

2 sätt byta med Raspberry PI och Berry IO

Min allra första instructable...Jag postat en video på youtube på ett projekt jag gjorde under min semester, här är en länk:Efter mycket mail och frågor från människor som ber om detaljerna till denna 2 sätt byta, jag bestämde mig att utarbeta detta...