Början Microcontrollers del 2: Att skapa ett SPI gränssnitt från programmeraren till mikrokontroller



Hej, hoppas vi du gillade del 1 av början Microcontrollers. Vi ska flytta i del 2 och börja prata om gränssnitt och hur du får din microcontroller att kommunicera med en dator.

Så, vid denna punkt, du bör känna till begreppet mikrokontroller (MCU). Du bör även ha en förståelse för de allmänna användningsområdena av mikrokontroller. Du har en grundläggande förståelse för pin-beläggning och hamnarna. Och, förhoppningsvis, du är upphetsad med en mikrokontroller hur, som avkänning och kontrollera miljön. Slutligen, du vet att vi kommer att få in i programmering sidan av saker.

Nu kommer vi att få mer djupgående med programmering. Men innan vi kan få ett program som lastas på chipet, behöver vi ett bra sätt att ansluta SPI (Serial perifera Interface) kontakten till chipet. Vi inte kunde mycket väl stoppa i kontakten i stiften av mikrokontroller, nu kunde vi? Sticker ledningar i slutet av kontakten och in i bakbord är tunn, oattraktiva och eventuellt skadlig till MCU om en tråd som transporterar spänning är oavsiktligt tillämpas på fel PIN-koden.

Därför för att maximera vår chans att lyckas och standardisera varje anslutningsförsöket, vi kommer att bygga en liten styrelse som innehåller en rubrik (lite metall stift som sticka upp) som SPI kontakten kan använda, och även en header som kommer att motsvara lämpliga stiften på mikrokontroller. Dessa kan helt enkelt vara en enda rad med sex stift eftersom skaparna av Atmel AVR Atmega32 mikrokontroller så eftertänksamt ligger dessa pins tillsammans. Detta kommer att tillåta oss att göra våra MCU gränssnittskortet med en mycket smal storlek, vilket kommer att minska det område som täcks på bakbord (som kan ses i videon). Oh ja, videon innehåller lite lödning, så du kan lära dig som alltför!

OK, så finns för att upprepa från den sista läraren, det en programmerare som behövs mellan datorn och mikrokontroller. Det bör noteras att det finns flera olika programmerare som kan användas, och en lämplig modell kan fås från Adafruit Industries (USBTinyISP) eller Sparkfun (Pocket AVR). Några av dessa programmerare ser helt annorlunda från andra, men alla av dem gör i princip samma sak--tillhandahåller ett gränssnitt mellan datorn och AVR mikrokontroller. Det är det! Observera att om du inte använder AVR Atmega32 mikrokontroller, måste du kontrollera kompatibilitet programmeraren du väljer att använda. Observera också att många av dessa programmerare använder samma drivrutiner, en fråga som vi kommer att få i nästa handledning.

Anslutningen mellan datorn och MCU är egentligen ganska enkelt, så det bör finnas någon anledning att vara rädd för (eller blyga med) gör dessa steg för att få ett program till mikrokontroller. Så, låt oss få till det! Kom ihåg att syftet med att göra sådana ett gränssnittskort, att säkerställa en korrekt anslutning varje gång vi måste läsa in vårt program till MCU. Så om du vill göra en styrelse som har jag visat i videon, sedan bara få ut din lödkolv. Inte vara rädd, få ut! Tja, bör du vara försiktig, eftersom det blir varmt. Men låt inte att få i din väg. Se bara till att läsa alla tillverkarens anvisningar på funktion på lödkolven. Glöm inte att bära glasögon; och inte andas lödtenn rök. Vissa människor använder ett sug fan för att få rök från arbetsytan.

Kolla in diagrammet 1.1 ovan. Ja, det är lite rörigt, men jag drog detta medan koffein forsade genom min system! SPI-kontakt pin-out är till vänster. Det finns pilar från detta SPI gränssnitt block till motsvarande stift på AVR Atmega32 mikrokontroller. Det kommer att finnas något behov för fancy komponenter till komplicerade denna process, så oroa dig inte--vi endast ansluter kablarna från SPI enheten till stift av mikrokontroller.

Låt oss gå igenom anslutningarna mellan SPI-enheten och MCU:

  • Övre vänstra SPI pin är ansluten till MISO (Master i slav ute)
  • Mellersta vänster SPI pin är ansluten till SCK (klocka stift)
  • Nedre vänster SPI pin är ansluten till Reset (Återställ bara gör exakt vad är säger, och du kan vara säker på att vi kommer att tala om detta stift senare!)
  • Nedre höger SPI pin är ansluten till GND (marken eller noll volt)
  • Mellersta rätt SPI pin är ansluten till MOSI (Master ut slav i)
  • Övre höger SPI pin är ansluten till VCC (+ 5 volt, vill du, kan du gå kontrollera spänning kraven i sammanfattningen eller den enorma manuellt, och tro mig, detta är inte en lätt läsa!).

Det är det! Allt du behöver göra nu är att löda ledningarna mellan de två uppsättningarna för headers (kom ihåg denna term? De är bara stift som sticka upp och sätt in i en kvinnlig rubrik). Observera att bilden längst upp på denna sida visar rubriken kvinnliga ansluten till manliga huvudet. När dessa kablar är anslutna och lödda-upp, skulle det se ut något i stil med dessa bilder. Men om du vill blir galen och göra det annorlunda, gå för det! Jag uppmuntrar kreativitet.

Som kan ses på bilderna, görs anslutningar från ledningarna till rubrikerna med lödtenn broar. En löda bro är bara löda som "blobbar" tillsammans för att ansluta två platser. Dessa blobbar liknar typ av liten figur 8's eller infinity symboler. Och det är inte så svårt att skapa dessa broar. Allt du behöver göra är löda två tråd med pin-anslutningar som vanligt, och sedan lägga till lite mer lödtenn medan du håller strykjärnet över båda anslutningarna. Detta kommer att ge tillräckligt löda om du vill skapa bron. Det finns dock möjligheten att de inte kommer att överbrygga. Ah, bane av liv för de flesta solderers!

Bron är inte generellt rekommenderas i de flesta tillämpningar. men i detta fall, det är helt enkelt det enklaste sättet att göra anslutningar mellan SPI och MCU stiften, och motsvarande kablar som ansluter dem. När du har tillräckligt löda tillämpas, och varma järnet är över två anslutningen, dra järnet rakt upp längs den PIN-kod och bron bör bibehållas. Annars kan du förstöra bron om varmt strykjärn får återigen att kontakt med huvuddelen av bron. Oroa dig inte--videon visar detta mycket fint, och du borde få kläm på det ganska snabbt.

Så, var inte så lätt? Nu får vi in programvara del av det i de nästa handledningen. Vi kommer att hitta programvaran på internet till: först känner igen och köra USBTinyISP programmeraren (eller, om du väljer, Pocket AVR programmerare); och andra, installera utvecklingsmiljön. Observera att av "förare," menar jag att installera en drivrutin under den Fönstren OS, och "utvecklingen" är helt enkelt programmet du använder för att skriva program som senare kommer att överföras till chipet. Om du använder du installerar detta program på ett annat operativsystem, som Linux eller Mac, kommer du fortfarande att kunna följa med. Här och där, kan jag tala om de andra underbara operativsystem och hur man gör saker (eller hitta de resurser som hjälper). Programmeringen är samma, men utvecklingen blir förmodligen något annorlunda.

Håll ögonen öppna för Del3!

Relaterade Ämnen

MicroController handledning del 10: Att skapa ett spel (knappen spelet)

Nu är vi beredda att tillämpa vad vi vet och göra en verklig spel. Spelet kommer att bestå av ett par knappar och två uppsättningar av lysdioder (2 rader av 7). Målet med spelet är att se som mellan två människor kan driva deras knappen flest gånger...

Början Microcontrollers del 3: Överföra ett Program till mikrokontroller (drivrutiner)

Välkommen till del 3. Detta är en mindre handledning som kommer att behandla helt enkelt laddar drivrutiner se till din programmerare kan kommunicera med datorn ordentligt.Observera att ibland TinyISP och USBAVR enheter nu kommer förladdad med Window...

Början Microcontrollers del 5: Provning programmeraren och bygga den första kretsen

Så långt, bör du ha alla mjukvaran installerad och konstruerade det gränssnitt som kommer att ge en bekväm anslutning från programmeraren till mikrokontroller (MCU). För nästa steg måste en skärbräda (de med siffror är mycket bra), en LED och ett mot...

Att skapa ett hem automationssystem!

Här är hur automatiserat jag mitt hem. Jag behövde ett sätt att;-Hantera min solenergi system inklusive möjligheten att byta till/från verktyget leverans bör jag behöver det.-hantera mat och vatten till mina tre hundar.-Kontrollera utomhusbelysning.-...

Början Microcontrollers del 13: Intro till LCD gränssnitt

Mikrokontroller är en underbar bit av ingenjörskonst och det kan göra många saker (med hjälp av några bra programmering), men det är fortfarande en ogenomskinlig svart låda. Om du vill att dela information, eller visa dig vad det försöker göra det, m...

Att skapa ett universitet Monument och replika brons

2008, min far och jag fick i uppdrag att skapa en 14' höga monument av en cougar maskot för Washington State University. Vi har också skapat tre mindre storlek brons repliker av monumentet att sälja till alumni och fans.I detta instructable jag komme...

Att skapa ett webbformulär i Wolfram språk

Detta är en övning att skapa ett webbformulär med Wolfram språk. Men förklaringen är använder ett exempel, "energieffektivitet Calculator", kan vi använda de funktioner som används för att skapa någon typ av webbformuläret.För att göra detta, må...

Guide till att skapa ett Storyboard

detta instructable är en guide på hur man skapar en storyboard. Detta är en ganska enkel process, och allt som krävs är lite kul och fantasi. Det finns många metoder för att skapa ett storyboard, men detta instructable visar bara två av dessa. En är...

Att skapa ett PEPPARKAKSHUS från en en ram.

förvandla en en ram till något lite sötare. Barn älskar våra pepparkakshus och julen är mycket roligare.1, vi målade pråm styrelser en Pepparkaka brun, sedan, handmålade vita hjärtan, vi skär ut större hjärtan ur Marina spel, och bifogas de övre hörn...

Att skapa ett upprepande enheten armband

Instructable för att skapa ett upprepande enheten armband:Material:-akryl blad i olika färger (och tjocklekar, om du gillar)-18 gauge aluminium tråd (eller sterling silver om du vill att det ska hålla längre-det är dyrare och lite svårare att arbeta...

3 sätt att skapa ett Virus

jag vet att detta kommer att vara kontroversiell. Detta är endast för informationsändamål. INTE sprida eller släppa de virus som skapats i denna artikel. Detta kommer att landa du i fängelse. Jag ska lära dig att skapa ett virus. En mycket grundlägga...

Början Microcontrollers del 7: Omarbetning av det första programmet att göra LED blinkar

Du har skrivit det första programmet, som visade på en LED. Ja, det var spektakulärt! Tja, inte riktigt, men låt oss införa lite galenskap till LED. Vi ska ge det en "bipolära" personlighet genom att blinka. Då vi kliver upp ett snäpp och gör de...

Början Microcontrollers del 6: Skriva det första programmet till vända på en LED

Jag vet att du är redo att skriva det första programmet. Du har gått igenom en hel del hittills! Medan vi i frågan, låt oss sammanfatta händelserna. Du gick ut och köpte Atmel AVR mikrokontroller för att förstora. Jag valde theATMega32 för min använd...

Början Microcontrollers del 11: Timers, räknare och mikrokontroller klockan

Timers och räknare är så integrerad att du kommer att se många exempel på dem i hela denna serie. Som namnet säger, används timers för tid och räkna. Inventering och timing kan du göra några mycket fina saker som kontrollerande LED brights, vinkel gr...

Början Microcontrollers del 12: Intro till avbryter

I denna del av handledningen vi prata om avbrott arbeta till exempel med räknaren. Avbryter förbättra mikrokontroller i stort sätt. Avbryter göra din program reagerar på hårdvaran i microcontrollers, vilket kan vara en reaktion från circuit utanför m...

Början Microcontrollers del 9: Knappen och programvara Debouncing metoder

I denna del av handledningen kommer att vi diskutera knappen och programvara debouncing.Vi vill studera knappen debouncing första och i detalj så vi har en god förståelse för vad det innebär. Knappen debouncing är viktigt och bör inte vara undervärde...

Början Microcontrollers del 8: Lägga till en knapp till mikrokontroller och göra det göra något

En mycket enkel och lätt sätt att tillhandahålla för mänsklig interaktion med mikrokontroller är att infoga en knapp i kretsen. Att kommunicera med datorer som använder två viktigaste inmatningsenheter: musen och tangentbordet. Ett tangentbord är ing...

Att skapa ett Lego hus om du vill dölja USB

Är du trött på att förlora din USB eller den blir stulen? Är du ständigt uttråkad av din intetsägande USB? Skydda dina data med denna snyggt gömd plats. Detta lätt att bygga lego hus låter dig dölja dina data i vanlig syn och/eller har en awesome let...

Början Microcontrollers del 4: Installera programmering miljö (WinAVR)

Välkommen till nästa steg i vår serie. Vi kommer att introducera några grundläggande programmeringselement nu. Denna handledning är helt enkelt om hur du installerar din programmeringsmiljö. Den programmeringsmiljö som vi kommer att använda kallas Wi...