Stap 2: Het toetsenbord hardware interface bouwen
De Arduino LeoStick heeft gevangen mijn oog voor een tijdje; het is zeer compact en heeft de USB-aansluiting op de PCB - echt handig! Dat maakt het ideaal voor een strakke ruimte. U kunt ook de Arduino Leonardo net zo goed zou werken en wordt ondersteund door de Arduino IDE als standaard.
Op zoek naar uit hoe de verbindingen toetsenbord werkte, ik vond Dit schema (Ga naar de rubriek 'Keyboard Scanning'), die in wezen mij de volgende stukken van informatie geeft:
- De film met 5 contacten heeft de Data lijnen
- De Data lijnen hebben pull-up weerstanden aan + 5V
- De film met 8 contacten heeft de adresregels
- Het toetsenbord is ingedeeld in een 5 x 8-matrix (gegevens x adres)
Ik zal pakken hoe een matrix werkt in de volgende sectie als dekking van de software te schrijven, volstaan met te zeggen dat het belangrijkste is nu dat de data lijnen afzonderlijk hoog worden gehouden. Al deze informatie wordt schematisch weergegeven in het bovenstaande eerste diagram.
Bedrading aan de Arduino
Ik heb ook de volgorde van de pin voor u aansluiten van de Arduino pinnen in de bovenstaande afbeelding. Ik beveel het solderen van de draden en weerstanden eerst, dan de PCB's naar beneden waar je naartoe gaat om te laten plaatsen (idealiter zal zitten ze in de bovenste uitsparing van de deksel). Op die manier kunt u ervoor zorgen dat de verbindingslijnen metalen contacten aan de kant van het membraan dat de blootgestelde verbindingen voordat u soldeer hen heeft. De plaatsing van de aansluitingen nodig flexibel zodat er geen sleepboot of stress het membraan toetsenbord.
Bezuinigen twee lege prototyping PCB's zijn groot genoeg om de verbindingslijnen van het toetsenbord, plus de weerstanden en de draden koppelen aan de Arduino. De voorgestelde 30x45mm moet een goede pasvorm. Wanneer u dit doet, laat uw Arduino draden langer dan je nodig hebt. U kunt hen verkorten zodra u de posities van alles hebt geregeld. Mijn PCB's met ZX Spectrum connectors zijn hierboven in de tweede afbeelding. De weerstanden op de gegevens PCB (groen, rechts) alle heeft de gele 5V draad aan de bovenkant van de PCB van de connector verbinden.
De blauwe lijnen van het adres zijn gewijzigd door de controller (onze onafhankelijke variabele) en de groene data lijnen zijn getest (onze afhankelijke variabele). Dus, de adresregels sluit aan op de digitale pennen (gemarkeerd met getallen 0-13) en de data lijnen zijn aangesloten op de analoge input pinnen (gemarkeerd A0-A4) in de bovenstaande volgorde.
In het derde beeld, zijn de PCB's gewoon geplaatst in een Arduino Uno zodat u kunt zien hoe het eruit bekabeld. Als u de Leonardo gebruikt, zijn de pin lay-outs voor Leonardo en Uno hetzelfde, zodat je dit precies kunt kopiëren. U ziet de data lijnen in het groen naar de A0-4 pinnen, de blauwe adresregels gonna de D2-9 pinnen en de gele + 5v draad gaat naar een verbindingspunt van de VCC. Gebruik digitale pennen 2-9 in plaats van 0-7 omdat digitale pinnen 0 en 1 voor de seriële aansluiting (Tx en Rx) die zal worden gebruikt door de USB-aansluiting worden gebruikt. Als dergelijke, verlof digitale pinnen 0 en 1 los(gebruik pinnen 2-9). Zodra gesoldeerd aan de LeoStick en die in de deksel, moet uw Spectrum-USB Arduino toetsenbordadapter lijken op de vierde afbeelding. Merk op dat de linten nog niet verbonden.
Testen van de verbindingen
Test uw solderen door in te stellen van alle de pin nummers (< pin >) naar uitvoer voor zowel de analoge en digitale pennen in dit stadium:
pinMode(<pin>, OUTPUT);
en stel hen aan + 5V:
digitalWrite(<pin>, HIGH);
Op die manier kunt u uitvoeren via alle verbindingen met het toetsenbord in de connectoren (en de + 5V kant van de resitors) met een multimeter en controleren op + 5V, zorgen voor goede verbindingen. Zodra gelukkig, bevestigen de PCB's in overeenstemming met de verbindingen van de membraan een lijmpistool te gebruiken, zoals in de laatste beelden hierboven. Wanneer ze veilig zijn, dan kunt u voorzichtig de stekker het membraan terug in. Aangezien het membraan zo delicaat is, houden de films als beschutte en uncreased mogelijk door zachtjes verpakking hen in het ruimer bovengedeelte van de hoofdletters, zoals wordt weergegeven. Het plakband zal zachtjes houd hen plat dus over buigen van controle en verkeer te minimaliseren terwijl de zaak wordt geopend en gesloten. Dat is de hardware klaar om te gaan!