[Powered by Google Translate] CHRISTOPHER Bartholomew: Så du har förmodligen hört en mycket om Arduino, och alla de lysande sätt det kan vara programmeras med C för att ta emot synpunkter från kringutrustning som knappar, sensorer och knoppar. Eller visa och styra ut genom fysiska komponenter som lampor, högtalare, servon och motorer. Men vad är en Arduino, egentligen? En Arduino är en typ av mikrokontroller, och en mikrokontroller kan ses som en mycket skalas ned dator som innehåller komponenter såsom en processorn, små mängder minne för lagring enkel program och olika input / output pins som producerar en elektrisk ström som en följd av instruktionerna i ditt program. Stiften på en Arduino är här för att samverka med fysiska komponenter såsom lysdioder, högtalare, sensorer, motorer, och så mycket mer. Detta är en Arduino Uno R3 som vi kommer att använda under kursens gång. I den här videon, kommer jag att gå över några av de viktigaste komponenter i denna styrelse. Men om du vill ha mer information, som jag rekommenderar du läser, besök länken för Arduino Uno fulla specifikation. Kraft för styrelsen kan tas emot från USB, extern AC till DC nätaggregat eller genom batterikontakterna. För dessa video övningar kommer vi att använda USB för ström. Om du är intresserad av andra sätt att ge ström till din Arduino styrelse eller vill veta mer om matningen, hänvisas till effektdelen av beskrivningen länken. Sedan finns det två huvudsakliga stift avsnitt om en Arduino som vi använder för att ge spänning till våra komponenter - digitala stift och analoga stift ingång. Innan vi går vidare, låt oss förstå dessa två termer. Analog ingång stift är för komponenter som rattar, som skapar analoga signaler. En knopp kan ge olika mängder av resistens mot spänningen mellan de två stiften som den är ansluten till. Ta till exempel, en ljusregulator. Eftersom vredet vrids i en riktning, ljuset kommer bli ljusare eftersom motståndet minskar. Detta ger en starkare elektrisk ström till komponent, vilket resulterar i en ljusare ljus. Nu digitala stiften är något annorlunda i den de producerar en digital signal som är beroende av mängden av spänningen över stiften. Digitala signaler för Arduino är antingen på vid 5 volt, eller jordad betyder av, eller noll volt. Ta till exempel en strömbrytare. En strömbrytare har två värden - på och av. När du slår på ljuset på med strömbrytaren, du ger full effekt till det ljuset. Tja, på temat digitala och analoga, jag är säker du har märkt vid det här laget akronymen PWM enligt den digitala pin. Detta står för Pulse Width Modulation. PWM manipulerar spänningen över tiden för att producera modulering effekter som liknar dem av de analoga stiften. Till exempel, genom att vrida en ljus på och av snabbt för olika lång tid, kan det styra ljusets ljusstyrka. Så du kanske frågar dig själv, om allt du behöver göra är att ge viss spänning till någon komponent för att det ska fungera, varför ens ha en mikrokontroller? Nåväl, låt oss ta en hög nivå titt på en mikrokontroller som Vi kan interagera med dagligen - väckarklockan. Alarmet har många ingångar, till exempel knappar, som används för att interagera med väckarklockan programmet. Det har också utgångar som är ljusemitterande kallas kretsar syv segment displayer som visar tiden. Detta är alla styrs av ett program som finns i en mikrokontroller minne. Nu ska vi ta en titt på ett scenario och se om vi kan replikera väckarklocka med detta Arduino. Du är redo att gå i vila, men du måste ställa in larm att vakna. Vi vet att genom att använda några knappar kan vi ställa några variabel, tid, som ger programmet en tillstånd måste uppfylla. Såsom när den här gången är sant, bör programmet skicka en signal till ett annat stift som är ansluten till en högtalare. Och när denna signal mottas av högtalaren, den bör spela en förfärlig ljud. Låt oss använda en enkel krets för att ge dig något sammanhang vad Jag talar om. Så nu att ditt larm är inställt, är ditt tillstånd nu lagrad i programmets minne. Och efter bara nio sekunder sömn, hör du det fruktansvärda larm ljuda borta. Jag ska gå vidare och plug-in våra larm här. Nu vill vi inte att få upp riktigt än, så vi känner för det snooze-knappen. Vi låter den sovande eleven stanna, eller avbryta denna hemska larmet, genom att bara trycka på den knappen. Men vad händer egentligen när mikrokontroller program emot en signal från snooze-knappen? Jo, när snooze-knappen trycks in, är en signal emot på en annan pinne. I allmänhet, när programmet mottar denna insignal från stift den reagerar genom att anropa någon funktion för att fördröja eller sova, den signal som skickades till vårt högtalare stift. Denna försening eller sömn under en konstant tid som vanligtvis är cirka nio minuter, eller Arduino termer, 540.000 millisekunder. Om väckarklockan inte är avstängd innan snooze timer tär, kommer programmet tillstånd skicka en annan signal till talarens stift, vilket vänder larmet igen. Nu gör vad Arduino speciell för CS50 är dess utvecklingsmiljö använder C-språket, vilket ger dig befogenhet att tillämpa kunskaper på ett mer direkt praktisk väg. Även om vi inte beröra de andra särskilda stift involverad i Arduino, rekommenderar jag att du besöker specifikation och läsa om deras kapacitet ytterligare. I en annan video, kommer vi att undersöka Arduino utvecklingsmiljö för CS50 maskinen och skriva vår 1:e mikrokontroller ansökan. Mitt namn är Christopher Bartholomew, det här CS50.