Belajar Membuat Program MicroPython Sederhana
Baik setelah kita berhasil menginstall MicroPython pada tutorial sebelumnya, Sekarang kita akan belajar membuat program sederhana menggunakan Micropython, ESP32 dan Thonny IDE. Nah kali ini kita akan membuat program untuk kode morse (SOS) dengan ketentuan sebagai berikut:
LED tampilkan kode Morse SOS,
LED tampilkan kode Morse SOS,
- Pendek 3X
- Panjang 3X
- Pendex 3X
- Tunggu dan ulangi
Nah agar teman-teman tidak perlu menyiapkan LED eksternal kita akan memanfaatkan LED built-in pada ESP32 nya. Berikut ini saya akan menjelaskan tiap fungsi-fungsi yang nantinya akan kita gunakan untuk membangun sebuah program SOS sesuai perintah diatas.
1. Import time: Ini mengimpor modul `time`, yang menyediakan fungsi-fungsi untuk mengelola waktu dalam program.
2. From machine import Pin: Ini mengimpor kelas `Pin` dari modul `machine`. Modul `machine` adalah modul standar dalam MicroPython yang menyediakan fungsi-fungsi untuk mengakses perangkat keras, seperti pin GPIO.
3. Morse code: {'S': ['...', 1], 'O': ['---', 3], ' ': [' ', 3]} Ini mendefinisikan kamus `morse_code` yang berisi kode Morse untuk karakter 'S', 'O', dan spasi. Setiap karakter diwakili oleh sebuah list yang terdiri dari dua elemen: pola kode Morse dan durasi untuk karakter tersebut.
4. Def tampilkan morse(kode): Ini mendefinisikan fungsi `tampilkan_morse()` yang akan menampilkan pesan dalam kode Morse menggunakan LED.
5. Led: Pin(2, Pin.OUT) Ini membuat objek pin GPIO pada pin nomor 2 (LED built-in) dengan mode output. Objek ini digunakan untuk mengendalikan LED.
6. For simbol in kode: Ini adalah loop yang akan beriterasi melalui setiap karakter dalam pesan Morse yang diberikan.
7. Pola = morse_code[simbol][0]: Ini mengambil pola kode Morse untuk karakter saat ini dari kamus `morse_code`.
8. Jenis = morse_code[simbol][1]: Ini mengambil durasi karakter saat ini dari kamus `morse_code`.
9. For sinyal in pola: Ini adalah loop dalam loop yang akan beriterasi melalui setiap sinyal dalam pola kode Morse untuk karakter saat ini.
10. If sinyal == '.': hidup_led(led, jenis): Jika sinyal adalah '.' (pendek), maka panggil fungsi `hidup_led()` untuk menyalakan LED dengan durasi yang sesuai.
11. Elif sinyal == '-': hidup_led(led, jenis * 3): Jika sinyal adalah '-' (panjang), maka panggil fungsi `hidup_led()` untuk menyalakan LED dengan durasi tiga kali lipat.
12. Else: time.sleep(1): Jika sinyal adalah spasi, tunggu 1 detik.
13. Time.sleep(2): Tunggu 2 detik setelah setiap karakter sebelum menampilkan karakter berikutnya.
14. Def hidup_led(led, durasi): Ini mendefinisikan fungsi `hidup_led()` yang akan menyalakan LED dengan durasi yang diberikan.
15. While True: tampilkan_morse('SOS')`: Ini adalah loop utama yang akan terus menampilkan kode Morse "SOS".
16. Time.sleep(3): Tunggu 3 detik sebelum menampilkan kembali kode Morse "SOS".
Dengan demikian, program ini secara keseluruhan mengatur LED built-in untuk menampilkan pesan "SOS" dalam kode Morse dengan pola yang telah ditentukan. Berikut merupakan bentuk code secara lengkapnya:
import time
from machine import Pin
# Mendefinisikan kode Morse untuk karakter 'S', 'O', dan spasi
morse_code = {'S': ['...', 1], 'O': ['---', 3], ' ': [' ', 3]}
# Fungsi untuk menampilkan kode Morse menggunakan LED
def tampilkan_morse(kode):
led = Pin(2, Pin.OUT) # Gunakan pin 2 untuk LED built-in
for simbol in kode:
pola = morse_code[simbol][0]
jenis = morse_code[simbol][1]
for sinyal in pola:
if sinyal == '.':
hidup_led(led, jenis)
elif sinyal == '-':
hidup_led(led, jenis * 3)
else:
time.sleep(1) # Tunggu 1 detik untuk spasi antara karakter
time.sleep(2) # Tunggu 2 detik untuk spasi antara kata
# Fungsi untuk menyalakan LED sesuai dengan jenis sinyal
def hidup_led(led, durasi):
led.value(1)
time.sleep(durasi)
led.value(0)
time.sleep(1) # Tunggu 1 detik antara sinyal
# Loop utama
while True:
tampilkan_morse('SOS') # Tampilkan kode Morse "SOS"
time.sleep(3) # Tunggu 3 detik sebelum mengulangi
Komentar
Posting Komentar