$15.00 grundläggande dator? (7 / 8 steg)

Steg 7: Hej världen (hårdvara)



Detta är videon av blinkande LED är den fullständig förklaringen efter video.

Hej världen i hårdvara eller för mikrokontroller är ändå att blinka en LED, så du behöver en till avsluta detta avsnitt. Fäst en LED stift 2 som visas längre stiftet går till stift 1 och kortare stiftet på LED går till marken.

Här är något mer komplex så jag kommer att förklara med hjälp av radnumren visas i bilden. Detta är en fil som skapats i notepad eller rekommenderas PSPad (också gratis)

Linje 1: Detta är en kommentar något följande / / ignoreras

Linjer 2 till 4: Detta är det faktiska adresser för viss microcontroller registren som beskrivs i databladet för PIC32 (MX1 familj). 0 x anger att ett hexadecimalt tal som anges. De faktiska adresserna kan användas men det ser bättre och är lättare att komma ihåg om de ges ett namn. Det finns två portar på enheten särskilt PORTA och PORTB och som kan ses från kopplingsschema stift 2 till där lampan kopplas kallas RA0. Detta innebär den första biten av PORTA som benämns normalt bit 0. Mer om detta och registren senare.

Linje 5: Lysdioden är ansluten till bit 0 och vi vill hänvisa till denna bit på flera ställen i funktionen så vi har den konstant inställd på 1 (förvirrande bit 0 ställs rensas och allmänt manipulerade med värdet 1). Varför inte bara ha konstant LED 1, väl vi kunde och det skulle vara okej men om vi måste hänvisa till stycke 15, detta skulle vara konstant LED 0x8000. Om du arbeta ut det som är hex för 15 bitars (börjar på 0) hög eller vi kunde göra detta LED 1 << 15 och få exakt samma resultat. Den "<<" är vänster SKIFT operatör och allt det gör är shift '1' 15 platser till vänster - bekväm.

Linje 7: Alla program är gjorda av funktioner, precis som C men till skillnad från C kan du ringa dessa när som helst genom att bara skriva ain sitt namn. En funktion måste ha () i slutet. Mer avancerade funktioner kan ha värden mellan hakparenteserna men det är utanför omfånget för denna artikel.

Linje 8: TRIS registrera kontroller om PIN-koden kommer att vara en utgång eller en ingång, och TRISA registret gör detta för PORTA. Om bit 0 av TRISA är satt till 1 blir RA0 en ingång, om det är inställt på 0 så blir det en utgång. CLR på slutet av ordet kommer att klara (satt till 0) angivna PIN-koden och sätta på slutet av ordet ställer (set 1) angivna PIN-koden. Så är denna linje att RA0 vara en utgång.

Linje 8 tillägg: Den @ framför konstant namn betyder innehållet. Helt enkelt ange TRISACLR till LED skulle ändra TRISACLR bildar dess aktuella värde av 0xBF886014 till 1. Med hjälp av den @ vi lägger en 1 i adressen 0xBF886014, kan vi också använda poke(TRISACLR,LED) som skulle göra exakt samma sak.

Linje 9: IC har bland andra saker ADC (analog till digital) hårdvara som standard alla stift är inställda på ADC. ANSEL register kontrollerna detta, att angivna-biten anges till 0 gör stiftet på porten digital och 1 kommer att göra det analoga. Så denna linje kommer att göra RA0 till en digital pin.

Linje 10: Här kunde vi helt enkelt doe ett tag loop som gick för evigt (medan 1 = 1 skulle göra det) och för att stoppa lysdiod blinkar vi helt enkelt återställa registeransvarige. Men för att vara en smula mer elegant använder vi comkey? (2). registeransvarige har två seriella portar, UART1 och UART2. Det seriella gränssnittet (ansluten till stift 21 & 22) är ansluten till UART2 så den inbyggda i funktionen comkey? (2) returnerar antalet nycklar i UART2 viktiga buffert så detta kommer loop tills du trycker på en tangent på tangentbordet vilket naturligtvis kommer att placera en nyckel i den bufferten och så comkey? (0) = 0 blir inte sant längre.

Linje 11: LAT registret är faktiska stiften på porten så ställa några bitar av detta register höga eller låga kommer att återspeglas på porten. Det finns också ett PORT-register som i detta fall skulle göra samma sak men detta är buffrade och så det är bättre att använda LAT för utdata och porten för indata (förmodligen). Precis som det är och CLR då INV att "växla" angivna PIN-koden, så vore det en 1 då det skulle ändra till 0 och vice versa. Detta är exakt det beteende som behövs för att flash LED

Linje 12: Kommandot vänta anges i millisekunder och så detta blinkar lampan i 1-sekundersintervall.

Se Steg
Relaterade Ämnen

Reparera grundläggande dator hard ware problem (system diskfel och trasig PSU och saknade/skadade filer)

denna GUIDE är ännu inte avslutat, jag kommer att lägga till mer INFORMATION när jag får en chans.Om du behöver hjälp med en dator eller om du har några frågor alls gärna meddelande mig"I detta instructable jag kommer berätta hur att reparera grundlä...

Hur du sätter samman en grundläggande stationär dator

denna uppsättning instruktioner hjälper dig att montera en grundläggande dator kan köra mest moderna programpaket som uppstått genom att en tillfällig förbrukaren. Moderna datorer blir billigare när användare komplettera deras monetära investering me...

Bygga en Gaming dator, eller lära sig de grundläggande delarna

Min son älskar teknik, vi har byggt en massa projekt tillsammans men detta är hans favorit. Detta gaming dator är hans stolthet och glädje. Den kan hantera alla av hans spel, streaming & inspelning behov, FPS är top notch och den grafiska kvaliteten...

Grundläggande aritmetik i C++

Programmering är en relativt ny studie. En av de vanligaste och mest grundläggande kodning språk kallas C++. Detta används av stora företag som Google, Apple och Microsoft för att skapa program. Ett exempel är Google Doodle som visas på Googles start...

Grundläggande mänskliga skanna med Kinect & ReconstructMe konsolen

detta instructable kommer att täcka den grundläggande processen för att göra en 3D skanning av en mänsklig kropp med hjälp av XBOX 360 Kinect, en Windows-dator och programvara ReconstructMe (konsolen upplaga).ErkännandeNicolas Brunet gjorde en underb...

Grundläggande transformator fallet

Detta instructable ger du anvisningarna för att bygga ett grundläggande nakna ben fall som sedan kan modifieras för att vara perfekt för någon särskilt behov som du har. Genom att göra små förändringar till detta grundläggande fall kan det vara ett s...

Grundläggande läder halvmask

Välkommen!Här hittar du en handledning om att göra en grundläggande läder halfmask (som visar på 2: a bilden).Jag har arbetat med läder i över 15 år, och ville bara dela en grundläggande gå igenom om hur man gör en bra mask av din alldeles egna :)Gär...

Android-utveckling: Att skapa en grundläggande kalkylator

Välkommen till en rolig tutorial på att göra en grundläggande kalkylator på en Android-applikation. I denna tutorial guidar jag dig genom dataöverföring all nödvändig programvara, utforma layouten för ansökan, kodning till att få det att fungera orde...

Grundläggande Batch Virus Prank

mycket rolig sak att göra till en dator som föräldrar. Ofarliga på alla sätt. Allt du måste göra är att starta om datorn och ta bort den. BAT-filen och allt kommer att gå tillbaka till det normala.Steg 1: Skriva Batch-filen 1) gå Start och öppna upp...

Grundläggande Linux-kommandon

grundläggande Linux-kommandonObs: den ":" kolon är inte en del av kommandon!1. ls: visar en lista över filer i en katalog2. ls -l: listar filer i lång form, storlek, datum redigerad och behörigheter3. pwd: skriva ut arbetskatalog eller katalogen...

ESP8266 Grundläggande IoT ljus

Detta Instructables visar hur du använder ESP8266 BASIC fjärrkontrollen ett hushåll ljus.Steg 1: Varför byta fjärrkontrollen?Min hem hall strömbrytare dölja bakom skåpet och långt från dörren. Det är svårt att slå på ljus när jag kom hem eller stänga...

Grundläggande fotoredigering

I detta instructable jag ska gå över hur jag redigerar mina bilder för min instructables samt produkter i min Etsy butik. Jag spendera inte massor av tid att göra det, men jag gör alltid lite tweaking på min telefon eller dator. Det finns en hel del...

Nybörjare ren Data Tutorial: Grundläggande Synth

Pure Data är en fri, öppen källkod, realtid grafiska dataflöde programmeringsmiljö för ljud, video och grafik bearbetning. Det är särskilt bra för att skriva interaktiva audio, video och grafik program eftersom det kan vara lätt ansluten till hårdvar...

Hur man skriver grundläggande Batch-filer

om du vet hur man kör kommandon i denbefalla snabb, blir du en wiz skapa BAT filer eftersom det är samma språk. Allt du gör är talande kommandotolken vad du vill sätta genom en fil, snarare än att skriva det varje gång du kör Kommandotolken. Detta sp...

Hur man gör en grundläggande c ++ program

Välkommen. I detta instructable lär du göra ett enkelt icke - grafiska c ++ program. Programmet kommer att konvertera celsius till Fahrenheit.Steg 1: Gör det! Så kan börja göra det. Dessa är koderna för att göra det:#include#includeMain){clrscr();int...

Hur du använder SurfaceMapperGUI för grundläggande Projektion kartläggning projekt

i detta Instructable jag kommer att tala om ett verktyg som jag skapade kallas SurfaceMapperGUI, som är tänkt som ett riktigt barebones gränssnitt för projection kartläggning som intuitivt kan avhämtas inom en dag.Finns många andra Projektion kartläg...

FPV markstationer - enkel guide och en grundläggande översikt över min GS bygga

TackDess varit 6 månader sedan min senaste instructable.Tack till de många människor som gillade och röstade för min sista. Dess på grund av dig jag har gjort tid att skriva denna FPV markstation instructable!!! WOOOOO.Om du tycker att detta hjälper...

Grundläggande Cigar Box Guitar Amp med stativ stå

detta är den 2: a stativ gitarrförstärkare jag har gjort. Jag kommer att använda en grundläggande amp - men med en twist; med gamla och nya delar.Steg 1: Stativ stå Hitta en stativ stativ, du kan använda ett spelsystem stativ kamera stativ, högtalars...

Grundläggande elektroniska komponenter

Hej allaI detta Instructable kommer jag att gå över grunderna komponenterna i elektroteknik samt det största användningsområdena inom industrin.Jag kommer också att ge korta instruktioner om var man kan hitta och bärga dem.Steg 1: växlar Växlar är en...