MicroController Register Manipulation (1 / 6 steg)

Steg 1: Så vad är ett register?

Vänta, vad är ett register som du frågar? Kort sagt, är det en bit av minnet vanligtvis bestående av någonstans från 8 till 64 bitar av data. Varje bit tilldelas värdet 1 eller 0, och värdet av varje bit i många olika register i en mikrokontroller berätta resten av systemet vad man ska göra och när man gör det.. De flesta av register i ATMEGA328P chip på Arduino är 8-16 bitar. ChipKIT styrelser använder PIC processorer, och de är oftast 16-32 bitars register. Det finns mycket mer jag skulle kunna gå in när det gäller register, men de är bättre kvar till en annan dag. Wikipedia har en bra förklaring också.

Du kan tänka dig ett register som du gör en matris när du skriver en bit kod i din favorit kodning språk, förutom att varje element är en enda bit, inte en samling av bitar som utgör int eller char du definierat. Också, precis som matriser börjar räkna på 0, inte 1. Så har en 8-bitars register (Låt oss kalla det myRegister för sparkar) 8 bitar totalt, numrerade från 0 till 7. Så om vi ser en PIN-kod på vår microcontroller tilldelats lite myRegister [6], vet vi att den 7: e (andra till senaste) lite är den som vi behöver att manipulera. Det kan vara svårt att hålla rak, men det är viktigt. Jag ska försöka och klargöra det mer senare, troligen till peka av overkill.

Några saker att tänka på- Medan registret manipulation är ett perfekt programmering alternativ, rekommenderar jag verkligen inte det om du är extremt säker i dina förmågor och du är helt ledigt minne på din chip eller behöver frigöra några extra klockcykler. Ofta finns det en hel del kontroller som sker i bakgrunden när du använder vanliga funktioner och bibliotek för att tilldela I/O riktning och värden till stiften. Det kan få svårt att hålla allt det där rak och kanske inte värt den tid och ansträngning som krävs för att skriva din kod med hjälp av register. Som sagt, erfarenhet de exempel jag kommer att visa du är enkla och grundläggande i extremt så vem som helst kan använda dem, oavsett. De kommer definitivt att ta mindre minne och processen snabbare än om du skulle använda de vanliga funktionerna. Men du måste vara ytterst försiktig när du manipulera registren direkt och fyrdubbla kontrollera dina uttalanden. Det skulle vara svårt att skada marker manipulera registren felaktigt, men det kan vara mycket svårare att felsöka när det inte fungerar rätt, oftast eftersom du skrev fel värde av fel register eller bit. Vanliga funktioner och bibliotek finns där av en anledning. De tar mer minne och bearbetningstid, men är oftast mer användarvänligt. Sista sak, glöm inte att inte ändra prestandaparametrar för varje stift (t.ex. aktuella råvaror/sjunkit, spänningar, etc.) när du använder registren. Skyll inte på mig när du försöker och driva en 2A motor direkt från stift 10 och det röker ditt chip. Det är på dig eftersom du borde veta bättre ändå.

Se Steg
Relaterade Ämnen

Seg... pinne.

Gör det själv själv-balansera... saker... har funnits nästan lika länge som kommersiella självbalanserande saker. Uppenbarligen de hemlagade versionerna är inte som släta, tillförlitlig, eller felsäkra som äkta, men de är fortfarande ganska fängsland...

Atmel start 2: Microcontroller kretsar och säkringar

M. A. Parker c2015Kretsar och säkringar konstruerar en enkel men viktig krets på en experimenter's skärbräda som ska användas som grundläggande plattform för många microcontroller projekt och för att ange parametrarna mikrokontroller (dvs säkringar)....

BITS & Byte magic manipulation

Hej duSå att du påbörjat resan av programmering och känner lust att lära sig magi bits och Bytes. Väl se längre vilket jag hoppas att upplysa er i fungerar och, eller inte och flytta.Om du har arbetat med Arduino som du kanske vet lite om detta men j...

Multiplexering 7 Segment visar med Arduino och SKIFT register

i detta instructable, jag kommer att lära grunderna i multiplexing 7 segmenterar skärmar med en Arduino och ett par av SKIFT register. Detta projekt är väl lämpad för att Visa numeriska information eller om du vill styra en massa lysdioder. För nybör...

Ledde matrisen projektet använder SKIFT register och pic16f628a mikro

detta är aproject att flytta orden på led matrisdisplayVi använder1-pic16f628a som mikrokontroller: billiga, programminnet 2k, har interna oscillatror, två portar A, B och en massa saker.2-ledde matrisen 8 * 8 rader gemensam anod och kolumner gemensa...

Hur man gränssnitt 16 X 2 LCD med AVR Microcontroller

här är Kopplingsschemat hos gränssnitt 16 X 2 LCD till AVR Microcontroller. I denna krets, att kristalloscillator ge klockan till mikrokontroller. Kondensatorerna ansluten till crystal ska fungera som filter och hjälpa kristallen att genljuda och svä...

Att få mer I/O pins på ATTiny med Skift register

Om du tidigare arbetat (eller arbetar) med små 8-bitars mikrokontroller, som ATTiny eller PIC12, du har förmodligen inträffat ett grundläggande problem för att inte ha tillräckligt GPIO pins för dina behov eller projektets krav.Uppgradera till en stö...

LEDDE matrisen med hjälp av SKIFT register

detta instructable är tänkt att vara en mer fullständig förklaring än andra tillgängliga online. Detta kommer bland annat ge mer hårdvara förklaring än finns i LED markeringsramen instructable av led555.MålDetta instructable presenterar begreppen med...

Hela världen microcontroller länk för under $20

kontrollera termostaten hem från jobbet. Slå på en sprinkler från någonstans i världen genom att snärta en switch. Detta Instructable visar hur du länkar två eller flera $4 mikrokontroller med ryggraden i internet och några enkla VB.Net-kod.Detta byg...

Arduino powered 7 seg LED-skärm med hjälp av SKIFT register - jag gjorde det på TechShop

sju segmenterade skärmar är bra. De är ganska enkla, inte ta mycket ström och har en stor flexibilitet när det gäller att Visa nummer. Men bortsett från 14 stift bara för att köra det är sådan smärta. Om bara det fanns ett sätt att använda dem utan a...

4 x 4 x 4 LED cube uppgradering med Skift register (74hc595)

projektet började med en påse med lysdioder som jag hade tagit bort från ficklampor, konvertera till UV ficklampor. Jag visste att jag skulle hitta något roligt för att använda dem med, men det var månader innan jag listade ut vad med dem att göra. N...

3D tryckt Microcontroller Dice Roller

Detta är ett bara-på-skoj projekt jag gjorde i Digilent MakerSpace. Oftast när jag spelar brädspel använder jag en tärning-rullande smartphone app eftersom tärningarna är så lätt att förlora. Jag tänkte jag skulle prova att göra min egen Hårdvaruvers...

5 skäl varför du är inte kompetent att programmet A Microcontroller

när börjar med microcontrollers du sannolikt att möta några problem i programmering din microcontroller och det finns inget mer frustrerande än slösa timmar att hitta problemet och stilla inte kunna. Jag har arbetat med olika typer av mikrokontroller...

Aleph 1,0 - Internet kontrollerad Mikroskop Roboten Manipulator

Aleph 1.0 är en avlägsen kontrollerade robotic manipulator för biologiska eller kemiska sonder. Idén kom från det faktum att forskare behöver ett säkert sätt att manipulera och analysera bioriskavfall eller giftiga ämnen eller att helt enkelt Observe...

Arduino Microcontroller och dess olika tillämpningar

Arduino microcontroller och dess olika tillämpningarSteg 1:...

Mångsidiga mobila Manipulator Mk 1

Kort beskrivning:Bygga din egen DIY giant robot som spelar piano, ritar bilder, förbereder mat, vatten växter, bedriver ljussabel dueller och mer. Den mångsidiga mobil Manipulator är en avancerad öppen källkod mänskliga-size mobil robotik plattform f...

Hur du ändrar fuse bitar av AVR Atmega328p - 8 bitars microcontroller med Arduino

I detta instructable du lära dig att ändra fuse bitar av Atmega328p mikrokontroller. Jag använder Arduino mega som programmerare till program Atmega328P-PU på bakbord. Den levereras med en standard 1MHz inre kalibrerad oscillator frekvens. Jag vill ä...

Använda allmänt tillgängliga program för att manipulera bilder

professionella grafiska designers använder dyra program som Photoshop och Illustrator för att arbeta med bildfiler. Det finns fria alternativ som Gimp och Inkscape, de är underbara, men det finns fortfarande en brant inlärningskurva och de är verklig...

Hur man använder en 74HC595 SKIFT Register med en AVR ATtiny13

om du har spelat med mikrokontroller och elektronik så du har förmodligen sett LED dot matrix-displayer och andra projekt som använder SKIFT register som 7-segment visar och mer. Detta instructable går över en snabb intro till 74HC595 8-bitars serail...