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 motstånd av en storlek passar för valt LED. Du lära dig i detta avsnitt att testa programmerare för att bestämma om programvara och drivrutiner har installerats korrekt. Du kommer också lära dig lite om LED-lampor, Ohms lag och motstånd värde krävs för valt LED.
För att kontrollera om drivrutinerna och utveckling programvara installerat korrekt, kommer vi att testa programmerare med ett program som heter AVRdude. AVRdude är ett program som har installerats med den senaste WinAVR-installationen, och ansvarar för den faktiska överföringen av filen gå in mikrokontroller. Detta är den hex-filen, vilket är i princip den binär kod som mikrokontroller kan förstå och utföra. Om testet inte är framgångsrika, kommer programmeraren inte att kunna överföra filen--därför detta steg är avgörande för hela processen. För att testa programmeraren, Följ dessa steg:
- Gå till en DOS-prompt genom att klicka på start-menyn och skriva cmd.exe i sökrutan. Förresten, om du inte visste, står DOS för Disk Operating System. Detta var en snabb skapade så computern förbrukaren skulle kunna organisera sina filer på disketter, vilket gör det lätt att utföra (springa) program från DOS-prompten. Snabb: den plats där markören är placerad och du kan börja skriva. Inmatningen är märkt med enhetsbeteckningen tillsammans med mappens namn avgränsade med snedstreck "\". (Vi kallas dessa kataloger tidigare.)
- För att köra programmet avrdude som installerades med WinAVR, helt enkelt skriva avrdude - c usbtiny -p m32 vid DOS-prompten och DOS skal utdata kommer att rapportera framgång för anslutningen. Den "-c" är en flagga som följs av parametern används för att ange programmeraren (usbtiny), och parametern efter den "-p" flaggan används för att ange mikrokontroller ("m32" för Atmega32). Om du använder en annan mikrokontroller, kommer du behöva använda den lämpliga specifikationen, som visas i videon för den här läraren.
- Om du vill stänga av DOS-fönster, kan du skriva "exit" vid DOS-prompten och DOS-fönster kommer att försvinna... precis som mina efemära barn i Disneyland!
Så nu du förmodligen undrar, varför kan inte vi program ännu! Tja, behöva vi fortfarande skapa en krets som programmet kommer att kontrollera. Det skulle vara meningslöst att helt enkelt läsa in ett program i en mikrokontroller och köra det utan alla enheter som är anslutna till den. Vi skulle inte ha mycket att titta på! I själva verket kommer du snart se att många elektroniska komponenter kan kontrolleras av mikrokontrollers, men en av de enklaste enheterna till kontroll är en LED.
"LED" står för Light Emitting Diode, och denna komponent har i allmänhet två leder. Leder är de metall ben (ledningar) hängande bort av den faktiska LED själv. Dessa leder är polar anslutningarna som tillåter nuvarande strömma in LED från en bly (kallat anoden) och sedan ut ur LED från den andra bly (kallas katod). En mycket viktig varning om driva och med hjälp av lysdioder: den nuvarande löper genom LED måste begränsas så att det inte brinner. Lysdioder har både en nuvarande betyg och en märkspänningen. Den nuvarande betyget är nuvarande gränsvärdet som LED kan hantera--någon högre ström och LED life kommer att förkortas; men mindre ström kommer att resultera i en dimmer LED som inte släpper ut ljus som ljust. Så, står vi inför att beräkna det optimala värdet för motståndet kommer vi att välja. Observera att om du inte vill göra denna beräkning av någon anledning, det är oftast säkert att använda en 1k-- men ljuset kommer att vara ganska svagt.
Så för att beräkna motståndet behövs, kommer vi att använda Ohms lag som säger att motstånd (i ohm) hittas genom att dividera spänningen med nuvarande. Formeln är:
Motstånd = volt/aktuellt
Detta vanligtvis skrivs som R = V / jag. Men hur hittar vi till spänning och nuvarande vales för lampan? Normalt lysdioder är dimensionerade för antingen 2 eller 4 volt och har antingen 10 mA (mA) eller 20mA märkström. Min gröna LED är klassat som 2 volt. I webbplats kopplad i föregående mening, har vit och blå lysdioder en spänning betyg 4 volt. Jag använde den 10mA betyget eftersom det är säkrare att använda detta värde som det resulterar i den minsta nämnaren i ohmens lag formel, och utgör därmed det största motståndsvärdet för en viss spänning. Därför kan det anses den "värsta fall" när det gäller att välja ett motstånd att infoga i kretsen. En annan aspekt som vi kommer att behöva överväga är skillnaden mellan matningsspänningen (den spänning vi matar in i systemet) och märkspänningen led. Så därför blir den nya formeln
R = (matningsspänningen - LED spänning) / Jag
Därför när det gäller våra gröna LED, R = (5v - 2v) / .01A = 300 ohm. Oh ja, du behöver konvertera nuvarande till ampere. Därför måste vi dela 10mA numret med 1000, som det finns 1000 Ma i en ampere. Så nu, vad är denna formel säger till oss? Det säger oss att motstånd är lika med den återstående spänningen efter LED anses (dvs, spänningsfallet över LED), dividerat med önskad strömmen genom lysdioden.
Vad är att du säger? Vi fick ett värde av 300 ur formeln, men när jag gick till butiken kunde jag inte hitta detta nummer! Jag hatar att säga detta, men de pengar som spenderas på gas för att resa kunde ha köpt du 40 i rätt motstånd! 300 ohm är ett motstånd som förmodligen inte är tillgänglig, men förlora inte hoppet--kan du alltid använda ett motstånd av nästa högsta värde. Jag har funnit detta vara 330 ohm i mixen av motstånd som jag samlat från olika kastas bort apparater och elektronik.
Nu ska vi skapa den krets, som är ganska enkel i denna tutorial. Svåra är bakom oss (saker ovan), så du kan torka din panna nu! Låt oss använda Pin 0 av PORT "B" på MCU (mikrokontroller) i denna krets, och som råkar vara så att de motsvarar nummer 1 stiftet på Atmega32 mikrokontroller jag använder. Så nu ska vi genom programmering slår på det klämmer fast att lysa upp lampan.
Stegen för att skapa banan gå såhär: ansluta motståndet till pin nummer 1 (Observera att säga "PORTB0" är ett sätt att hänvisa till pin B0 i PORT B, men du lär dig andra sätt också). Nu ansluta den andra änden av motståndet till den positiva sidan av LED (dvs, anod sidan, eller ledningen som är den längsta eller ledningen motsatsen till platt LED). Sedan ansluter vi katoden sidan till jord (GND) PIN-koden. Programmeraren ansluts också förstås; som kommer att tillåta programmet att få överföras till chipet och också ge ström till mikrokontroller. Slutligen, kan vi nu tillämpa kretsen att det set av brödunderläggen. Filmerna visar alla steg som behövs i denna process. Från den medföljande bilden, kan du se att detta är en mycket enkel krets.
Nu gäller kretsen att det set av brödunderläggen. Videor Visa detta med varje steg som behövs. Från bilden, kan du se att detta är en mycket enkel krets.
Kolla in närbild av motståndet och LED. Kan du se hur kabeln är ansluten till motståndet och hur motståndet är ansluten till LED? Efter denna krets är klar på en skärbräda, kan vi börja att programmera och gör LED som lyser upp. Upphetsad? Jag är!