Super Duper microtonale MIDI Converter (2 / 5 stap)

Stap 2: Lezen Quadrature Code Rotary Encoders


Ik wil toevoegen sommige besturingselementen kunnen waarden op het vliegen als het aantal stappen per octaaf en de basis MIDI-notitie wijzigen. Dus ik heb deze Bourns rotary encodersverworven.

Ik vond deze Circuits blog post over lezing rotary encoders nuttig, hoewel ik vond het een beetje moeilijk te volgen als iemand nieuw aan de wereld van Arduino. Ik zal proberen om enkele van de details hieronder verder te verklaren.

De post vermeldt dat encoders quadrature code genereren. Ik gekopieerd de kwadratuur code output patroon boven de data sheet voor mijn encoders. Het laat zien dat wanneer roteren met de klok mee de Staten van de AB-signaaluitgang herhaaldelijk t/m 00, 10, 11 en 01 fietsen. (De volgorde is omgekeerd voor tegen de klok in.)

Dus dan de code uit de bovenstaande verwezen post (fragment hieronder), in het algemeen, wat het doet is winkel 4 relevante bits in old_AB: het eerder gebruikte coderingsprogramma lezen (00, 10, 11 of 01) gevolgd door de huidige encoder lezen (ook, 00, 10, 11 of 01). De matrix enc_states [] bevat drie mogelijke reacties op coderingsprogramma lezingen: 0--geen verandering, 1--toename voor CW en -1--decrement voor CCW.

 /* returns change in encoder state (-1,0,1) */ int8_t read_encoder() { static int8_t enc_states[] = {0,-1,1,0,1,0,0,-1,-1,0,0,1,0,1,-1,0}; static uint8_t old_AB = 0; /**/ old_AB <<= 2; //remember previous state old_AB |= ( ENC_PORT & 0x03 ); //add current state return ( enc_states[( old_AB & 0x0f )]); } 

Dus, bijvoorbeeld, als de vorige lezing 00 was en de huidige lezing 10, dan (binaire) 0010 kaarten to enc_state [2 is] = 1, wat increment betekent omdat het coderingsprogramma verplaatst met de klok mee. Een ander voorbeeld, als de vorige lezing 00 en de huidige lezing was is 11, dan is er een leesfout of lawaai, dus dat wordt toegewezen aan enc_state [B0011] = 0--geen verandering. De lezer kan werken uit de andere 14 mogelijke combinaties van eerdere en huidige lezing te zien hoe ze verwijzen naar de [enc_states].

Gerelateerde Artikelen

Arduino polyfone microtonale midi converter

Arduino polyfone microtonale midi converter

Sterk verbeterde versie hier!***********************************Ik wilde spelen van microtonale schalen met mijn MIDI-keyboard, dus maakte ik dit arduino gebaseerd apparaat dat MIDI notities leest en bijbehorende microtonale standplaatsen met behulp
Super Duper Slip en Slide

Super Duper Slip en Slide

Elk kind moet een slip en glijbaan. Ik denk dat het is een wet in PA, maar ik zal moeten opzoeken die. Mijn jongens hebben een paar van de goedkope ones vernietigd en de commerciële grade dia's zijn veel te duur. Na een snelle internet zoeken ik vond
Hoe te maken Super Duper gemakkelijk Slushie

Hoe te maken Super Duper gemakkelijk Slushie

Hi vandaag maak ik een super duper gemakkelijk Slushie uit Kool-aid, vertel me uw Kool steun smaak die je zou er met in het commentaar gedeelteStap 1: Wat hebben We nodig We moeten1 grote ziplock1 Sandwich formaat ziplock2 Kool steun smaken van uw ke
Super Duper Soaker

Super Duper Soaker

Ok dit instructable is voor de onderdelen die u nodig heeft voor de super duper soaker hoe samen te stellen hen is gonna be een aparte instructable sorry voor het ongemak, maar wel de manier waarop het moest worden volgende zou niet als dit weet ik n
De "Super Duper" Knex Gun

De "Super Duper" Knex Gun

dit een super duper gemakkelijk het pistool is slechts 4 delen
Super Duper Earring

Super Duper Earring

ingrediënten:-32 schakels van de keten van de hand-gerolde-Twee 5-strand einde bars-1 paar Franse draden--- EN----de brieven SUPER en DUPER---- OR -----10 mooie bloemblaadjes kraal caps-10 druk kralen, 6 mm-10 hoofd pins, 1 inchTools:- Chain neus tan
Buiten de blokken: Super Duper raket met Tinkercad

Buiten de blokken: Super Duper raket met Tinkercad

Laten we eerlijk zijn: als je denkt "model rocket" en "Tinkercad in minder dan 30 minuten", hebt u wellicht een afbeelding van een eenvoudige cilinder met een kegel bovenop. Echter Tinkercad is echt krachtig onder de motorkap en de oge
Hoe maak je een super duper gemakkelijk kasseistrook stenen generator MCPE

Hoe maak je een super duper gemakkelijk kasseistrook stenen generator MCPE

Hey jongens vandaag zal ik u tonen hoe te maken van een stenen generator super gemakkelijk kasseistrook in minecraft PE of PC en alles wat u nodig hebt is een emmer water, 1 emmer lava en een schop dus laten we aan de slag!Stap 1: graven Graven wat j
Super Duper eenvoudige Usb Fan!

Super Duper eenvoudige Usb Fan!

vandaag ik zal je laten zien hoe maak je een super cool usb fan. u moet:een USB-kabeleen computer of een usb muur adaptereen draadknipper of schaartapehobby-motor met een ventilator op hetStap 1: stip uw USB-kabel zodat u onthullen 4 draden we gebrui
Super Duper BFF armband!

Super Duper BFF armband!

Hallo, in deze tutorial zal ik je laten zien hoe te maken van deze schattige armband voor u, uw BFF, of iemand in uw gezin! Dit hele project kostte me ongeveer een uur voor te bereiden en te maken dus gereserveerd enige tijd. Succes!Stap 1: materiale
Super Duper larynx

Super Duper larynx

vaak in het leven, er komt een tijd wanneer we onszelf als "Iemand anders" vinden. Sommige dingen toevallig "Iemand anders", maar nooit echt het belemmeren van onze eigen dagelijkse routines. In 1999 werd ik "Iemand anders" t
Super Duper Shmooper Bouncy bal!

Super Duper Shmooper Bouncy bal!

Ja, bouncy balls zijn cool, maar heb je ooit geprobeerd maken van je eigen? Didn't think so. Ik heb dus, stak de woeste zeeën, trotseerden de hoogste bergen en gedood een stelletje draken om u dit instructable op hoe je eigen te maken! Geen behoefte
Super Duper boek vak!!

Super Duper boek vak!!

He, in deze tutorial zal ik je laten zien hoe te maken van deze geweldige vak gemaakt van een oud-hardcover boek! U hoeft echt niet veel vaardigheid om dit te maken maar u zal moeten enkele tijd, zo opzij een uur of twee.Stap 1: materialen Voor dit v
Supa Dupa traag Chilli

Supa Dupa traag Chilli

Dit is verreweg de beste Chilli ik ooit hebben geproduceerd. Het heeft een schoon maar pittige smokey smaak die het hart van zelfs de meest pickiest Chili eater zal smelten. De enige waarschuwing, is het gaat tegen al mijn professionele jaren als een