Isi kandungan:
- Langkah 1: Apakah Pemasa Pengawas Ini?
- Langkah 2: Bagaimana Mengaktifkan Pemasa Pengawas?
- Langkah 3: Pastikan Program Anda Berjalan
- Langkah 4: Contoh Penggunaan
- Langkah 5: Isu Pemasa Pengawas
- Langkah 6: Nikmati
Video: Tutorial Arduino Hang Guardian - Arduino Watchdog Timer: 6 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:08
Hai semua, Ia berlaku kepada kita semua. Anda membina projek, menyambungkan semua sensor dengan penuh semangat, dan tiba-tiba, Arduino tergantung dan tiada input diproses.
"Apa yang sedang terjadi?", Anda akan bertanya dan mula menggali kod anda, hanya untuk menyedari bahawa anda terjebak dalam lingkaran yang tidak terhingga. Syukurlah Arduino berada di bangku simpanan anda dan bukan di lokasi terpencil.
Hari ini, kita akan melihat bagaimana kita boleh menggunakan pemasa pengawas di Arduino untuk mengelakkan perkara ini berlaku.
Langkah 1: Apakah Pemasa Pengawas Ini?
Pemasa pengawas Arduino seperti namanya adalah pemasa yang berjalan secara berasingan dari CPU utama di papan. Pemasa ini boleh digunakan untuk memeriksa keadaan papan secara berkala dan dalam keadaan di mana papan terjebak dalam gelung perisian atau tersekat kerana kegagalan perkakasan, pemasa pengawas dapat menetapkan semula Arduino dan memulainya dari awal lagi.
Secara lalai ketika tidak digunakan pemasa ini dilumpuhkan pada semua projek dan hanya apabila kami mengaktifkannya, kami perlu memastikan secara berkala untuk memberitahu agar tidak menetapkan semula papan kami jika masih beroperasi seperti yang diharapkan.
Untuk dapat menggunakan pemasa pengawas, pertama-tama kita perlu memasukkan fail avr / wdt.h dalam lakaran Arduino kami. Ini adalah pustaka standard yang menyimpan tindakan pengawas.
Langkah 2: Bagaimana Mengaktifkan Pemasa Pengawas?
Untuk mengaktifkan pemasa, kita menggunakan fungsi "wdt_enable" di mana kita perlu melewati selang ambang di mana papan akan diset semula. Bergantung pada kes penggunaan kami, ini boleh berlangsung dari 15 milisaat hingga 8 saat dalam tetapan yang ditentukan sebelumnya yang terdapat di perpustakaan pengawas.
THRESHOLD - NAMA KONSTAN
15 ms WDTO_15MS 30 ms WDTO_30MS 60 ms WDTO_60MS 120 ms WDTO_120MS 250 ms WDTO_250MS 500 ms WDTO_500MS 1s WDTO_1S 2s WDTO_2S 4s WDTO_4S 8s WDTO_8S
Langkah 3: Pastikan Program Anda Berjalan
Sekarang, dengan pemasa diaktifkan, untuk menghalangnya daripada mengatur semula Arduino kita, kita perlu memanggil fungsi "wdt_reset" secara berkala untuk menetapkan semula pemasa pengawas sebelum selang ambang batas berakhir.
Semasa memilih selang tetapan semula, sangat penting untuk kita mempertimbangkan operasi yang panjang seperti membaca atau menghantar data atau menyambung ke sensor luaran. Ambang set semula mestilah sekurang-kurangnya satu setengah kali lebih besar daripada masa ini untuk mengelakkan penyusunan semula secara tidak sengaja.
Langkah 4: Contoh Penggunaan
Dalam program contoh yang boleh anda muat turun di sini, pertama-tama kami mengatur pemasa pengawas dengan selang tetapan semula 4 saat. Kemudian untuk mengetahui bahawa kita berada dalam fungsi persediaan, kita menyalakan LED 3 kali dengan cepat dan kemudian di gelung utama kita menetapkan semula pemasa, menyalakan LED dengan selang waktu yang semakin lama dan kemudian kita mematikannya. Gelung seterusnya menetapkan semula pemasa lagi sehingga masa cahaya lebih lama daripada 4 saat.
Apabila ini berlaku, pemasa pengawas menetapkan semula papan dan penyediaan dijalankan lagi.
Langkah 5: Isu Pemasa Pengawas
Satu kemungkinan masalah dengan pemasa pengawas, bergantung pada pemuat boot Arduino anda ialah jika nilai pemasa pengawas terlalu rendah dan pemuat but tidak menetapkan semula pemasa ketika memuat naik kod baru, anda mungkin akhirnya merosakkan papan Arduino anda dengan cara yang ia akan selalu tersekat dalam fasa boot. Pemuat but akan cuba dimulakan, tetapi pemasa akan terus mengatur semula papan, tidak akan membiarkannya dimulakan dengan betul. Untuk mengelakkan masalah seperti ini, pastikan untuk selalu menggunakan selang ambang 2 saat atau lebih.
Langkah 6: Nikmati
Sekiranya anda mempunyai contoh di mana anda telah menggunakan pemasa pengawas dalam projek sebenar, beritahu saya dalam komen, pastikan untuk menyukai video tersebut dan jangan lupa untuk melanggan.
Sorakan dan terima kasih kerana membaca / menonton!
Disyorkan:
Tiga Litar Pembesar Suara -- Tutorial Langkah demi Langkah: 3 Langkah
Tiga Litar Pembesar Suara || Tutorial Langkah-demi-Langkah: Loudspeaker Circuit menguatkan isyarat audio yang diterima dari persekitaran ke MIC dan menghantarnya ke Speaker dari tempat audio diperkuat dihasilkan. Di sini, saya akan menunjukkan kepada anda tiga cara berbeza untuk membuat Loudspeaker Circuit ini menggunakan:
Lampu Malam Dream Guardian Steampunked: 9 Langkah (dengan Gambar)
Steampunked Dream Guardian Night Light: Hai semuaSatu rakan karib saya meminta saya membuat hadiah pertunangan (tentu saja selain cincin!) Untuk kekasihnya beberapa minggu yang lalu. Kedua-duanya seperti saya, anggota bomba sukarela dan mereka menyukai Steampunk Objects. Rakan saya memikirkan
555 Remote Timer TV Timer: 3 Langkah
555 Pemasa Jauh TV Timer: Bagaimana jammer TV berfungsi? Alat kawalan jauh televisyen menggunakan cahaya untuk membawa isyarat dari alat kawalan jauh ke televisyen. Led pada alat kawalan jauh memancarkan cahaya inframerah yang tidak kelihatan yang sesuai dengan kod binari tertentu. Kod binari ini mengandungi arahan seperti
Tutorial Modul Gyroscope 6DOF GY-521 MPU6050 3-Axis Tutorial: 4 Langkah
Tutorial: GY-521 MPU6050 3-Axis Acceleration Gyroscope 6DOF Module: PeneranganModul ringkas ini mengandungi semua yang diperlukan untuk berinteraksi dengan Arduino dan pengawal lain melalui I2C (gunakan perpustakaan Wire Arduino) dan memberikan maklumat pengesan gerakan untuk 3 paksi - X, Y dan Z . Spesifikasi Julat akselerometer: ± 2, ±
The Pi Guardian: 6 Langkah (dengan Gambar)
The Pi Guardian: Adakah anda pernah mahu menangkap orang yang terus mencuri gula-gula Halloween anda? Atau bagaimana dengan rakan sebilik yang menjengkelkan yang tidak akan meninggalkan peti sejuk anda sendiri? Dengan menggunakan sensor Raspberry Pi 3, Pi Camera, dan PIR, semua itu kini dapat dilakukan. Ringkas