Arduino aangedreven Rotary Encoders - ik maakte het op TechShop (3 / 3 stap)

Stap 3: Code


De code voor de encoders neemt de code voor de verschuiving registreert en de tellende lus met een ingestelde positie tussen 0 en 99 vervangt. Er zijn een paar belangrijke veranderingen. De instelling voor de ingang van encoder is importeren. In setup de pull-up-weerstanden zijn ingeschakeld en een interrupt aan OutA is gekoppeld.

Er wordt gegenereerd wanneer een stijgende signaal wordt gezien, de encoderPos-functie. Deze functie leest OutB en wordt toegevoegd of afgetrokken van een interval in de positie. Opmerking: Alleen toe te voegen en met behulp van mod, we beter kunt het bereik van de positie, dus beperken van 0 tot 99. EN de globale variabele moet worden aangemerkt als een vluchtige variabele om te werken met interrupts.

De hoofdlus dan vertaalt het nummer shift register instructies.

Shift Registers

#define klink 5
#define CLK 4
#define gegevens 6
#define ENCA 2
#define ENCB 7

Dit is de hexadecimale waarde van elk getal dat is opgeslagen in een array door index-num
byte digitOne [10] = {0x6F, 0x09, 0x73, 0x3B, 0x1D, 0x3E, 0x7C, 0x0B, 0x7F, 0x1F};
byte digitTwo [10] = {0x7B, 0x11, 0x67, 0x37, 0x1D, 0x3E, 0x7C, 0x13, 0x7F, 0x1F};

vluchtige unsigned int pos;

VOID Setup {}

Shift Register Setup
pinMode (klink, uitvoer);
pinMode (CLK, uitvoer);
pinMode (DATA, uitvoer);

Encoder Setup
pinMode (ENCA, INPUT);
pinMode (ENCB, INPUT);
digitalWrite (ENCA, hoge);
digitalWrite (ENCB, hoge);

attachInterrupt (0, encoderPos, stijgt);
}

void loop {}

krijgen van de afzonderlijke cijfers
byte degenen = pos % 10;
byte tientallen = pos/10;

uitvoer naar 7 seg
digitalWrite (LATCH, laag);

shiftOut (DATA, CLK, MSBFIRST, ~ digitTwo[tens]); digitTwo
shiftOut (DATA, CLK, MSBFIRST, ~ digitOne[ones]); digitOne
digitalWrite (LATCH, hoge);
}

ongeldig encoderPos(void) {}


Controleer B uitvoer voor hoge of lage
HOGE middelen met de klok mee
LAGE middelen tegen de klok
if(digitalRead(ENCB)) {}
POS (pos + 1) = % 100;
}
else {}
POS (pos + 99) = % 100;
}
}

Gerelateerde Artikelen

Arduino aangedreven servo control - Ik maakte het op TechShop

Arduino aangedreven servo control - Ik maakte het op TechShop

servo's zijn ongelooflijk handig in het maken van "dingen" verplaatsen. Maar om dat ding Beweeg je moet besturing van het een of andere manier. Gelukkig, arduino maakt dit ongelooflijk gemakkelijk te doen en kan gedaan worden met iets als een po
Rubber aangedreven boot van de macht "Ik maakte het op TechShop"

Rubber aangedreven boot van de macht "Ik maakte het op TechShop"

dit is een Instructable op hoe maak je een boot van de macht van het windup van rubber aangedreven.  Ik heb veel wind up met behulp van een propeller vliegtuigen.  Ik heb een heleboel variaties op peddel boten met inbegrip van een die ik heb voor een
Rubber Band aangedreven Paddle boot.  Ik maakte het op TechShop

Rubber Band aangedreven Paddle boot. Ik maakte het op TechShop

dit is een instructable voor het maken van een klein elastiekje aangedreven peddel boot. Ik schetste het op Autodesk Inventor en een 60 watt Epilog laser cutter gebruikt om de onderdelen te maken. Nogal wat experimenten was vereist om dit soort werk.
Motor montage doos voor radio control vliegtuig.  Ik maakte het op Techshop

Motor montage doos voor radio control vliegtuig. Ik maakte het op Techshop

dit instructable doorloopt het proces te ontwerpen en bouwen van een motor montage doos voor montage outrunner stijl motoren aan de voorzijde van een radio control vliegtuig.  Wanneer u het bouwen van een vliegtuig oorspronkelijk ontworpen als een gl
AutoCAD aan Trotec Laser - ik maakte het op TechShop!

AutoCAD aan Trotec Laser - ik maakte het op TechShop!

Als een lid van de Techshop die ik heb gezien veel geweldige ontwerpen gemaakt op de Trotec graveur. Deze projecten omvatten ontwerpen die zowel knippen en geëtst in diverse materialen zoals multiplex, lucite en glas. Na het nemen van een klasse op d
Ik maakte het op TechShop Planter

Ik maakte het op TechShop Planter

deze unieke plantenbak is vervaardigd uit ongebruikte, upcycled CD CD-doosjes. Met behulp van de Trotec Laser Cutter aan TechShop-Pittsburgh geëtst ik elk met citaten en grenzen.www.techshop.WSStap 1: Ik maakte het op TechShop Planter Deze plantenbak
Balsa gooien zweefvliegtuig, ik maakte het op TechShop

Balsa gooien zweefvliegtuig, ik maakte het op TechShop

dit is een eenvoudige hand toss zweefvliegtuig gemaakt van de balsa.  Het kan gewoonlijk worden gegooid besproken gooide of door rubberband/bungee katapult.  Het is gemaakt van 1/8" blad balsa.  Dit werd gemaakt als een project om te oefenen van 3D m
Één wiel fiets Trailer - ik maakte het op TechShop

Één wiel fiets Trailer - ik maakte het op TechShop

Enkele montage fiets aanhangwagens zijn commercieel verkrijgbaar, maar kunnen kosten $500 of meer. Deze was samengesteld voor ongeveer $50 in gebruikte onderdelen en een paar uur werk. Ik maakte het op TechShop, en dus kan je!http://www.techshop.WS/S
Ei Carrier - ik maakte het op TechShop

Ei Carrier - ik maakte het op TechShop

Dit is een eenvoudige ei-drager. Ik maakte het aan TechShop Pittsburgh!Deze luchtvaartmaatschappij ei helpt me mijn eieren thuis uit de markt zonder het breken van hen.Het is gemaakt van 4 inch stevige PVC afvoer pijp en 4 inch eindkappen.Deze pijp w
Schilderen van kunststof neus rookkanalen voor radio control vliegtuigen.  Ik maakte het op TechShop

Schilderen van kunststof neus rookkanalen voor radio control vliegtuigen. Ik maakte het op TechShop

dit instructable verklaart hoe te schilderen van een vacuüm gevormde kunststof neus cowl voor een radio control vliegtuig.  Het is heel gebruikelijk voor vliegtuig kits te nemen vacuüm gevormde kunststofonderdelen.  Ze zijn altijd duidelijk of wit of
Hoe poederlaag het landingsgestel van een aluminium voor een radio control vliegtuigen.  Ik maakte het op TechShop

Hoe poederlaag het landingsgestel van een aluminium voor een radio control vliegtuigen. Ik maakte het op TechShop

dit instructable zal dekken hoe jas een generieke aluminium landingsgestel dat vele radio control vliegtuigen met komen poeder.  Ik deed dit zodat het vliegtuig een beetje er beter uitzien dan de normale kale aluminium-look die de meeste vliegtuigen
Ter vervanging van de innerlijke vooras zeehonden op een ' 99 XJ Dana 30 as. Ik maakte het op TechShop.™

Ter vervanging van de innerlijke vooras zeehonden op een ' 99 XJ Dana 30 as. Ik maakte het op TechShop.™

na het nemen van mijn comanche wheeling in Pismo Beach merkte ik een kleine plas die verzamelen rond de basis van zowel mijn voorste banden. Een controle van de remmen en remleidingen bleek dat de werkelijke boosdoener was diff vloeistof lekt uit de
Hoe om te gaan van Autodesk Inventor te CorelDRAW voor lasersnijden.  Ik maakte het op Techshop

Hoe om te gaan van Autodesk Inventor te CorelDRAW voor lasersnijden. Ik maakte het op Techshop

dit instructable is uit te leggen hoe naar iets u een tekening maakte af op Autodesk Inventor naar CorelDRAW zodat u kunt laser snijden.  Ik vond de eerste keer dat ik deed dit, het was helemaal niet regelrecht voorwaarts.  Ik heb nog niet gevonden e
Hoe maak je een modder klep meisje - Ik maakte het op TechShop www.techshop.ws

Hoe maak je een modder klep meisje - Ik maakte het op TechShop www.techshop.ws

http://www, techshop.wsIk heb deze modder klep meisjes overal gezien en wilde maken van mijn eigen.  Nu dat ik een lid van de TechShop die het was het eerste wat dat ik wilde doen.  Ik nam de laser cutter / graveur klasse van gisteravond en met een b