Python Timer Interrupt body { font-family: sans-serif; line-height: 1.6; max-width: 800px; margin: 40px auto; padding: 0 20px; color:
#0078d7; color: white; padding: 20px; margin: 20px 0; border-radius: 5px; } Python Timer Interrupt
Timer Interrupt
Micropython adalah implementasi Python yang dioptimalkan untuk mikrokontroler dan sistem terbatas lainnya. Untuk mengaktifkan timer interrupt pada Micropython di ESP32, kita dapat menggunakan modul machine dan utime.
Berikut adalah contoh penggunaan timer interrupt "one-shot" pada Micropython ESP32:
import machine
import utime
def my_func(timer):
print("Hello, world!")
t = machine.Timer(0)
t.init(mode=machine.Timer.ONE_SHOT, period=5000, callback=my_func)
while True:
utime.sleep_ms(1000)
Dalam contoh di atas, fungsi my_func() akan dipanggil setelah 5 detik. Pada saat inisialisasi timer, mode machine.Timer.ONE_SHOT digunakan untuk mengaktifkan timer interrupt "one-shot". Fungsi utime.sleep_ms() digunakan untuk memastikan program berjalan tanpa terputus.
Sementara itu, berikut adalah contoh penggunaan timer interrupt "periodic" pada Micropython ESP32:
import machine
import utime
def my_func(timer):
print("Hello, world!")
t = machine.Timer(0)
t.init(mode=machine.Timer.PERIODIC, period=5000, callback=my_func)
while True:
utime.sleep_ms(1000)
Dalam contoh di atas, fungsi my_func() akan dipanggil setiap 5 detik. Pada saat inisialisasi timer, mode machine.Timer.PERIODIC digunakan untuk mengaktifkan timer interrupt "periodic". Fungsi utime.sleep_ms() digunakan untuk memastikan program berjalan tanpa terputus.
Discussion (0)