[Powered by Google Translate] CHRISTOPHER Bartholomew: Så du har sikkert hørt en masse om Arduino, og alle de geniale måder det kunne være programmeres med C til at modtage input fra eksterne enheder lignende knapper, sensorer og knopper. Eller vise og styre output gennem fysiske komponenter ligesom lys, højttalere, servoer og motorer. Men hvad er en Arduino, virkelig? En Arduino er en type af microcontroller, og en microcontroller kan opfattes som en meget skaleret ned computer, som indeholder komponenter, såsom en processor, små mængder hukommelse til lagring af enkle programmer, og forskellige input / output pins, der producerer en elektrisk strøm som et resultat af instruktionerne i dit program. Benene på en Arduino er her for at interface med fysiske komponenter såsom lysdioder, højttalere, sensorer, motorer, og så meget mere. Dette er en Arduino Uno R3, som vi vil bruge hele kurset. I denne video, vil jeg være at gå over nogle af de vigtigste komponenter i dette board. Men hvis du ønsker flere oplysninger, som jeg anbefaler du læser, kan du besøge linket til Arduino Uno fulde specifikation. Strøm til bestyrelsen kan modtages fra USB, ekstern AC til DC strømforsyninger, eller ved batteritilslutninger. For disse video øvelser, vil vi bruge USB til strøm. Hvis du er interesseret i andre måder at levere strøm til din Arduino bord eller ønsker at vide mere om magt stifter, henvises til magten del af specifikationen linket. Dernæst er der to vigtigste pin sektioner på en Arduino at vi vil bruge til at give spænding til vores komponenter - digitale stifter og analoge input pins. Før vi går videre, så lad os forstår disse to begreber. Analoge input pins er for komponenter såsom knapper, som skaber analoge signaler. En knop kan give forskellige mængder af resistens over for Spændingen mellem de to stifter, som den er tilsluttet. Tag for eksempel en lysdæmper. Da knappen er snoet i en retning, lyset bliver bliver lysere, fordi modstanden mindsker. Hermed bliver elektrisk strøm til komponent, hvilket resulterer i en lysere baggrund. Nu de digitale pins er lidt anderledes, idet de producerer et digitalt signal, der er afhængigt af Mængden af ​​spændingen over tappene. Digitale signaler til Arduino er enten på ved 5 volt, eller jordforbundne betyder fra eller nul volt. Tag for eksempel en lyskontakt. En lyskontakt har to værdier - til og fra. Når du tænder lyset med kontakten, er du giver fuld strøm til dette lys. Tja, om emnet digitale og analoge, er jeg sikker du har bemærket ved nu akronymet PWM under den digitale pin sektion. Det står for Pulse Width Modulation. PWM manipulerer spændingen over tid til frembringelse modulationseffekter, der ligner dem, De analoge stifter. For eksempel drejning af et lys tændes og slukkes hurtigt for forskellige tidsrum, kan det styre lysets lysstyrke. Så du måske spørge dig selv, hvis alt hvad du skal gøre er at give nogle spænding til en komponent for det til at virke, hvorfor overhovedet have en microcontroller? Nå, lad os tage et højt niveau kig på en microcontroller der vi kan interagere med dagligt - vækkeuret. Alarmen har mange indgange, f.eks knapper, som anvendes til at interagere med alarmen programmet. Det har også udgange, som er lysemitterende kaldet kredsløb syv segment displays, der viser tiden. Alt dette er styret af et program, der er indeholdt i et microcontroller hukommelse. Lad os nu tage et kig på et scenarie og se, om vi kan kopiere vækkeuret med denne Arduino. Du er klar til at gå på vågeblus, men du bliver nødt til at indstille din alarm til at vågne op. Vi ved, at ved at bruge nogle knapper vi kan sætte nogle variabel tid, der giver programmet en betingelse det skal opfylde. Såsom, når denne tid er sandt, skal programmet sende et signal til en anden stift, der er forbundet til en højttaler. Og når dette signal modtages af taleren, det bør spille en forfærdelig lyd. Lad os bruge et simpelt kredsløb til at give dig nogle sammenhæng til, hvad Jeg taler om. Så nu, at alarmen er indstillet, er din tilstand nu gemt i programmet hukommelse. Og efter kun ni sekunders søvn, hører du den forfærdelige alarmen lyder væk. Jeg har tænkt mig at gå videre og plug-in vores alarm her. Nu ønsker vi ikke at komme op helt endnu, så vi føler for det snooze-knappen. Vi lader den sovende studerende standsning eller afbryde denne forfærdelige alarmlyd, ved blot at trykke på denne knap. Men hvad der virkelig sker, når microcontroller program modtager et signal fra snooze-knap? Nå, når snooze-knappen, et signal er modtaget på et andet stift. Generelt programmet, når modtager dette input fra pin det reagerer ved at kalde en funktion til at forsinke eller sove, det signal, der blev sendt til vores højtaler pin. Denne forsinkelse eller søvn er for nogle konstant tid, som normalt er omkring ni minutter, eller i Arduino vilkår, 540.000 millisekunder. Hvis vækkeuret ikke er slukket, før snooze timeren udtømmer, vil programmet tilstand sende en anden signalere til den talendes pin, således at dreje alarmen igen. Nu, hvad gør Arduino speciel til CS50 er dens udviklingsmiljø bruger sproget C, hvilket giver dig beføjelse til at anvende viden på en mere direkte hands-on måde. Selvom vi ikke komme ind på de øvrige særlige stifter involveret med Arduino, vil jeg anbefale, at du besøger specifikation og læs om deres muligheder yderligere. I en anden video, vil vi undersøge Arduino udviklingsmiljø på CS50 apparatet og skrive vores 1. microcontroller ansøgning. Mit navn er Christopher Bartholomew, det er CS50.