Perkembangan teknologi diawali dengan penemuan-penemuan kecil yang masih bersifat analog.
Kemudian berkembang pesat baik kualitas maupun kuantitasnya, hingga akhirnya menghasilkan
suatu teknologi yang saat ini mendominasi kehidupan yaitu teknologi era digitalisasi dan
otomatisasi.
Perkembangan teknologi di Indonesia saat ini masih tergolong sangat lambat pertumbuhannya
bila dilihat dari segi produksi, namun bila dilihat dari segi konsumsinya Indonesia dapat
digolongkan salah satu negara berkembang yang cukup tinggi akan konsumsi teknologi.
Yang menjadi faktor lambatnya pertumbuhan produksi teknologi di Indonesia salah satunya
adalah karena kurangnya penguasaan akan element teknologi itu sendiri. Kurangnya sumber daya
manusia yang berkompeten dalam teknologi serta kurangnya dukungan modal juga menjadi
penyebabnya.
Melihat permasalahan diatas perlu adanya suatu penyelenggaraan pendidikan yang berbasis
teknologi sebagai salah satu solusi untuk menciptakan sumber daya manusia yang kompeten dan
unggul dalam bidang teknologi. Oleh karena itu melalui laporan ini penulis akan memberi
beberapa dasar teori dan aplikasinya dalam penguasaan teknologi microkontroler berbasis
otomatisasi. Jika pembaca mengalami kesulitan dalam mengaplikasikan bahan ajaran dari laporan
ini, saya membuka forum diskusi sebagai media komunikasi dengan penulis melalui alamat email
hsbn89@student.undip.ac.id.
Mikrokontroler adalah sebuah chip yang dapat melakukan pemrosesan data secara
digital serta pengontrolan rangkaian elektronik sesuai dengan perintah bahasa assembly yang
diberikan pada IC tersebut. Perbedaan antara mikroprosesor dan mikrokontroler yaitu
mikroprosesor merup CPU tanpa memori dan I/O pendukung sebuah komputer, sedangkan
mikrokontroler terdiri dari CPU, memori, I/O dan unit pendukung lain spt ADC yang terintregrasi
didalamnya. Penggunaan mikrokontroler menjadi tren pada desain teknologi elektronika, karena
chip ini dapat mereduksi sistem digital diskrit dengan perangkat lunak yang diprogram dan
disisipkan dalam chip tersebut. Mikroprosesor dikembangkan kearah perangkat berbasis komputer
sedangkan mikrokontroler lebih banyak ke sistem instrumentasi elektronik.
Pemrograman Bahasa Assembly untuk IC AT89S51
Untuk berinteraksi dengan perangkat keras yang meliputi memberi perintah maupun pengaturan
perangkat dapat digunakan suatu bahasa pemrograman dasar tingkat rendah yaitu bahasa
pemrograman Assembly. Assembly merupakan bahasa dasar mesin, meskipun saat ini telah
banyak bahasa pemrograman tingkat tinggi yang lebih sederhana dan mudah dipahami namun
semua bahasa tersebut sesungguhnya juga merupakan pengembangan dari bahasa assembly.
Agar kita dapat menguasai lebih mendalam akan interaksi antara user (manusia) dengan mesin
maka pada kuliah microprosesor dan microkontroler di gunakan bahasa assembly sebagai bahasa
pemrograman sistem microkontroler. Struktur dasar dari bahasa assembly terdiri atas :
Keterangan :
1. Label, Kode yang ditentukan sendiri oleh pemrogram. jika lebih dari 2 kata, harus digabung
(tidak boleh dipisah) diakhiri dengan tanda ( : )
contoh, mulai : panjangbola :
2. Mnemonic (opcode), kode perintah yang akan melakukan aksi tiap operand
contoh, mov sjmp
3. Operand 1 (operand tujuan/target), data yang akan diproses oleh Mnemonic
contoh, P0 A
4. Operand 2 (operand asal), data yang akan dipindahkan ke operand tujuan
contoh, #13 #110001010B
5. Komentar, dapat ditulis dengan menggunakan tanda ( ; ) dan tidak akan dieksekusi oleh
hardware.
Contoh, ; ————————— INI ADALAH PROGRAM LED ————–
Instruksi – instruksi Mnemonic yang sering digunakan pada sistem microkontroler diantaranya
adalah sebagai berikut :
Software Read51
Software Read51 merupakan salah satu software editor bahasa pemrograman assembly. Dengan
menggunakan software ini kita dapat merancang dan membuat pemrograman assembly, C, dll.
Pada percobaan yang dilakukan dalam kuliah ini, kita menggunakan Read51 untuk merancang
program menggunakan bahasa assembly dimana file program disimpan dalam ekstensi .ASM.
Adapun software read51 seperti ditampilkan pada gambar berikut :
Read51 terdiri dari 3 komponen utama yaitu : Jendela Editor (sisi kiri, sebagai tempat dimana kita
membuat dan merancang bahasa pemrograman assembly), Jendela Output (terdapat output
berupa tampilan LED, berada di sisi kanan) serta jendela build (di sisi bawah, sebagai coment
yang menunjukan proses dari software).
ketikkan nama file yang anda kehendaki pada form ―File Name‖, kemudian pilih direktori dimana
anda ingin menyimpan file tersebut.
Setelah itu tekan tombol ―Save‖;
Sekarang file anda telah tersimpan dan silahkan membuat program anda.
Prosedur Convert HEX merupakan prosedur dimana mengkonversi program yang telah anda buat
yang sebelumnya disimpan dalam ekstensi .ASM untuk di konversi ke dalam bentuk file
berekstensi HEX. File yang berekstensi HEX inilah yang nantinya akan di upload ke sistem
microkontroler yaitu di masukkan ke IC AT89S51 pada sistem minimum.
3.Running Program
Setelah anda mengcompile program anda, selanjutnya adalah menjalankan program yang anda
buat yaitu dengan cara mengklik tombol bergambar tanda seru ―!‖
Setelah dijalankan maka dapat anda lihat hasilnya pada output program yang telah disediakan,
Setelah selesai membuat dan mengconvert pemrograman ke dalam bentuk file .HEX selanjutnya
adalah mengirim/mengupload file HEX tersebut ke dalam IC AT89S51 yang telah terpasang pada
sistem minimum. Jalur koneksi yang digunakan untuk mengupload seperti yang telah dijelaskan
pada sistem minimum diatas, dan selanjutnya adalah penggunaan software EAC-ISP.exe untuk
mengupload file tersebut. Komponen software dasar yang dibutuhkan ketika mengupload adalah
harus tersedianya software EAC-ISP.exe serta terdapat file sfr51.inc pada direktori dimana
program kita akan di upload. Tanpa adanya kedua komponen tersebut kita tidak dapat
mengupload program yang telah dibuat.
Untuk mengupload program anda sebelumnya anda harus menempatkan file .HEX yang telah di
convert menjadi satu direktori dengan software AEC-ISP.exe serta file sfr51.inc, kemudian
silahkan menjalankan software AEC-ISP.
Dari menu menu diatas kita cukup memperhatikan beberapa menu saja yaitu menu nomor 1 , 5 ,
9 dan 10 karena menu inilah yang nantinya akan digunakan untuk mengirim file .HEX ke sistem
microcontroler. Adapun langkah – langkah untuk mengirim program adalah sebagai berikut :
Pastikan file HEX telah siap untuk di upload, periksa sambungan Port Pararel (LPT 1) ke
sistem minimum.
Jalankan software AEC-ISP
Pilih menu ―Setup‖ untuk menyeting software AEC-ISP.
setelah muncul gambar diatas, selanjutnya adalah menyeting ―Device‖ dengan item
―AT89S51″. Kemudian menyeting menu ―Select Printer Port‖ dengan item ―LPT1″ setelah
diseting kemudian pilih ―Save Setup‖.
Setelah disimpan setingan tersebut kemudian kita menyeting menu ―Reset‖ menjadi ―Low‖.
Kemudian pilih menu ―Load HEX File to Flash Buffer‖ untuk mengirim file ber HEX yang
telah disiapkan tersebut.
Isikan nama file beserta ekstensi HEX seperti yang ditunjukkan diatas. Nama file disarankan
tidak melebihi karakter. Kemudian tekan ENTER untuk mengeksekusinya
Setelah ditekan,
Kemudian kembali ke menu utama dengan cara menekan sembarang tombol pada
keyboard.
Setelah berada pada menu utama, kemudian pilih menu ―Program‖, menu inilah yang
berfungsi sebagai pengupload file pemrograman HEX kita ke sistem microcontroler. Jika file
berhasil di kirim maka akan muncul persentase pengiriman data, namun bila gagal akan
muncul pesan error. Jika file gagal di upload ke sistem, silahkan periksa kembali file anda
atau sambungan kabel koneksi di LPT1 kemudian cobalah mengirim kembali.
Jika proses download telah selesai maka hardware kita telah diprogram sesuai dengan
pemrograman serta fungsinya. melalui bahasa assembly kita dapat menjalankan beberapa
peralatan elektronika ataupun sebuah robot. untuk contoh beberapa aplikasi dari bahasa assembly
akan kami bahas dalam artikel selanjutnya, jadi silahkan kunjungi website simawa.unnes.ac.id
untuk mendapatkan informasi mengenai artikel ini.
Artikel ini didapatkan dari Laboratorium Elektronika dan Instrumentasi (ELINS) Jurusan Fisika,
Universitas Negeri Semarang.