HacKeyboard, ett mekaniskt tangentbord byggs från grunden (33 / 42 steg)

Steg 33: Utveckla koden för att göra det hela fungerar



I det här steget behöver du inte göra något. Jag skriver bara om det så att du vet hur koden gjordes.

Jag beslutade att använda JAL för att utveckla firmware eftersom jag inte hade mycket tid att få det att fungera för Lissabon Mini Maker Faire. JAL, eller bara ett annat språk, är ett högnivåspråk för ett antal Microchip PIC mikrokontroller som föregår Arduino ramen. Som en kuriositet var Massimo Banzi, en av grundarna Arduino , en tidig JAL utvecklare. En annan anledning till varför jag beslöt att försöka JAL var att det fanns en USB HID-enhet exempelkod i JALlib som slutade göra de första stegen i att utveckla firmware för ett komplett tangentbord mycket lättare.

Innan du börjar utveckla koden gjorde jag först lite forskning om hur människor brukar göra det i de andra DIYkeyboard projekt. AVR-Keyboard projekt om Github från Fredrik Atmer var särskilt användbara som inspiration. I princip jag portat koden till JAL med några ändringar och sedan La alla extra funktioner till HacKeyboard. En rolig sak är att jag var tvungen att skriva en funktion för att styra WS2812B lysdioderna från grunden... roligt eftersom jag inte hade ett oscilloskop mäta timings på utgångsstift av PIC18F4550 och skulle i princip gissa timings från MCU frekvens och anvisningar per instruktion cykel. Efter några försök lyckades jag få det att fungera.

Du kan kolla källkoden i min GitHub, inklusive den pre-kompilerat hex filen.

Tillval: Som jag nämnde, behöver du inte göra någonting i det här steget om du inte vill ändra något i koden. Om du vill ändra något måste du hämta JALlib från JALlib Github. Att sammanställa bara använda ett kommando med följande struktur:

$. /(path to compiler) + (sökvägen till filen .jal) + (-s) + (sökvägen till JALlib bibliotek) + (alternativ)

Exempel från inne i kompilatorn katalogen:

. / jalv2 file.jal -s... /lib/-ingen-variabel-återanvända - nr-säkring

Obs: variabeln-ingen-variabel-återanvändning kommer att använda mer PIC minne, men det kommer att sammanställa snabbare.

Kommandot ovan är för Linuxen befaller fodrar men bör vara mycket lik för Windows.

Se Steg
Relaterade Ämnen

Hur till DIY ett bakgrundsbelyst tangentbord?

Hej killar, detta är vilja, och jag är ett stort fan av mekaniska tangentbord. Jag njuta av taktila känslan av tangentbord, det är så underbart som gör dig själv en "finger massage". Ett mekaniskt tangentbord kan också vara ett praktiskt och anv...

Kan inte skriva svenska korrekt, på ett japanskt tangentbord, med engelska Windows!

Så vill du skriva engelska, på ett japanskt tangentbord, med engelska Windows.Varför vill du göra det?... Lätt!Om du bor eller arbetar i Japan, har du lite lätt val än att köpa ett japanskt tangentbord.Man skulle kunna tro det skulle vara lätt att ba...

Hur man använder ett USB-tangentbord med Acer Iconia A500 tabletten

Jag gjorde en snabb video som visar hur du använder ett USB-tangentbord med Tablet Acer Iconia A500.Om du har några frågor vänligen Låt mig veta.Nu att Acer har sänt ut uppdateringen till Honeycomb 3.1 kan du också koppla ihop och använda ett bluetoo...

Hur du ansluter ett Bluetooth-tangentbord till en Nexus 7

Steg 1:Först behöver du ett Bluetooth-tangentbordSteg 2:Aktivera Bluetooth-tangentbordet.Steg 3:Hitta din Bluetooth-tangentbord med din nexus 7Steg 4:Skriv in numret på tangentbordet och det bör par... Numret är olika varje gång...Steg 5:THAT 'S ALL...

Med ett mekaniskt relä 5 Volt

Detta Instructable visar med ett mekaniskt relä 5 volt som växel för att styra två lysdioder. Det finns två olika ledningar konfigurationer visat. Den första ledningar växlar mellan två lysdioder, en "på" och en "off". Den andra lednin...

Installerar ett USB-tangentbord i en OLPC XO Laptop, fas I

jag vet inte om dig, men jag kan säkert säga silikon från den äkta varan. Här ' hur till dike gelé och pressa en normal tangenter och fjädrar typ USB-tangentbord i en OLPC XO laptop. Detta "fas I"--får tangentbordet i nedre hälften av fallet, me...

Att göra en skrivmaskin med ett gammalt tangentbord och en matrisskrivare

detta projekt visar hur du återvinner ett gammalt tangentbord och en matrisskrivare att göra en skrivmaskin.Vad och hur.Tanken är att ansluta tangentbordet till skrivaren med en grundläggande och billiga gränssnitt, jag har använt Arduino eftersom är...

Nyckelord - nya ord från ett gammalt tangentbord.

Nyckelord är ett två spelare spel att testa din wordpower mot en motståndare. Det måste snabbt tänkande, list och lite hjälp från Lady Luck triumf. Reglerna har utvecklats under ett antal pjäser och det är verkligen en underhållande spel att spela he...

Hur man fixar ett dragspel tangentbord

Så mycket kul som dragspel, de kan vara ganska skrämmande att ta isär, ren eller fixa. Det finns mycket få dragspel byggare och mycket få dragspel restorers som brunn-professionell eller amatör. De flesta dragspel är antikviteter, vilket innebär att...

Hacka ett USB-tangentbord

hur till hacka en USB-tangentbord eller ett tangentbord för den delen. Skicka ingångar in i datorn utan en pesky mikrokontroller.Steg 1: Öppna upp tangentbordet Öppen upp fallet. Använd en skruvmejsel eller ett löjligt snygga multi-purpose verktyg. I...

PICAXE - gränssnittet ett PS2-tangentbord med en LCD-skärm

detta projekt använder ett PICAXE 20 X 2 microcontroller gränssnittet en gammal stil PS2 tangentbord med en 2 X 16 LCD. Programmet är ganska lång och troligen inte är perfekt men de flesta funktioner verkar fungera. Eftersom vissa speciella tangenter...

Hur man rengör ett smutsigt tangentbord

är tangentbordet smutsig? Vill du inte modig diskmaskinen? Här är ett enkelt sätt att rengöra tangentbordet i under en timme med hushållsprodukter.Saker du behöver:1 smutsig tangentbord1 liten, platt-head skruvmejsel1 flaska Windex (eller vad motsvar...

Jobbet: installera ett USB-tangentbord i en OLPC XO Laptop, fas II

för en kille som har tillbringat större delen av sitt liv med fingrarna ansluten till raden hem, lägga till denna USB-tangentbord som jag verkligen kan touch-type på har gjort en enorm skillnad i användbarheten av XO. Detta är "fas II"--sätta ka...

Konvertera ett Macbook-tangentbord från QWERTY till Dvorak

jag nyligen bytte Qwerty till Dvorak på grund av oro för långsiktiga skador till mina handleder. Efter ca 5 veckor, kan jag touch-type ganska bra. Men jag är ett stort fan av kortkommandon (esp i program som Adobe Creative Suite), och om jag har att...

Hur högtalarna fungerar och ett Intro till bygga en baslåda

artighet går till: www.digispeaker.com för bilden, tack digispeaker!INNAN vi börjar: Jag för en, är mycket öppen för konstruktiv kritik men några kommentarer som verkar vara sårande att andra och/eller detta instructable kan och skall tas bort. TackO...

Rengöring Apple aluminium Keyboard... eller ett mjukt tangentbord

så ren som du eller jag kan försöka att hålla våra aluminium apple-tangentbord, de blir smutsiga efter ett år eller så. Detta instructable är som hjälper dig att rensa ut. Var försiktig, eftersom jag inte är ansvarig om ditt tangentbord går sönder nä...

Hur man installerar ett nytt tangentbord till du iPhone

detta är hur du kan ändra teckensnittet i din iPhoneSteg 1: Installera programvaran tangentbordet Först måste du ladda ner en tangentbord app från App Store och sedan öppna denSteg 2: Att göra det hända Då det kommer att ge dig instruktioner (om du v...

Trimma ett träd, bygga en spaljé

fler och fler människor idag växer sin egen mat. Om du planerar en stor trädgård eller om du har hundratals växter i din trädgård, kan det bli dyrt att köpa spaljéer för dem att klättra. Jag trimma min tallar och insåg att jag kunde använda grenarna...

Plånbok från ett gammalt tangentbord

i mitt första instructable jag kommer att visa hur man gör en plånbok från en gammal tangentbord.Detta är min post för tävlingen: tangentbord vs mus Speed Challengedu behöver:-Keyboard-Tejp-Sax-Whiteboard markör/Permanent markör-Skruvmejsel-Härskare...