Stap 5: Elektronica I - toetsenbord
Een standaard 4 x 4 toetsenbord werd gebruikt om de drank bestellingen aangaan met de barman. Het toetsenblok gaat via een route die vervolgens met een analoge pin op de Arduino, macht en grond verbindt. Zonder dit circuit, zou het toetsenblok 8 digitale pinnen van de Arduino in tegenstelling tot de één analoge pin vereisen. Ik heb de algemene circuit en getKeypad() functie van deze YouTube-video:
Hij bevat koppelingen voor het circuit diagram (imgur.com/fpBat) en de code zo goed.
Het circuit is in wezen een voltage divider-matrix. De manier waarop de schakeling werkt is dat het signaal door verschillende weerstanden afhankelijk van welke reizen zal is knop ingedrukt. Deze analoge signaal wordt vervolgens doorgegeven via de getKeypad() functie in de code waarmee wordt bepaald welke knop werd ingedrukt. Het circuit wordt getoond op het breadboard in de eerste afbeelding ook zoals in de link hierboven. Bouw van het circuit op een breadboard eerst, dan testen.
Bij het testen van mijn circuit, keerde sommige van de knoppen, wanneer ingedrukt, de aangrenzende knop. Dit is te wijten aan de tolerantie van de weerstanden. De beste oplossing zou moeten nemen van het analoge signaal voor elke knop ingedrukt, ze treden in een Excel-werkblad en vinden van de curve van de beste pasvorm, zoals in de video. De vergelijking in de code vervangen door deze nieuwe vergelijking. Ik was lui en toegevoegd 10 Ohm weerstanden had ik tot rond waar nodig aan te passen van het signaal van een bepaalde knop naar het gewenste niveau. Dit wordt opgemerkt in thethirdpicture. Als u eenmaal uw circuit op de juiste manier werken met de code kunt u beginnen met het permanent aanbrengen het circuit aan een PCB.
Om te bouwen van het circuit op de PCB vond ik het makkelijkst te monteren de weerstanden verticaal. Dit neemt minder ruimte in beslag. Om te overbruggen aansluitingen op de onderkant van de PCB, soldeer de weerstand tot de laatste bestemming en snijd wat overblijft. U kunt vervolgens alle verbindingspunten u langs de lengte van de leiding moet soldeer.