Arduino & IoT Academy · Pelajaran

pulseIn untuk Mengukur Masa Gema

Ukur denyutan gema dan tukarkannya kepada cm.

Pelajaran 3 daripada 413 langkah

pulseIn untuk Mengukur Masa Gema ialah pelajaran Arduino & IoT Academy percuma di CoddyKit. Ini ialah pelajaran 3 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Arduino & IoT Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Arduino & IoT Academy merangkumi sejumlah 4 pelajaran.

Hantar Denyutan

Untuk mengambil bacaan, anda perlu menghantar denyutan pencetus yang bersih terlebih dahulu. HC-SR04 menjangkakan HIGH yang singkat pada Trig untuk memulakan ukuran baharu.

Mulakan dari Keadaan Bersih

Tetapkan Trig kepada LOW selama beberapa mikrosaat terlebih dahulu. Ini mengosongkan sebarang keadaan yang tertinggal supaya denyutan pencetus anda tepat dan boleh dipercayai.

digitalWrite(trigPin, LOW);
delayMicroseconds(2);

Denyutan Sepuluh Mikrosaat

Kini tetapkan Trig kepada HIGH selama 10 mikrosaat, kemudian kembali kepada LOW. Lebar tepat inilah yang diperlukan penderia untuk melancarkan letusan ultrasoniknya.

digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);

Kenali pulseIn

Fungsi pulseIn menunggu pin menjadi HIGH, kemudian mengukur tempoh pin itu kekal HIGH dan mengembalikan tempoh tersebut dalam mikrosaat.

Ukur Masa Echo

Panggil pulseIn pada pin Echo untuk menunggu HIGH. Nombor yang dikembalikannya ialah masa pergi balik penuh denyutan bunyi anda.

long duration = pulseIn(echoPin, HIGH);

Ia Menunggu Anda

pulseIn bersifat menyekat: ia menjeda lakaran anda sehingga gema tiba atau masa tamat. Untuk projek jarak yang mudah, jeda itu tidak menjadi masalah.

Tukar Masa kepada cm

Darabkan tempoh dengan kelajuan bunyi dan bahagikan dengan dua. Hasilnya ialah jarak yang jelas dalam sentimeter.

float cm = duration * 0.0343 / 2;

Asal Nombor Itu

Bunyi bergerak kira-kira 0.0343 cm setiap mikrosaat. Pemalar itu hanyalah kelajuan bunyi yang ditulis semula dalam unit yang sepadan dengan pulseIn.

Cetaknya

Hantar nilai itu ke Serial Monitor supaya anda boleh melihat jarak berubah apabila tangan anda digerakkan ke arah penderia.

Serial.print(cm);
Serial.println(" cm");

Berikan Masa untuk Pulih

Tambahkan lengahan ringkas antara bacaan, kira-kira 60 milisaat. Ini menghalang satu gema daripada mengganggu ukuran seterusnya.

delay(60);

Kendalikan Masa Tamat

Jika tiada apa-apa yang memantulkan bunyi, pulseIn mengembalikan sifar. Dengan menyemak keadaan itu, anda boleh mengabaikan bacaan sampah dan bukannya mencetak jarak palsu.

Semakan Pantas

Fikirkan perkara yang diukur oleh pulseIn.

Daripada Denyutan kepada Jarak

Cetuskan, ukur masa dengan pulseIn, kemudian tukar dan cetak. Kini anda boleh membaca jarak dalam kod. Seterusnya, jadikan penderia melakukan sesuatu yang berguna. ✅

Percuma untuk bermula

Pelajari C++ dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
30
Pelajaran
120

Soalan Lazim

Adakah pelajaran “pulseIn untuk Mengukur Masa Gema” percuma?

Ya — teks penuh “pulseIn untuk Mengukur Masa Gema” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Arduino & IoT Academy, tingkat taraf kepada CoddyKit PRO. Kursus Arduino & IoT Academy merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “pulseIn untuk Mengukur Masa Gema”?

Ukur denyutan gema dan tukarkannya kepada cm. Anda berlatih Arduino & IoT Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Arduino & IoT Academy?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Arduino & IoT Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 3 daripada 4.

Berapa lamakah pelajaran “pulseIn untuk Mengukur Masa Gema” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Arduino & IoT Academy ini?

Ya. Setiap pelajaran Arduino & IoT Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Cara Pengukuran Jarak Ultrasonik Berfungsi
  2. Pendawaian Trigger dan Echo
  3. pulseIn untuk Mengukur Masa Gema
  4. Bina Penggera Jarak Dekat
← Kembali ke Arduino & IoT Academy