Langsung ke konten utama

Featured Post

Alternatif Arduino : Raspberry Pi Pico [ Indonesia ]

Tutorial Raspberry Pi Pico : Menyimpan Source File dan Debugging

Menyimpan Source Code Pada Pico

Tujuan:

  1. Memprogram menggunakan code editor.
  2. Menyimpan file source code yang telah dibuat.
  3. Mengatasi eror yang terjadi pada program (debug).
  4. Mengatasi eror hardware.

Dasar Teori:


Akan sedikit merepotkan jika seseorang hanya dapat menulis satu baris program. Dalam projek yang lebih kompleks, seseorang perlu menyimpan kodingannya (source code) agar kemudian dapat dijalankan secara terus menerus dan kesalahan yang terjadi dapat diperbaiki.

gambar firmware
Ilustrasi dari freepik.com

Ketika menulis program, akan sering ditemukan kesalahan kesalahan, baik secara tulisan (sintaksis) maupun secara kerangka berpikir / logika (semantik). Kesalahan sintaksis umumnya dikarenakan penulisan karakter yang tidak sesuai contoh dalam bahasa MicroPython

  print("Hello world")

menjadi

  prnit("Hello world")

atau menjadi

  print("Hello World)

Sedangkan untuk kesalahan semantik dapat dicontohkan seperti berikut

  print("World")
 print("Hello")

Program dapat berjalan namun logikanya salah.

Kesalahan kesalahan tersebut umumnya disebut dengan BUG dan proses memperbaiki kesalahan tersebut adalah DEBUGGING.

Apa perbedaan Bug dan Error?

Bug Illustration
Ilustrasi dari freepik.com 

Eror adalah pesan yang ditampilkan kepada pengguna dari sebuah program agar pengguna mengetahui apa yang salah dari program tersebut. Sedangkan bug adalah kesalahan yang menyebabkan eror tersebut. (Computerhope.com)

Perlengkapan:

  1. Laptop / PC
  2. Raspberry Pi Pico
  3. Kabel USB Mini B
  4. Thonny IDE

Langkah kerja:



Menyimpan Source File:

  • Hubungkan Raspberry Pi Pico dengan laptop / PC
  • Buka Thonny IDE dan pilih interpreter jika diperlukan
  • Tulis program berikut pada source code editor.

#import library standar micropython
from machine import Pin 

#library untuk delay
import utime 

#membuat pin 25 menjadi output
led = Pin(25, Pin.OUT)

#mengganti state pin dari on menjadi off atau sebaliknya
led.toggle()
#delay satu detik
utime.sleep(1)

led.toggle()
utime.sleep(1)
led.toggle()
utime.sleep(1)
  • Kemudian pada Thonny IDE tekan tombol save.
Thonny IDE save Icon
  • Akan muncul pop up windows yang menunjukkan opsi direktori (tempat penyimpanan).

Thonny IDE opsi save

  • Jika ingin menyimpan di dalam PC maka dapat memilih opsi This Computer (atas).
  • Jika ingin menyimpan di dalam Pico maka dapat memilih Raspberry Pi Pico (bawah).

  • Keduanya hanya menyimpan dan jika kita cabut Pico dari PC maka Pico akan reset. Jika ingin program terus berjalan maka harus diberi nama main.py. Pembahasan akan hal ini akan di bahas di akhir post.

  • Tekan Run Script, maka akan terlihat built in LED akan berkedip beberapa kali.

Debugging

Jika terjadi kesalahan maka pesan eror akan ditampilkan pada shell. Penanganan pertama pada kesalahan program dapat dilakukan dengan mengklik pesan eror terakhir untuk langsung diperlihatkan baris program yang eror.


Misal, dari gambar di atas terlihat bahwa metode .toggle() salah sintaks menjadi .togle(). Kesalahan sederhana ini dapat diperbaiki dengan membenarkan tulisan toggle(). Kesalahan lebih kompleks dapat ditanyakan ke forum komunitas.

Saran:

  • Ketika menyimpan source file pada Pico, usahakan untuk tidak menggunakan main.py terutama ketika source codenya menjalankan pengulangan while. Gunakan nama lain seperti samplecode.py
  • Gunakan nama file main.py jika kodingan yang anda buat telah berfungsi dengan baik (anda tau apa yang anda lakukan).
  • Setiap kali menjalankan program dengan pengulangan while, pengguna harus mengakhiri pengulangan dengan menekan tombol CTRL + C pada shell. Hal ini dilakukan agar Pico dapat digunakan kembali tanpa harus dicabut.
  • Jangan menekan tombol BOOTSEL ketika Pico terhubung.

Permasalahan Umum:

stres
Ilustrasi dari freepik.com

Raspberry menampilkan

"Device is Busy - can't perform this action now.
Please wait or cancel current work and try again!"

Hal ini terjadi karena beberapa hal.

  • Menggunakan while kemudian tidak keluar menggunakan CTRL+C
  • Port tidak terdeteksi

Solusi

  • Jika hal tersebut terjadi, maka solusi yang dapat dilakukan adalah dengan mencabut Pico kemudian menghubungkannya kembali dengan PC.
  • Cara pertama tidak berhasil maka dapat dengan menginstal ulang firmware.
  • Jika kedua cara tadi tidak berhasil maka bisa dengan mem-flash Pico.

Pemahaman:

  • Kenapa source code perlu disimpan?
  • Secara umum apa saja kesalahan dalam memprogram / mengkoding?
  • Apa itu bug, error, dan debugging?
  • Kemana saja source code dapat disimpan ketika menggunakan Raspberry Pi Pico?
  • Bagaimana cara keluar dari perulangan while?


Komentar

Postingan Populer