[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.