[Powered by Google Translate] CHRISTOPHER Bartholomew: Jadi anda mungkin telah mendengar
banyak mengenai Arduino, dan semua cara yang cemerlang ia boleh
diprogramkan menggunakan C untuk menerima input dari peranti persisian
seperti butang, sensor dan tombol.
Atau memaparkan dan mengawal output melalui komponen fizikal
seperti lampu, pembesar suara, servos dan motor.
Tetapi apa yang Arduino, benar-benar?
Arduino adalah sejenis mikropengawal, dan
mikropengawal boleh dianggap sebagai sangat dikecilkan
komputer yang mengandungi komponen seperti
pemproses, jumlah memori yang kecil untuk menyimpan mudah
program, dan pelbagai input / output pin yang menghasilkan
arus elektrik akibat daripada
arahan dalam program anda.
Pin pada Arduino di sini untuk antara muka dengan
komponen fizikal seperti LED, pembesar suara, sensor,
motor, dan banyak lagi.
Ini adalah R3 Arduino Uno yang kita akan menggunakan
sepanjang kursus.
Dalam video ini, saya akan pergi ke atas hanya beberapa utama
komponen lembaga ini.
Walau bagaimanapun, jika anda ingin maklumat lanjut, yang saya cadangkan
anda membaca, sila layari pautan untuk Arduino penuh Uno
spesifikasi.
Kuasa untuk lembaga boleh diterima dari USB, luaran AC
kepada bekalan kuasa DC, atau oleh penyambung bateri.
Untuk video senaman ini, kita akan menggunakan USB untuk kuasa.
Jika anda berminat dalam cara lain untuk memberi kuasa kepada anda
Arduino lembaga atau ingin tahu lebih lanjut mengenai pin kuasa,
sila rujuk kepada seksyen kuasa spesifikasi
pautan yang disediakan.
Seterusnya, terdapat dua pin bahagian utama pada Arduino bahawa kita
akan gunakan untuk menyediakan voltan komponen kami -
pin digital dan pin input analog.
Sebelum kita pergi mana-mana lagi, mari kita
memahami kedua-dua istilah.
Pin input analog adalah untuk komponen seperti tombol,
yang mewujudkan isyarat analog.
Tombol boleh menyediakan jumlah yang berbeza rintangan kepada
voltan antara dua pin bahawa ia disambungkan.
Mengambil, sebagai contoh, pemalap cahaya.
Sebagai tombol dipintal dalam satu arah, cahaya akan
menjadi cerah kerana mengurangkan rintangan.
Ini menyediakan arus elektrik yang lebih kuat kepada
komponen, yang menyebabkan cahaya yang lebih cerah.
Sekarang pin digital adalah sedikit berbeza dalam itu
mereka menghasilkan isyarat digital yang bergantung pada
jumlah voltan yang merentasi pin.
Isyarat digital untuk Arduino sama ada di 5
volt, atau berasaskan bermakna di luar, atau sifar volt.
Ambil contoh suis lampu.
Satu suis lampu mempunyai dua nilai -
hidup dan mati.
Apabila anda menghidupkan lampu menggunakan suis, anda
menyediakan kuasa penuh kepada cahaya itu.
Nah, pada subjek digital dan analog, saya pasti
anda dapati sekarang singkatan PWM bawah digital
pin seksyen.
Ini bermaksud untuk Pulse Width Modulation.
PWM memanipulasi voltan lebih masa untuk menghasilkan
modulasi kesan yang sama kepada orang-orang
pin analog.
Sebagai contoh, dengan memutarkannya cahaya pada dan di luar dengan cepat untuk
panjang masa yang berbeza, ia boleh mengawal cahaya
kecerahan.
Jadi anda mungkin bertanya diri anda sendiri, jika semua yang anda perlu
lakukan adalah menyediakan voltan beberapa komponen tertentu untuk ia bekerja,
mengapa walaupun mempunyai mikropengawal?
Nah, mari kita lihat peringkat tinggi pada mikropengawal yang
kita boleh berinteraksi dengan harian -
jam penggera.
Jam penggera mempunyai banyak input, untuk butang contoh,
yang digunakan untuk berinteraksi dengan program jam penggera.
Ia juga mempunyai output yang litar pemancar cahaya yang dipanggil
tujuh segmen memaparkan yang menunjukkan masa.
Ini semua dikawal oleh program yang terkandung dalam
mikropengawal memori.
Sekarang, mari kita lihat pada senario dan lihat jika kita boleh
meniru jam penggera dengan Arduino ini.
Anda sudah bersedia untuk pergi ke tidur, tetapi anda akan perlu untuk menetapkan anda
penggera untuk bangun.
Kita tahu bahawa dengan menggunakan beberapa butang kita boleh menetapkan beberapa
berubah-ubah, masa, yang memberikan program
keadaan yang ia mesti memenuhi.
Seperti, apabila masa ini adalah benar, program perlu menghantar
isyarat kepada pin lain yang disambungkan kepada pembesar suara.
Dan apabila isyarat ini diterima oleh penceramah, ia
harus memainkan bunyi mengerikan.
Mari kita gunakan litar mudah untuk memberi anda beberapa konteks kepada apa
Saya bercakap tentang.
Jadi sekarang bahawa penggera anda ditetapkan, keadaan anda kini disimpan
dalam ingatan program ini.
Dan selepas hanya sembilan saat tidur, anda akan mendengar yang buruk
penggera berbunyi jauh.
Saya akan pergi ke hadapan dan plug-dalam penggera kami di sini.
Sekarang, kita tidak mahu untuk bangun agak lagi, jadi kita berasa
tidurkan butang.
Kami membiarkan pelajar terhenti tidur, atau mengganggu ini buruk
bunyi penggera, dengan hanya memukul butang yang.
Tetapi apa yang benar-benar berlaku apabila program mikropengawal
menerima isyarat dari butang tunda?
Nah, apabila butang tunda ditekan, isyarat
diterima pada pin yang berbeza.
Secara umum, apabila program ini menerima input ini daripada
pin ia bertindak balas dengan memanggil beberapa fungsi untuk melambatkan, atau tidur,
isyarat yang telah dihantar kepada pin penceramah kami.
Ini kelewatan atau tidur untuk beberapa ketika berterusan yang
biasanya adalah kira-kira sembilan minit, atau dari segi Arduino, 540,000
milisaat.
Jika jam penggera tidak dimatikan sebelum tunda
pemasa habis, keadaan program akan menghantar satu lagi
isyarat kepada pin penceramah, lantas beralih
penggera sekali lagi.
Kini, apa yang membuatkan Arduino khas untuk cs50
persekitaran pembangunan menggunakan bahasa C, memberi anda
kuasa untuk mengaplikasikan pengetahuan yang diperolehi dalam lebih langsung
hands-on cara.
Walaupun kami tidak menyentuh pin khas lain
terlibat dengan Arduino, saya cadangkan yang anda lawati
spesifikasi dan membaca tentang keupayaan mereka lagi.
Dalam video lain, kami akan meneroka Arduino
persekitaran pembangunan pada perkakas cs50 dan menulis kita
mikropengawal permohonan pertama.
Nama saya ialah Christopher Bartholomew, ini adalah cs50.