1 00:00:07,710 --> 00:00:11,120 [Powered by Google Translate] I den här videon jag presentera några nya komponenter 2 00:00:11,120 --> 00:00:13,630 som kommer att användas för att konstruera den första kretsen. 3 00:00:13,630 --> 00:00:17,810 Efteråt kommer vi att kliva in i Arduino utvecklingsmiljö 4 00:00:17,810 --> 00:00:21,250 och lära sig några av det grundläggande funktioner. 5 00:00:21,250 --> 00:00:28,350 Slutligen kommer vi att koda vår första mikrokontroller program och ladda upp den till vår Arduino. 6 00:00:28,350 --> 00:00:30,400 Låt oss komma igång. 7 00:00:30,400 --> 00:00:37,500 >> Den första komponenten som vi bör bekanta oss med är lödfria bakbord. 8 00:00:37,500 --> 00:00:42,590 Denna bakbord ger oss möjlighet att prototyp eller testa våra kretsar 9 00:00:45,190 --> 00:00:51,900 helt enkelt genom att placera ledningarna eller slutar komponent inuti dessa små hål som kallas uttag. 10 00:00:51,900 --> 00:00:58,000 Det är viktigt att notera att bokstäver och siffror löper längs omkretsen av bakbord. 11 00:01:00,670 --> 00:01:04,760 Detta beror på att uttag i varje numrerad rad är anslutna 12 00:01:04,760 --> 00:01:13,260 vilket betyder rad 1A till 1E rad, till exempel, 13 00:01:13,260 --> 00:01:20,570 får samma ström, men är raderna inte anslutna till varandra. 14 00:01:23,920 --> 00:01:28,330 >> Nästa komponent är det motstånd som har de primära puroposes 15 00:01:28,330 --> 00:01:31,280 begränsa ström och dividera spänningen. 16 00:01:31,280 --> 00:01:36,530 Vi använder motstånd eftersom inte alla komponenter acceptera samma nivå av spänning 17 00:01:36,530 --> 00:01:39,220 att strömkällan ger. 18 00:01:39,220 --> 00:01:45,190 När en stadig spänning appliceras till ledningarna hos motståndet, 19 00:01:45,190 --> 00:01:51,040 mängden ström som gör det möjligt att strömma genom den bestäms av dess resistans 20 00:01:51,040 --> 00:01:53,360 som mäts i ohm. 21 00:01:53,360 --> 00:01:57,520 Så att fler ohm resulterar i mindre ström. 22 00:01:57,520 --> 00:02:01,720 För att räkna ut hur att beräkna motstånd i ohm 23 00:02:01,720 --> 00:02:05,900 att ett motstånd gäller, ser vi helt enkelt på dess färg ränder 24 00:02:05,900 --> 00:02:08,500 vilket sjal runt ytterhöljet. 25 00:02:08,500 --> 00:02:14,200 Resistansvärdet kan läsas av de första 3 ränder av färg. 26 00:02:14,200 --> 00:02:22,040 Varje färg har ett angivet värde från 0, som svart, till 9, är vit. 27 00:02:22,040 --> 00:02:26,770 Du kan hitta mer information om dessa värden som från länken. 28 00:02:26,770 --> 00:02:33,530 Det finns också fjärdedel rand som kommer i antingen guld, silver eller bara tomt. 29 00:02:33,530 --> 00:02:41,400 Detta ger toleransnivåer för motståndet, dvs hur nära det matchar sin beräknade motstånd. 30 00:02:41,400 --> 00:02:47,790 För nu kan vi ignorera den fjärde rand och ställa vårt fokus på den första 3. 31 00:02:47,790 --> 00:02:54,830 >> Den första rand, vilket är motsatsen till tolerans rand, är den första siffran. 32 00:02:54,830 --> 00:02:58,260 Detta värde kan vara 0 till 9. 33 00:02:58,260 --> 00:03:05,130 På liknande sätt är den andra rand den andra siffran som också kan ha ett värde på 0 till 9. 34 00:03:05,130 --> 00:03:09,780 Men den tredje siffran är där det blir annorlunda. 35 00:03:09,780 --> 00:03:16,730 Den tredje siffran är antalet 0 s som läggs till i slutet av de första 2 siffrorna. 36 00:03:16,730 --> 00:03:20,920 Det formella namnet på denna rand är multiplor. 37 00:03:20,920 --> 00:03:23,800 Ta till exempel detta motstånd. 38 00:03:23,800 --> 00:03:28,610 Vi har idag en apelsin, orange, brun motstånd. 39 00:03:28,610 --> 00:03:35,120 Oranges värde är 3, och brunt värde är 1. 40 00:03:35,120 --> 00:03:42,400 Därför har vi en 3, 3, 0 eller 330 ohm motstånd. 41 00:03:42,400 --> 00:03:48,960 Tänk den tredje rand, som är brun, talar om för oss bara antalet 0-talet för att läggas 42 00:03:48,960 --> 00:03:52,200 på de första och andra siffrorna. 43 00:03:52,200 --> 00:03:58,720 >> Äntligen vår sista komponenten är den lysdiod eller LED för korta. 44 00:03:58,720 --> 00:04:04,250 Lysdioden är lite ljus som vi kan hitta i de flesta av våra elektronik. 45 00:04:04,250 --> 00:04:10,250 För att en LED att avge ljus, måste ström passera genom en ledning i en specifik riktning. 46 00:04:10,250 --> 00:04:12,250 Men vi kommer att återkomma till detta inom kort. 47 00:04:12,250 --> 00:04:16,209 För nu, märker hur 1 bly är längre än den andra. 48 00:04:16,209 --> 00:04:22,860 Den längre bly kallas anoden, och detta är den positiva terminalen för LED. 49 00:04:22,860 --> 00:04:28,470 Den kortare bly, som är den negativa terminalen kallas katoden. 50 00:04:28,470 --> 00:04:31,810 >> Nu när vi har en allmän förståelse för våra komponenter, 51 00:04:31,810 --> 00:04:33,950 låt oss bygga vår första kretsen. 52 00:04:33,950 --> 00:04:38,950 När du börjar bygga en krets bör du alltid koppla bort Arduino från datorn. 53 00:04:38,950 --> 00:04:44,790 Så enligt vår schematiska vet vi att motståndet ska vara mellan 54 00:04:44,790 --> 00:04:50,490 strömkällan, dvs en av de Arduino digitala stift, och anoden, 55 00:04:50,490 --> 00:04:53,550 pluskabeln av LED. 56 00:04:53,550 --> 00:04:58,380 Medan katoden, negativa bly, kommer att anslutas direkt till jord, 57 00:04:58,380 --> 00:05:00,930 därmed slutföra vår krets. 58 00:05:00,930 --> 00:05:07,040 Till skillnad från LED spelar ingen roll den riktning som vi placerar motståndet inte. 59 00:05:07,040 --> 00:05:13,310 Låt plats en av resistorerna leder i uttaget raden 1A. 60 00:05:21,790 --> 00:05:25,830 Nu ska vi placera den andra ledningen av motståndet i en separat krets väg. 61 00:05:25,830 --> 00:05:28,890 Vad sägs om raden 2A? 62 00:05:39,990 --> 00:05:43,410 >> Jättebra. Halvvägs där. Låt oss gå vidare till LED. 63 00:05:43,410 --> 00:05:49,970 Per den schematiska, vår anod, pluskabeln måste anslutas till vårt motstånd. 64 00:05:52,190 --> 00:05:57,910 Det innebär att vi bör placera lysdioderna anod i en sockel som finns på samma 65 00:05:57,910 --> 00:06:00,510 krets väg som 1 av motstånden leder. 66 00:06:00,510 --> 00:06:03,760 Låt oss göra raden 2E. 67 00:06:09,440 --> 00:06:15,310 Per vår schema, vet vi att katoden kommer att gå direkt in i Arduinos jordstift. 68 00:06:15,310 --> 00:06:21,370 Så vi kan placera katoden i rad 3E. 69 00:06:24,480 --> 00:06:27,450 >> Jättebra. Den sista delen i vår schema är helt enkelt använda dessa startkablar 70 00:06:27,450 --> 00:06:32,190 att ansluta till vår Arduino, vilket innebär att kretsen. 71 00:06:32,190 --> 00:06:37,080 Låt oss börja med att göra anslutningen från katoden till Arduinos marken. 72 00:06:37,080 --> 00:06:42,610 För att göra detta, koppla vi helt enkelt bygeln kabeln till någon av uttagen 73 00:06:42,610 --> 00:06:47,630 vilken delar samma A till E rad av katoden. 74 00:06:47,630 --> 00:06:55,060 I det här fallet kommer vi koppla 1 änden av bygeln kabeln direkt till rad 3A. 75 00:07:12,190 --> 00:07:18,580 Den andra kontakten går in 1 av de jordade eller drakmer digitala stift Arduino. 76 00:07:25,310 --> 00:07:29,550 När det gäller den andra kabeln, enligt vår schematiska vi kommer att göra en koppling 77 00:07:29,550 --> 00:07:36,390 från vår motstånd till vår kraftkälla som är 1 av de digitala stift på Arduino. 78 00:07:36,390 --> 00:07:42,150 Vi vet redan att 1 änden av motståndet är ansluten till lysdioderna anoden. 79 00:07:42,150 --> 00:07:49,110 Så detta lämnar oss med endast 1 val, rad 1 uttag B till E. 80 00:07:49,110 --> 00:07:52,410 Låt oss ge oss själva utrymme mellan våra komponenter. 81 00:07:52,410 --> 00:07:56,610 Låt oss kontakt 1 änden av bygeln kabeln i rad 1E. 82 00:08:07,670 --> 00:08:12,870 Slutligen, den andra änden av denna jumper kabel i digital stift 13. 83 00:08:12,870 --> 00:08:17,000 Kom ihåg detta stift. Det kommer att bli mycket viktigt snart. 84 00:08:26,660 --> 00:08:29,860 >> Tja kretsen ser ganska, men vi vill att det ska göra något. 85 00:08:29,860 --> 00:08:31,860 Låt oss knäcka våra knogar och komma till saken 86 00:08:31,860 --> 00:08:34,750 skriver vår första mikrokontroller programmet. 87 00:08:34,750 --> 00:08:38,730 Första kontakten den fyrkantiga USB änden till Arduino. 88 00:08:42,870 --> 00:08:44,930 För att börja skriva vårt eget program, 89 00:08:44,930 --> 00:08:48,000 Vi kommer att behöva tillgång till Arduino integrerad utvecklingsmiljö, 90 00:08:48,000 --> 00:08:51,570 som jag kommer att hänvisa till som IDE. 91 00:08:51,570 --> 00:08:55,890 För att göra detta, klicka på apparaten menyn längst ner vänstra delen av skärmen. 92 00:08:55,890 --> 00:09:01,510 Gå till programmering och välj Arduino från denna meny. 93 00:09:01,510 --> 00:09:05,210 Om Arduino programmet inte är installerat kan du enkelt installera det genom 94 00:09:05,210 --> 00:09:08,450 öppna en terminal och skriva följande kommando: 95 00:09:08,450 --> 00:09:13,450 Sudo yum install Arduino. 96 00:09:13,450 --> 00:09:15,450 Du måste starta om apparaten när den är klar. 97 00:09:16,820 --> 00:09:20,070 Så när du startar IDE, är det första du bör kontrollera 98 00:09:20,070 --> 00:09:25,480 är om Arduino IDE registrering eller se din Arduino-enhet. 99 00:09:25,480 --> 00:09:30,190 Du kan göra detta genom att helt enkelt gå till Verktyg-menyn, sväva över serieport, 100 00:09:30,190 --> 00:09:34,340 och det bör finnas minst 3 uppräknade enheter. 101 00:09:34,840 --> 00:09:41,680 Om den inte är markerad redan, gör att du kontrollerar / dev/ttyacm0 102 00:09:41,680 --> 00:09:44,990 eftersom det är där du Arduino är ansluten till. 103 00:09:44,990 --> 00:09:50,790 >> När du först öppna Arduino IDE ett nytt projekt, som kallas en skiss, 104 00:09:50,790 --> 00:09:53,250 öppnar automatiskt. 105 00:09:53,250 --> 00:09:56,500 Detta område kommer att användas för att placera våra kodning. 106 00:09:56,500 --> 00:10:00,700 Längst ner på skärmen finns ett terminalfönster ansvar för utmatning uppgifter 107 00:10:00,700 --> 00:10:06,180 såsom koder complilation respons eller fel syntax i koden. 108 00:10:06,180 --> 00:10:10,340 Längst upp på skärmen precis under Arkiv-menyn finns en rad ikoner 109 00:10:10,340 --> 00:10:12,290 att vi bör känna till. 110 00:10:12,290 --> 00:10:17,050 Utgående från vänster långt, finns det en ikon som liknar en kontroll. 111 00:10:17,050 --> 00:10:20,920 Denna knapp kallas kontrollera och dess ansvarar för att sammanställa din kod 112 00:10:20,920 --> 00:10:25,200 medan validering riktigheten av ditt program syntax. 113 00:10:25,200 --> 00:10:30,260 Knappen efter att verifiera, som liknar den hos en sidledes pil som pekar åt höger, 114 00:10:30,260 --> 00:10:32,260 är uppladdningen kommandot. 115 00:10:32,260 --> 00:10:37,180 Uppladdningen kommandot resonsible för att skicka de kompilerade programmen 1: s och 0: s 116 00:10:37,180 --> 00:10:41,010 över till din mikrokontroller för att det ska sparas på kortet. 117 00:10:41,010 --> 00:10:45,810 Tänk på att knappen Bekräfta inte ladda din kod. 118 00:10:45,810 --> 00:10:50,280 De nästa 3 knappar är nya, öppna och spara respektive. 119 00:10:50,280 --> 00:10:54,920 Den sista knappen till höger om denna meny kallas Serial Monitor, 120 00:10:54,920 --> 00:11:00,930 och det fungerar som konsult innebär att programmerare kan konfigurera Arduino läsa som ingång 121 00:11:00,930 --> 00:11:05,730 eller visas som utdata till och från den seriella monitorn. 122 00:11:05,730 --> 00:11:08,600 Vi ska komma tillbaka till den seriella skärmen i en annan video. 123 00:11:08,600 --> 00:11:11,850 >> För nu ska vi börja skriva vårt program. 124 00:11:11,850 --> 00:11:17,350 Nu börjar skriva ett Arduino-programmet något skiljer sig från vanliga C-program. 125 00:11:17,350 --> 00:11:23,570 Detta beror på att en Arduino behöver, på ett minimum, funktionerna här 2 specifik tomrum definieras. 126 00:11:23,570 --> 00:11:26,310 Installation och ögla. 127 00:11:26,310 --> 00:11:32,350 Arduino gör det mycket enkelt att komma igång genom att använda mallar exempelkod 128 00:11:32,350 --> 00:11:35,510 som kommer med IDE. 129 00:11:35,510 --> 00:11:42,750 För att ladda vår absolut minimum, helt enkelt gå till Arkiv-menyn, exempel, välj nummer 1 grunderna, 130 00:11:42,750 --> 00:11:44,380 och klicka på minimum. 131 00:11:44,380 --> 00:11:46,770 Ett nytt skiss fönster ska visas. 132 00:11:46,770 --> 00:11:48,770 Fylla den templatstyrda koden. 133 00:11:48,770 --> 00:11:51,510 Låt oss kort gå igenom dessa 2 funktioner. 134 00:11:51,510 --> 00:11:57,310 Upplägget funktion liknar viktigaste eftersom det är den första funktionen att köra, 135 00:11:57,310 --> 00:11:59,820 och det går bara en gång. 136 00:11:59,820 --> 00:12:04,160 Inställning används för att definiera vilka stift är ingång eller utgång. 137 00:12:04,160 --> 00:12:09,400 Till exempel skulle detta vara ett bra ställe att berätta Arduino som vi vill skriva ut 138 00:12:09,400 --> 00:12:13,400 viss elektrisk ström över till stift nummer 13. 139 00:12:13,400 --> 00:12:19,370 Loop är en funktion som körs kontinuerligt på mikrokontroller. 140 00:12:19,370 --> 00:12:22,130 Ända undrar varför din väckarklocka aldrig slutar? 141 00:12:22,130 --> 00:12:26,170 Det är för att de flesta av de mikroprocessorer kommer slinga genom deras program. 142 00:12:26,170 --> 00:12:31,650 I vår strömkretsen detta skulle vara ett bra ställe att berätta Arduino som vi vill göra 143 00:12:31,650 --> 00:12:34,110 vårt ljus blinkar alltid. 144 00:12:34,110 --> 00:12:41,550 Så i pseudokod det skulle vara något i stil med tur ljus, fördröja n sekunder, slå lampan, 145 00:12:41,550 --> 00:12:45,170 fördröja n sekunder. 146 00:12:45,170 --> 00:12:50,460 >> Väl istället för att skriva ut denna kod vi ska bara fuska. Bara den här gången. 147 00:12:50,460 --> 00:12:55,640 Detta är faktiskt redan en kod mall för en blinkande LED sparats i våra exempel. 148 00:12:55,640 --> 00:13:03,350 För att ladda det gå att lämna, exempel, välj nummer 1 grunder och välj blinkar. 149 00:13:03,350 --> 00:13:09,090 Vad händer här är att en ny skiss fönster ska visas med lite kod redan inne. 150 00:13:09,090 --> 00:13:14,930 Insidan av inställningar kroppen finns en Arduino hjälpare funktion som kallas pinMode. 151 00:13:14,930 --> 00:13:17,540 PinMode förbereder stiftet som skall användas. 152 00:13:17,540 --> 00:13:20,030 Den accepterar 2 parametrar. 153 00:13:20,030 --> 00:13:24,390 Först IO PIN-kod, vilket är stiftet som du vill använda, 154 00:13:24,390 --> 00:13:29,910 och det andra, ett värde som förklarar huruvida stiftet används för inmatning från kretsen 155 00:13:29,910 --> 00:13:36,050 konstant värde på INPUT i alla huvudstäder, eller matas ut till Circut, 156 00:13:36,050 --> 00:13:39,110 vilket är ett konstant värde OUTPUT i alla huvudstäder. 157 00:13:39,110 --> 00:13:43,820 Inuti slingan finns 2 ytterligare Arduino hjälpfunktioner, 158 00:13:43,820 --> 00:13:48,840 digialWrite acceptera 2 parametrar och fördröja acceptera 1 parameter. 159 00:13:48,840 --> 00:13:55,010 DigialWrite används för att interagera med stift som du har konfigurerat med pinMode. 160 00:13:55,010 --> 00:13:59,730 >> Det första argumentet är PIN-koden som du interagerar med. 161 00:13:59,730 --> 00:14:04,440 Det andra argumentet är en konstant som är antingen hög, dvs full spänning, 162 00:14:04,440 --> 00:14:07,080 eller låg, vilket innebär ingen spänning. 163 00:14:07,080 --> 00:14:09,800 Den andra hjälparfunktion är fördröjningen 164 00:14:09,800 --> 00:14:13,870 vilket stoppar koden körs baserat på den tid i millisekunder. 165 00:14:13,870 --> 00:14:18,300 Kom ihåg 1 ​​sekund är lika till 1.000 millisekunder. 166 00:14:18,300 --> 00:14:23,620 Baserat på vår genomgång kan vi dra slutsatsen att om vår krets var korrekt inställd 167 00:14:23,620 --> 00:14:30,910 Våra LED bör sätta på och lysa i 1 sekund och stäng av och stanna utanför i 1 sekund 168 00:14:30,910 --> 00:14:33,640 innan du slår på den igen. 169 00:14:33,640 --> 00:14:38,580 Detta bör upprepas alltid som det är för närvarande i loop-funktionen. 170 00:14:38,580 --> 00:14:42,340 Låt oss välja ladda upp kortet knappen och ta reda på. 171 00:14:48,060 --> 00:14:50,990 >> Jättebra. Så du kanske undrar vad som händer. 172 00:14:50,990 --> 00:14:55,710 Ja nu när du har en förståelse för allt som behövs för att skapa 173 00:14:55,710 --> 00:15:01,030 en Arduino-krets, kan vi börja tillämpa kunskaper från våra föreläsningar i CS50 174 00:15:01,030 --> 00:15:03,800 att vässa vår kompetens ytterligare. 175 00:15:03,800 --> 00:15:08,090 Till exempel, vad händer om jag inte vill använda Arduino loop funktion? 176 00:15:08,090 --> 00:15:11,760 Vad händer om jag istället ville skriva min egen typ av slingor och villkor 177 00:15:11,760 --> 00:15:15,870 eller till och med skapa egna funktioner utanför ett minimum? 178 00:15:15,870 --> 00:15:20,180 Vad händer om jag ville spela musik eller bygga ett inbrottslarm 179 00:15:20,180 --> 00:15:23,900 eller ens kontakta internet med min Arduino? 180 00:15:23,900 --> 00:15:29,330 Svaren på dessa frågor kommer. Så stanna kvar. 181 00:15:29,330 --> 00:15:32,610 >> Jag är Christopher Bartholomew. Detta är CS50.