Inhoudsopgave:

100+ schakelaars in een enkele pin van Arduino - Ajarnpa
100+ schakelaars in een enkele pin van Arduino - Ajarnpa

Video: 100+ schakelaars in een enkele pin van Arduino - Ajarnpa

Video: 100+ schakelaars in een enkele pin van Arduino - Ajarnpa
Video: How to use up to 10 push button switch with 1 Arduino input pin ANPB-V1 2024, November
Anonim
Image
Image
Laten we bouwen
Laten we bouwen

Invoering

Heb je geen invoerpinnen meer? Maak je geen zorgen, hier is een oplossing zonder shift registers. In deze video gaan we leren over het aansluiten van meer dan 100 schakelaars op een enkele pin van Arduino.

Stap 1: Werktheorie

Bekijk eerst het schakelschema, anders begrijp je niet wat ik zeg. Telkens wanneer ik op een schakelaar druk, wordt het circuit voltooid door een ander aantal weerstanden,

  • Als we in het circuit op de 5e schakelaar drukken, voltooit het circuit alle 4 weerstanden,
  • Als we op de 4e schakelaar drukken, voltooit het circuit via 3 weerstanden,
  • Als we op de 3e schakelaar drukken, wordt het circuit voltooid door 2 weerstanden,
  • Als we op de 2e schakelaar drukken, wordt het circuit voltooid door 1 weerstand,
  • En als we op de 1e schakelaar drukken, wordt het circuit voltooid zonder weerstanden.

Dat betekent dat de spanning die de analoge pin A1 bereikt, voor elke schakelaar anders is, dus we zullen de functie analogRead() gebruiken om de waarden van de pin A1 te lezen en dan gebruiken we een if else if-voorwaarde om verschillende bewerkingen voor elke schakelaar uit te voeren.

Stap 2: Laten we bouwen

  • Sluit eerst vijf drukschakelaars aan op een breadboard.
  • Natuurlijk kun je theoretisch maximaal 1023 schakelaars aansluiten op een 8-bit microcontroller zoals Arduino.
  • Verbind vervolgens weerstanden tussen de drukschakelaars zoals weergegeven in het diagram.
  • Sluit het andere uiteinde van alle schakelaars aan op 5v van Arduino, zoals je hier kunt zien heb ik het zo aangesloten dat het ene uiteinde is verbonden met de blauwe lijn van het baardbord dat is verbonden met de 5v.
  • Sluit vervolgens vanaf het einde van de eindschakelaar een draad aan op analoge pin A1 van Arduino.
  • Sluit vervolgens een weerstand aan over A1 en GND van Arduino, die voor pull-down is, dat wil zeggen om de waarde op nul te houden wanneer er geen schakelaar wordt ingedrukt.

Stap 3: Sluit enkele LED's aan

Sluit enkele LED's aan
Sluit enkele LED's aan

Laten we enkele LED's aansluiten om de werking van ons circuit te controleren.

  • Sluit de LED's aan zoals weergegeven in het circuit,
  • Sluit alle positieve pool alle LED's aan op de 5v.
  • Verbind de negatieve pool van elke LED's met respectievelijk de digitale pin D12 tot D8 van Arduino.
  • Praktisch moeten we de LED's via weerstanden verbinden voor een goede levensduur.

Stap 4: Coderen

Neem een kijkje in het programma. Alle regels zijn correct becommentarieerd.

Laten we nu de code uploaden en hem in actie zien.

Stap 5: Toepassingen

  • Toetsenbord
  • Full-size toetsenbord voor Arduino.
  • Aangepast mini-toetsenbord voor uw Raspberry Pi-tablet, enz.

Stap 6: nadelen

Meerdere schakelaars werken niet in één keer. Als u een andere toepassing kunt bedenken, plaats deze dan in de opmerkingen

Bedankt.

Aanbevolen: