[Powered by Google Translate] CHRISTOPHER Bartolomeus: Så du har sikkert hørt en mye om Arduino, og alle de flotte måter det kan være programmeres med C for å motta innspill fra eksterne enheter som knapper, sensorer og knotter. Eller vise og kontrollere produksjon gjennom fysiske komponenter som lys, høyttalere, servoer og motorer. Men hva er en Arduino, egentlig? En Arduino er en type mikrokontroller, og en mikrokontroller kan betraktes som en svært nedskalert datamaskin som inneholder komponenter som prosessor, små mengder minne for lagring enkel programmer, og ulike input / output pins som produserer en elektrisk strøm som et resultat av instruksjonene i programmet. Pinnene på en Arduino er her for å grensesnitt med fysiske komponenter som LED, høyttalere, sensorer, motorer, og så mye mer. Dette er en Arduino Uno R3 som vi skal bruke gjennom hele kurset. I denne videoen, skal jeg gå over bare noen av de viktigste komponentene i dette forumet. Men hvis du ønsker mer informasjon, som jeg anbefaler du leser, gå inn på linken for Arduino Uno fulle spesifikasjonen. Strøm til styret kan mottas fra USB, ekstern AC til DC strømforsyninger, eller ved batterikontaktene. For disse video øvelser, vil vi bruke USB for strøm. Hvis du er interessert i andre måter å gi strøm til din Arduino bord eller ønsker å vite mer om makt pins, henvises til makten delen av spesifikasjonen koblingen. Deretter er det to hovedtyper pin deler på en Arduino at vi vil bruke til å gi spenning til våre komponenter - digitale pins og analog inngang pins. Før vi går videre, la oss forstå disse to begrepene. Analog inngang pins er for komponenter som knotter, som skaper analoge signaler. En knott kan gi ulike mengder av resistens mot spenning mellom de to pinnene som den er koblet til. Ta for eksempel en lys dimmer. Som knotten er vridd i en retning, lyset vil blir lysere fordi motstanden minsker. Dette gir en sterkere elektrisk strøm til komponent, noe som resulterer i en lysere lys. Nå digitale pinnene er litt annerledes i det de produserer et digitalt signal som er avhengig av mengde spenning over pinnene. Digitale signaler for Arduino er enten på på 5 volt, eller jordet betyr av, eller null volt. Ta for eksempel en lysbryter. En lysbryter har to verdier - av og på. Når du slår på lyset ved hjelp av bryteren, er du gi full effekt til dette lyset. Vel, på temaet digital og analog, er jeg sikker på du har lagt merke til nå forkortelsen PWM under digital pin delen. Dette står for Pulse Width Modulation. PWM manipulerer spenningen over tid å produsere modulasjonseffekter som ligner på de de analoge pinnene. For eksempel, ved å dreie en lyset på og av raskt for forskjellige lengder av tid, kan den kontrollere lysets lysstyrke. Så du kanskje spørre deg selv, hvis alt du trenger å gjøre er å gi noen spenning til noen komponent for at det skal fungere, hvorfor selv har en mikrokontroller? Vel, la oss ta et høyt nivå titt på en mikrokontroller som vi kan samhandle med daglig - vekkerklokken. Vekkerklokken har mange innganger, for eksempel knapper, som brukes til å samhandle med vekkerklokke programmet. Det har også utganger som er light emitting kretser kalles syv segment skjermer som viser tiden. Dette er alle styrt av et program som er inneholdt i en mikrokontroller minne. Nå, la oss ta en titt på et scenario og se om vi kan replikere vekkerklokke med denne Arduino. Du er klar til å gå i dvale, men du må angi Alarm for å våkne opp. Vi vet at ved å bruke noen av knappene kan vi sette noen variable, tid, som gir programmet en stand, må oppfylle. Eksempel, når denne tiden er sant, bør programmet sende et signal til en annen pinne som er koblet til en høyttaler. Og når dette signalet mottas av høyttaleren, det bør spille en forferdelig lyd. La oss bruke en enkel krets for å gi deg noen sammenheng med hva Jeg snakker om. Så nå at alarmen er satt, er tilstanden nå lagret i programmets minne. Og etter bare ni sekunder søvn, hører du den forferdelige alarm høres unna. Jeg kommer til å gå videre og plug-in alarm her. Nå ønsker vi ikke å få opp helt ennå, så vi føler for det snooze-knapp. Vi la den sovende student stoppet opp, eller avbryte denne forferdelige alarmlyd, ved bare å trykke på den knappen. Men hva skjer egentlig når microcontroller program mottar et signal fra snooze-knappen? Vel, når snooze-knappen trykkes, er et signal mottas på en annen pinne. Generelt sett, når programmet mottar denne inngang fra pin den reagerer ved å kalle noen funksjon for å forsinke, eller sove, signalet som ble sendt til vår speaker pin. Denne forsinkelsen eller søvn er for noen konstant tid som vanligvis er ca ni minutter, eller i Arduino vilkår, 540000 millisekunder. Hvis vekkerklokken ikke er slått av før snooze timeren depletes, vil programmet tilstand sende en annen signalisere til talerens pin, og dermed snu alarmen på nytt. Nå, hva gjør Arduino spesielt å CS50 er dens utviklingsmiljø bruker C-språk, og gir deg myndighet til å anvende kunnskap i en mer direkte hands-on måte. Selv om vi ikke berøre de andre spesielle pins involvert med Arduino, anbefaler jeg at du besøker spesifikasjon og lese om sine evner ytterligere. I en annen video, vil vi utforske Arduino utviklingsmiljø på CS50 apparatet og skrive første mikrokontroller programmet. Mitt navn er Christopher Bartholomew, er dette CS50.