Elektroniska LEGO DL-44 Blaster (ljus & ljud) (6 / 11 steg)
Steg 6: Programmera Chip
Det finns många tutorials online av hur ladda upp koden från Arduino till en fristående chip på en skärbräda (t.ex ATtiny85, eller i detta fall ATmega32), men ack, jag har haft ingenting men misslyckades resultat när du använder dem personligen - tills jag hittade denna särskilda guide från Boris Landoni (de flesta av bilderna i det här avsnittet tas direkt från hans handledning). I sin handledning, förklarar han hur en handfull delar att enkelt överföra koden från Arduino till ett chip på bakbord, genom att först något justera Arduino programvaran. Således kan du använda den hela chip utrymme utan att behöva bränna en bootloader på fristående chip.
För denna del använde jag följande produkter:
- Arduino IDE programvara--nedladdning.
- Arduino Uno: detta är den enhet jag använder för närvarande, vilket är lyckats ladda upp skisser till chipet. Personligen vet jag inte om andra modeller som Mega, men baserat på mitt antagande, de bör fungera lika bra. Boris tutorial förklarar att Duemilanove fungerar bra.
- Set av brödunderläggen (valfri storlek).
- Färgade hoppare ledningar - kan du köpa ett kit av dessa från Radio Shack för mindre än $10 USD, tror jag. Jag använde standard hoppare ledningar, men Boris handledning använder manliga jumper leder.
- ATmega32P-PU chip till program. Dessa allmänhet sälja i minut online från olika källor från ca $3,50-4 USD, tillgänglig från Sparkfun, Digikey, Jameco, råttfångare, Newark, et alia. Jag köpte fyra av dem från en eBay-butik kallas atomer industrier. Är det viktigt att du köper denna specifika modell! ATmega32P-PU är den senaste chipet och en som arbetar med denna handledning.
- 16 MHz oscillerande kristall - detta är tyvärr svårt att hitta i butiker, men online kan du få flera på riktigt billiga.
- Två 22pF keramiska kondensatorer - Radio Shacks brukar inte sälja dessa obskyra storlekar, så jag köpte massor av eBay.
- En 10uF elektrolytisk kondensator - vanligtvis runt $1,50 på Radio Shack.
- En 10K Ω motstånd.
En 220 eller 470 Ω motstånd (valfritt). Detta är för lampan som blinkar på bakbord när skissen har laddats upp.
- En 5mm ledde (valfritt). När skissen uppladdningar framgångsrikt storbildsformat, bör denna blinkar.
Förutsatt att inte du är bekant med programmering mikrokontroller via en Arduino, för korthetens, se Boris länk upp ovan, som bryter ner de nödvändiga stegen i var du vill placera kablarna och hur du ändrar din kod mer i detalj. Jag ska sammanfatta saker och ge dig den grundläggande genomgång:
- Välj "Arduino som an ISP" exempel på menyn, Välj din modell Arduino menyn styrelser (i mitt fall Uno), ladda upp skissen. Din Arduino är nu konfigurerad för att agera programmerare för enskilda microctrollers.
- Ställ in din skärbräda enligt bilderna, med ordentlig objekten i deras exakta platser--inkluderar detta kondensatorer, motstånd, 16 MHz kristall, sladdar, ATmega32 och Arduino själv (Arduino ansluten via USB).
- Leta upp filen "boards.txt", som finns i: C:\Program Files\Arduino\hardware\arduino (som har där gruvan ligger--din kunde variera utifrån där du installerade Arduino IDE).
- I filen boards.txt, kopiera och klistra in texten från min bifogade anteckningar-fil i botten av de redan existerande kodraderna.
- När du har gjort det, starta om Arduino IDE, titta till Verktyg-menyn, Välj styrelser, och på botten bör du se en ny styrelse som kallas "ATmega i Stand Alone - Julius Rocks! (Arduino som ISP) "--jag självklart lägga att det som en flagga till veta om den arbetat! Välj det stiga ombord.
- Öppna upp DL-44 blaster koden från de bifogade filerna och Visa den i Arduino IDE. Min kod innehåller ett små ljudklipp av Han Solo blaster bränning; den solida byten var av mig ur den exakta platsen där han skjuter Greedo (första) för filmen noggrannhet! Jag har konverterat ljudklippet till binär kod, som framgår av informationen om källa. Dessutom har jag vissa förseningar i koden för att få den främre nosparti flash blinka snabbt i en sekund; Du kan röra med funktionen dröjsmål att hastighet/långsam detta eller ta bort ett ögonblick.
- Välj "Ladda upp med hjälp av programmerare"-- och inte via vanliga ladda upp.
- Om det fungerade, kommer att koden gå till ditt chip i några sekunder.
- Ta bort din ATmega32 från bakbord, och gå vidare till "Arduino på ett bakbord" steg att testa!
Krediter bilder: Boris Landoni.