[Powered by Google Translate] CHRISTOPHER BARTHOLOMEW: So jy het waarskynlik die aanhoor van 'n
baie oor Arduino, en al die briljante maniere wat dit kan wees
geprogrammeer met behulp van C insette te ontvang van randapparatuur
soos knoppies, sensors en knoppies.
Of vertoon en beheer uitset deur fisiese komponente
soos ligte, sprekers, dien en motors.
Maar wat is 'n Arduino, regtig?
'N Arduino is 'n tipe van 'n mikrobeheerder, en 'n
mikrobeheerder kan beskou word as 'n baie afgeskaal
rekenaar wat bevat komponente soos 'n
verwerker, klein hoeveelhede van die geheue vir die stoor van eenvoudige
programme, en verskeie toevoer / afvoer penne wat produseer
'n elektriese stroom as gevolg van
instruksies in jou program.
Die penne op 'n Arduino is hier om te koppelvlak met die
fisiese komponente soos LEDs, sprekers, sensors,
motors, en nog baie meer.
Dit is 'n Arduino Uno R3 wat ons sal gebruik word om
dwarsdeur die kursus.
In hierdie video, sal ek gaan oor slegs 'n paar van die belangrikste
komponente van hierdie raad.
Maar, as jy meer inligting wil hê, wat ek raai
jy lees, besoek die skakel vir die Arduino Uno se volle
spesifikasie.
Krag vir die raad kan ontvang word van die USB, eksterne AC
DC kragbronne, of deur die battery connectors.
Vir hierdie video oefeninge, sal ons gebruik USB vir krag.
As jy belangstel in ander maniere om krag te voorsien aan jou
Arduino raad of meer wil weet oor die krag penne om te weet,
verwys asseblief na die krag afdeling van die spesifikasie
skakel verskaf.
Volgende, is daar twee hoof pen afdelings op 'n Arduino dat ons
sal gebruik om spanning te verskaf aan ons komponente -
digitale penne en analoog insette penne.
Voordat ons verder gaan, laat ons
hierdie twee terme te verstaan.
Analoog insette penne is vir komponente soos knoppe,
wat analoog seine skep.
'N knop kan verskillende hoeveelhede van weerstand te bied
spanning tussen die twee penne dat dit is verbind.
Neem, byvoorbeeld, 'n ligte dowwer.
As die knop in een rigting gedraai word, sal die lig
word helderder omdat die weerstand verminder.
Dit bied 'n sterker elektriese stroom na die
komponent, wat lei in 'n beter lig.
Nou die digitale penne is effens anders in daardie
hulle produseer 'n digitale sein wat afhanklik is van die
bedrag van die spanning oor die penne.
Digitale seine vir die Arduino is op 5
volts, of gegrond betekenis af, of nul volts.
Neem byvoorbeeld 'n ligskakelaar.
'N ligskakelaar het twee waardes -
op en af.
Wanneer jy die lig op die gebruik van die skakelaar, jy
die verskaffing van volle krag aan daardie lig.
Wel, op die onderwerp van digitale en analoog, ek is seker
jy opgemerk deur nou die akroniem PWM onder die digitale
pins deel.
Dit staan ​​vir pulswydte modulasie.
PWM manipuleer die spanning oor tyd te produseer
modulasie effekte wat is soortgelyk aan dié
van die analoog penne.
Byvoorbeeld, deur die draai 'n lig op en af ​​vinnig vir
verskillende lengtes van die tyd, kan dit beheer die lig
helderheid.
So jy kan vra jouself, as alles wat jy het om te
doen sommige spanning tot 'n komponent vir dit om te werk,
waarom selfs 'n mikrobeheerder?
Wel, laat ons 'n hoë-vlak blik op 'n mikrobeheerder dat
ons kan interaksie met daaglikse
die wekker.
Die wekker het baie insette, byvoorbeeld knoppies,
wat gebruik word om in interaksie te tree met die wekker program.
Dit het ook uitsette wat liguitstralende stroombane genoem
sewe segment vertoon wat toon die tyd.
Dit word alles beheer deur 'n program wat vervat is in 'n
mikrobeheerder se geheue.
Nou, laat ons neem 'n blik op 'n scenario en kyk of ons kan
soortgelyk aan die wekker met hierdie Arduino.
Jy is gereed om te gaan slaap, maar jy sal nodig het om jou te stel
alarm te wakker.
Ons weet dat ons deur gebruik te maak van 'n paar knoppies sommige kan stel
veranderlike, tyd, gee dat die program 'n
toestand waarin dit moet voldoen.
Soos wanneer dit tyd is waar, die program moet stuur
'n sein na 'n ander pen wat gekoppel is aan 'n spreker.
En wanneer hierdie sein ontvang word deur die speaker,
moet speel 'n vreeslike geluid.
Kom ons gebruik 'n eenvoudige stroombaan te gee jou 'n konteks wat
Ek praat.
So nou dat jou alarm is, is nou jou toestand gestoor
in die program se geheue.
En na slegs nege sekondes van slaap, jy hoor die verskriklike
alarm blaas weg.
Ek gaan voort en plug-in ons alarm gaan hier.
Nou, ons wil nie te kry nogal nog, so ons voel vir die
snooze knoppie.
Ons laat die slaap student stilstand, of onderbreek hierdie verskriklike
alarm klank, deur net te slaan dat die knoppie.
Maar wat gebeur regtig wanneer die mikrobeheerder se program
ontvang 'n sein van die snooze knoppie?
Wel, wanneer die snooze knoppie gedruk word, 'n sein is
ontvang op 'n ander pen.
In die algemeen, wanneer die program ontvang hierdie insette van die
pen dit reageer deur die roeping van 'n funksie te vertraag nie, en of ons slaap,
die sein wat aan ons spreker pen gestuur is.
Hierdie vertraging of slaap is vir 'n paar konstante tyd wat
gewoonlik sowat nege minute, of in Arduino terme, 540,000
millisekondes.
As die wekker nie afgeskakel is voordat die snooze
timer uitput, sal die program se toestand stuur ander
sein na die spreker se pen, dus draai
die alarm weer.
Nou, wat maak Arduino spesiaal vir cs50 is sy
ontwikkeling omgewing gebruik die C-taal, gee jou die
mag om kennis toe te pas wat in 'n meer direkte
hands-on manier.
Hoewel ons dit nie raak op die ander spesiale penne
wat betrokke is met die Arduino, ek beveel aan dat jy na die
spesifikasie en lees oor hul vermoëns verder.
In 'n ander video, sal ons verken die Arduino
ontwikkeling omgewing op die cs50-toestel en skryf ons
eerste mikrobeheerder aansoek.
My naam is Christopher Bartholomew, dit is cs50.