Stap 21: Knoppen of een toetsenbord aansluiten op de Raspberry Pi
In de laatste herhaling die de Raspberry Pi zonder een scherm opstarten zal, kan de gebruiker om te selecteren hoeveel cijfers van π ze wilt afdrukken, waarna ze afdrukken.
Het zou een beetje omslachtig om dit te doen met volledige maat toetsenbord dus heb ik besloten een mini toetsenblok gebruiken. U kunt ook 3 individuele drukknoppen gebruiken als u niet over een toetsenbord beschikt.
Volg het bedradingsschema boven het toetsenbord of de knoppen verbinden met uw Pi. Als u gebruikmaakt van een toetsenbord moet er één gemeenschappelijke pin die u met V ++ op de Pi verbinden moet; 3 andere toetsenbord-pinnen sluit aan op de weerstanden in het diagram weergegeven.
U zich misschien afvragen hoe het circuit functies, en waarom we niet gewoon rechtstreeks met de ingangen van de Pi de knoppen verbinden. Het antwoord is dat in tegenstelling tot een LED die oplicht afhankelijk van de huidige, de Pi spanning op de "inputs", hetgeen dat een build detecteert van statische elektriciteit betekent leiden de ingang tot kan. Om dit te vermijden verbinden we elke pin aan de grond door middel van een 10 k ohm weerstand. Dit houdt de ingangsspanning om de Pi "getrokken" aan 0v, maar wanneer de knop wordt ingedrukt de invoer pin wordt aangesloten op de 5v-bron. De weerstand moet groot genoeg zijn om te voorkomen dat een grote stroom wordt ontleend aan de Pi wanneer de knop wordt gedrukt, die de Pi zou schaden.
Zodra u hebt voltooid de knoppen of toetsenbord verbinden met uw Pi u of de Pi kan detecteren de knop persen testen kunt door te typen:
Als u op een willekeurige knop drukt, het programma moet worden afgedrukt (naar het scherm niet de printer):
Knop Ingedrukt
Als dit niet gebeurt, Controleer uw bedrading en probeer het opnieuw. Als een knop nog steeds niet zal het programma print, probeer rechtstreeks verbinding maken met de pin 5v. Als het programma reageert hebt u een defecte knop, zo niet moet u wellicht een defecte Pi.
Om te zien hoe button_check.py werken openen met nano door te typen:
Het programma moet er zo uitzien:
In geval u niet bekend bent met elk type van GPIO bibliotheek leg ik de basics.
Eerst moet een pin op de Pi worden ingesteld om te detecteren of een spanning of een uitgangsspanning.
Als we willen knooppersen op pin 23 detecteren we gebruiken:
Als we in plaats daarvan wilden een uitgangsspanning naar pin 23 we gebruiken:
Om te lezen de spanning op pin 23 van de GPIO die we gebruiken:
die een 1 als resultaat als een spanning aanwezig op de pin of een 0 is als er geen spanning op de pin.
De eerste regel is van cruciaal belang voor het correct functioneren van het programma, omdat het vertelt de Pi welke chip het is met behulp van:
Wanneer het programma een knooppers detecteert wacht het 0,2 seconden om te voorkomen dat het programma afdrukken uit te veel berichten: