HacKeyboard, een mechanisch toetsenbord gebouwd vanaf nul (24 / 42 stap)

Stap 24: Selectie van de onderdelen, ontwerpen van het schema en PCB


In het begin van dit instructable ik mits een lijst van onderdelen die in het elektronica-gedeelte van dit project zullen worden gebruikt.

Net als extra informatie, de lijst met onderdelen die is het resultaat van drie iteraties van het schema en PCB. Te bereiken van het uiteindelijke ontwerp ik drie versies van het schema, drie versies van de PCB ontworpen, handmatig vervaardigd drie enorme dubbele Dubbelzijdige PCB's, met inbegrip van boren, vias en solderen onderdelen. Het kostte me wat tijd om al dit te doen, maar ik niet geven en bereikt een definitief ontwerp van werken.

Graag voor u, die u niet hoeft te doorlopen allemaal omdat nu het ontwerp van werken volledig open source is en u gewoon gebruik van het maken kunt het of werken aan uw eigen wijzigingen (verschillende schakelopties, verschillende lay-outs, extra functies, enz.)

Zoals eerder vermeld gebruikte ik KiCAD voor de elektronica en PCB design. Alle KiCAD projectbestanden en schema en PCB in PDF-formaat kan worden gedownload in mijn Github.

Korte uitleg van de elektronica: HacKeyboard heeft een enkele microcontroller, de PIC18F4550, die ingebouwde USB heeft. Het woord 'microcontroller' en de verwijzing 'PIC18F4550' lijkt misschien ingewikkeld of vreemd maar het is in principe de dezelfde soort dingen als de ATMega328 die u vindt op Arduinos, maar van een andere fabrikant, met een verschillende architectuur en verschillende ingebouwde functies. Met dat gezegd, is de microcontroller verantwoordelijk voor het beheer en de controle van alles op het toetsenbord:

  • De matrix schakelaar lezen: Rekening houdend met dat een toetsenbord een grote matrix van switches is, zijn elke kolom en elke regel aangesloten op een verschillende IO (input/output) pin op de microcontroller. De microcontroller draait elke kolom op op elke tijd, één voor één en leest de niveaus van de logica in alle het spoorlijnen, evalueren welke schakelopties in die kolom worden ingedrukt. Vervolgens wordt die kolom uitgeschakeld en opbrengst voor de volgende. Dit gebeurt meerdere keren per seconde. Het is een erg snel proces dat altijd op de microcontroller draait. Zodra de toetsaanslagen worden geëvalueerd output het de respectieve tekens via USB;
  • Controle van de verborgen USB Flash Drive: Het flashstation wordt gevoed via de MAX682, die is een 5V-lading pomp regulator dat een pin 'Afsluiten heeft'. Als u wilt activeren of deactiveren van de USB flash drive, de microcontroller activeert of deactiveert deze pin, draaien in- of uitschakelen.
  • Opslaan van macro's en belangrijke log: In het circuit is er een 24AA512 seriële EEPROM (64 K x 8 bits) die een geheugen dat wordt gebruikt is voor het opslaan van alle macro's en het logboek van de kernactiviteit. Wanneer in besparing modi, de microcontroller, die is verbonden met het geheugen via een serieel protocol (SPI) naar stuurt posities specifieke geheugen de sleutels die moeten worden opgeslagen. Dit geheugen houdt dat de gegevens, zelfs als u de verbinding verbreken van het toetsenbord. In de standaard firmware elke positie van de macro kan het opslaan van maximaal 150 bytes en de rest van het geheugen wordt gebruikt door de belangrijkste logger. Dit kan eenvoudig worden aangepast door alleen het veranderen van de waarden van sommige adres in de verstrekte broncode.
  • Controle van de WS2812B RGB LED's: de microcontroller is ook verantwoordelijk voor het beheersen van de RGB LED's. Deze LED's hebben hun eigen serieel protocol waar een '0' wordt vertegenwoordigd door een puls met een bepaalde timing en een '1' wordt vertegenwoordigd door een ander pulse met een verschillende timing (Controleer het gegevensblad timings). De LED's hebben een te bouwen in 3 bytes geheugen waar ze de 3 waarden opslaan voor rood, groen en blauw. Deze waarden moeten in een bereik van 0 tot 255. Ze hebben ook een ingebouwde shift register, waarmee ze informatie doorgeven aan de volgende LEDs. Hebt u slechts 2 WS2812B LEDs, u uw microcontroller verbinden met de gegevens invoer pin door slechts één van hen en u de gegevens invoer pin van de tweede naar de uitgang-pins van gegevens van de eerste verbinding. De microcontroller zal moeten verzenden 6 bytes, 3 voor elke LED, vanaf de tweede LED (meer verre in termen van verbindingen). De eerste LED zal de informatie doorgeven aan de tweede.

Gerelateerde Artikelen

How to Build een Boba Fett Jetpack vanaf nul

How to Build een Boba Fett Jetpack vanaf nul

Laten we eerlijk zijn, 350 dollar is een hoop geld te gooien naar beneden een gegoten jetpack uitrusting Voltooi uw Boba Fett Kostuum te kopen. Gelukkig, het is niet onmogelijk samen te stellen een jetpack vanaf nul (tenminste dat is wat ik zei tegen
Maak een mooie oude klok vanaf nul

Maak een mooie oude klok vanaf nul

In dit Instructable I 'm gonna een overzicht van de stappen mijn partner Tina en ik nam toen we waren deze build uitzoeken. We waren ingehuurd door een film company om een prop klok (de klok had een zeer specifieke blik - dat is waarom ze niet gewoon
Cm7b5 - het maken van een compiler voor x86 vanaf nul

Cm7b5 - het maken van een compiler voor x86 vanaf nul

Dit is een tutorial voor het maken van een compiler voor een eenvoudige subset van de C taal op x86 het platform. De broncode en de voorbeelden zijn op github.comCm7b5 broncodeCm7b5 wikiDe codevoorbeelden doorlopen progressieve stappen:Tekenreeks tok
Lederen Spiked manchet vanaf nul

Lederen Spiked manchet vanaf nul

Hallo iedereen, dit is mijn eerste Instructable. Ik heb genoten van deze site al enkele jaren, en ik denk dat it's about time die ik terug te aan de prachtige gemeenschap hier geven.Ik ben een internationale student die momenteel studeren in China, e
Hoe te bakken een taart pompoen (vanaf nul)

Hoe te bakken een taart pompoen (vanaf nul)

dit instructable is een voortzetting van mijn hoe te bakken een verse pompoen instructable.Bakken pompoen pastei van kras is iets van een traditie in mijn familie, en sindsdien hebben taarten gemaakt van verse pompoen, ik kan niet eten degenen gemaak
Hoe maak je een draadloze mechanische toetsenbord

Hoe maak je een draadloze mechanische toetsenbord

Hallo allemaal, ik ben een technicus en ik kom vormen van China.Nu, ik zal je leren hoe te DIY een mechanische draadloos toetsenbord.Sorry mijn slechte Engels :(We gaan!Stap 1: Koop een gebruikte mechanische toetsenbord en een draadloze toetsenbord v
Hoe maak je een Arduino vanaf nul

Hoe maak je een Arduino vanaf nul

Zuinig Engineering is de beste weg vooruit voor de wetenschap.Bent u geïnteresseerd in het maken van enkele arduino vanaf nul, bent u bij ons aan het juiste adres.Ziet u een video tutorial van dit instructable: hierHet zal vullen alle mazen of twijfe
79cc gemotoriseerde fiets vanaf nul

79cc gemotoriseerde fiets vanaf nul

Hallo weer iedereen! In dit instructable ik zal je laten zien hoe het bouwen van een 79cc, 4 takt gemotoriseerde fiets vanaf nul (niet een motor kit). De fiets die we zullen bouwen is veruit superieur aan kit motoren op vrijwel alle gebieden, met inb
Hoe maak je een piano toetsenbord

Hoe maak je een piano toetsenbord

In deel 4 van "Hoe te maken een Pianoforte" W. H. Davies gelast de amateur piano maker "{zich} te voorzien van een set van 16 inch sleutels tot overeenkomen met de grootte van sleutel-bodem; ze kunnen worden gekocht bij van 38s. £3, volgens
Een Chaise-Frame bouwen van nul

Een Chaise-Frame bouwen van nul

Disclaimer: dit is de eerste bank die ik ooit hebben gebouwd en hebben geprobeerd te stofferen. Ik ben geen professional. Ik heb veel onderzoek gedaan en hebben gebouwd wat mijns inziens een stuk van de kwaliteit van meubilair. Ik hoop dit instructab
Vervangen van een mechanische brandstofinjectie systeem op 1981 VW konijn diesel - Bosch VE

Vervangen van een mechanische brandstofinjectie systeem op 1981 VW konijn diesel - Bosch VE

duikt dit recht in het vervangen van een mechanische brandstofinjectie systeem op een 1981 VW diesel konijn met een 1.6L motor.   Bosch VE pomp.Omvat:Pomp en verstuivers, brandstofleidingen installeren.Timing instellen.Nog steeds moet u een service-m
Passievruchten azijn (vanaf nul) met wortel paprika salade

Passievruchten azijn (vanaf nul) met wortel paprika salade

Ik kwam over fruit smaak azijn en was gefascineerd door het concept. Passievruchten was mijn eerste keuze, aangezien er een unieke smaak van zijn eigen. de zure smaak is net wat ik wil voor een salade. Dus ik probeerde het maken van passievruchten az
Lekker brood van de banaan (vanaf nul)

Lekker brood van de banaan (vanaf nul)

dit is mijn eerste instructable. En dit is banaanbrood die ik... vanaf nul gemaakt. Reactie hieronder en vertel me wat je denkt. Als ik genoeg goede reacties te krijgen zou kunnen ik proberen een ander instructable!!!Stap 1: Ingrediënten en benodigdh
DIY Quadcopter vanaf nul

DIY Quadcopter vanaf nul

Vliegen is iets dat voor altijd deel van man's wens is geweest. We hebben willen nemen naar de hemel sinds we voor het eerst zag een vogel vliegen en met de komst van technologie die we door de lucht over de gehele wereld reizen kunnen. Echter een pe