Rabu, 30 Desember 2009

TEKNIK PERANCANGAN PROGRAM PADA AT89S51

DELTA ELECTRONIC
http://www.delta-electronic.com
TEKNIK PERANCANGAN PROGRAM PADA AT89S51

Dengan adanya teknologi ISP yang dikembangkan oleh Atmel baru-baru ini pada mikrokontroler
AT89S5x, maka proses pengisian program ke dalam mikrokontroler ini menjadi cukup mudah. Hanya
dengan menggunakan Kabel ISP yaitu sebuah kabel dan beberapa komponen elektronik di dalamnya
program dapat dimasukkan ke dalam mikrokontroler, bahkan dalam sebuah mikrokontroler yang sedang
berada dalam rangkaian aplikasi (On The Fly Programming).
Kabel ISP memang memudahkan proses pengisian program yang telah siap pakai, namun untuk
merancang suatu sistem elektronik yang cukup kompleks atau bagi para pembuat program tingkat pemula
maka proses dilakukan dalam tahap-tahap berikut.

I. Tahap Pengembangan
Tahap ini adalah tahap di mana pembuat rancangan sistem elektronik masih melakukan penulisan
program terhadap program rancangannya. Perancangan program akan menghasilkan program rancangan
yang baik dan efektif apabila dilakukan dengan tahap demi tahap dan penuh kepastian. Untuk itu digunakan
sebuah Development System di mana perancangan program dapat dilakukan secara online di perangkat
keras.
Dengan sebuah Development System, maka rancangan program dapat dicoba langsung di
perangkat keras dan diubah dengan mudah tanpa harus menyentuh perangkat keras tersebut. Pembuat
program hanya perlu duduk di depan PC saja.
Pada tahap ini terdapat dua buah mode kerja, yaitu Mode Monitor di mana download program dan
uji coba jalannya program dapat dilakukan dengan mudah, dan Mode Stand Alone di mana program
rancangan diuji coba pada Development System secara stand alone (tidak terhubung dengan PC)
Mode Monitor

Gambar 1. Program rancangan didownload ke Development System
Pada saat system reset, 8951 akan langsung memanggil program monitor yang ada pada Flash PEROM
8951 dan siap untuk menunggu perintah dari PC
8951 PC
Reset dari PC
Standby menunggu
perintah dari PC
Gambar 2. Perintah PC ke Development System
Perintah tersebut dapat berupa:
- Download file *.hex hasil assembly DELTA ELECTRONIC
http://www.delta-electronic.com

DST-51 PC
8951 mengatur proses download file hex
ke memori eksternal
Memori
Eksternal
File hex didownload dari PC ke 8951
File hex diteruskan oleh 8951 ke Memori
Eksternal

Gambar 3 Download Program Obyek ke Memori Eksternal
- Lihat isi Memori Eksternal maupun RAM Internal
- Edit Memori Eksternal maupun RAM Internal
- Jalankan program yang telah anda download
- Debug atau jalankan instruksi step by step
- Unassembly atau melihat isi program yang telah didownload

8951 PC
8951 membaca dan mengeksekusi
Program di Memori Eksternal
Memori
Eksternal
PC mengirim perintah ke 8951 untuk
mengeksekusi Program di Memori
Eksternal
Program dibaca dari memori eksternal
dan dieksekusi oleh 8951

Gambar 4. Eksekusi Program di Memori Eksternal berdasar perintah PC
Rutin Siap Pakai (Built In Routine)
Rutin Siap Pakai atau Built In Routine adalah potongan-potongan program berupa fungsi-fungsi
yang telah disediakan oleh Development System di mana pembuat program hanya perlu melakukan setting
pada beberapa register (bila diperlukan) dan memanggilnya. Rutin-rutin ini biasanya tersimpan pada Flash
PEROM AT8951 yang tersedia pada Development System. Untuk mengetahui isi rutin-rutin ini dapat
dilihat pada CD merupakan paket dari Development System.
Contoh:
KirimPesan_Serial EQU 1D8H ;Rutin ini tersimpan di alamat 1D8H dari AT8951

Mov DPTR,#3000H ;Register DPTR diatur pada alamat 3000H
Lcall KirimPesan_Serial ;Rutin ini dipanggil dan akan mengirimkan data di
;port serial mulai dari alamat 3000H hingga ditemu
;kan akhiran yaitu 0FH
……………….

Org 3000H ;Pada alamat 3000H diisi pesan Delta Electronic
DB ‘Delta Electronic’,0FH ;

Mode Stand Alone DELTA ELECTRONIC
http://www.delta-electronic.com
Mode Monitor adalah mode di mana program rancangan anda hanya akan bekerja saat menerima
perintah dari PC. Namun pada aplikasinya sebuah program rancangan harus dapat langsung berkerja saat
sistem elektronik mendapatkan sumber daya (Power ON Reset). Untuk itu program harus disimpan di
sebuah memori yang tidak akan kehilangan data walaupun tidak mendapat sumber daya.
UV EPROM (Ultraviolet Erasable Programmable Read Only Memory) adalah memori yang tidak
akan kehilangan data walaupun sumber daya dihilangkan dan seringkali dijumpai di perangkat-perangkat
elektronik. Namun UV EPROM memerlukan proses yang rumit dalam mengisi maupun menghapus data-
datanya. EEPROM (Electrical Erasable Programmable Read Only Memory) adalah pilihan yang tepat di
mana memori tersebut dapat diisi ulang dan dihapus dengan mudah seperti pada RAM (Random Access
Memory) namun tidak akan kehilangan data walaupun sumber daya dimatikan. Development System DST-
51 telah menggunakan memori jenis ini sebesar 8 Kb.
Agar Development System bekerja pada kondisi Stand Alone, maka sinyal reset harus
dibangkitkan dari kondisi masuknya Sumber Daya ke sistem tersebut sehingga 8951 akan langsung
mengeksekusi program yang tersimpan dalam EEPROM saat power supply diaktifkan.

PC
UV EPROM
Programmer
EEPROM
Programmer
Developement
System
UV EPROM EEPROM EEPROM/RAM


Gambar 5. Proses pengisian Program ke berbagai tipe Memori

8951
Program Monitor dalam Flash PEROM
8951 mendeteksi sinyal reset berasal dari
kondisi Power Supply aktif, maka 8951
langsung mengeksekusi program yang
ada di Memori Eksternal
Memori
Eksternal
Program dibaca dari memori eksternal
dan dieksekusi oleh 8951
Sinyal Reset bangkit dari kondisi Power
Supply aktif

Gambar 6. Proses Eksekusi Program di Memori Eksternal dengan Power On Reset

II. Tahap Prototype
Tahap ini adalah tahap di mana program rancangan telah berjalan dengan baik pada Mode Stand
Alone. Namun sifat sistem elektronik masih berupa prototype atau sebuah sistem contoh yang masih harus
diuji coba kelayakannya. Dalam tahap ini, masih terjadi kemungkinan di mana sistem elektronik tersebut
masih harus diubah baik rancangan program maupun konfigurasi perangkat kerasnya. Agar perubahan tetap DELTA ELECTRONIC
http://www.delta-electronic.com
dapat dilakukan dengan mudah, maka Development System DST-51 juga mempunyai fasilitas untuk
beroperasi pada Mode Prototype.
Sebuah prototype memang harus dirancang sangat mendekati sistem akhir yaitu sebuah sistem
yang seringkas mungkin. AT89S51 mempunyai memori Flash PEROM sebesar 4 Kb sebagai media
penyimpanan program, oleh karena itu apabila program rancangan yang telah selesai dalam memori
EEPROM memang cukup untuk dimasukkan ke Flash PEROM maka program tersebut sebaiknya dipindah
ke Flash PEROM sehingga pada tahap akhir, EEPROM dapat dihilangkan.
Hal-hal yang perlu dilakukan pada tahap ini:
- Gabungkan Built In Routine yang digunakan ke dalam program rancangan anda
o Copy Paste Built In Routine yang dapat diperoleh pada CD atau website www.delta-
electronic.com bagian software ke program rancangan anda
o Assembly ulang program tersebut dengan program Assembler
- Bila sistem yang telah dirancang menggunakan I/O tambahan seperti PPI 8255, pelajari
kemungkinannya untuk merubah I/O tersebut ke I/O-I/O AT8951 yang sebelumnya terpakai oleh
EEPROM dan PPI seperti Port 0, Port 2 , P3.6 dan P3.7
- Matikan fungsi EEPROM dan PPI pada Development System dengan melepaskan jumper Bus
Disable.
- Gantikan AT89C51 yang berisi program DST-51 dengan sebuah AT89S51 yang kosong untuk
menampung program rancangan anda
- Hubungkan Kabel ISP ke Port 1 dan pin Reset DST-51
- Isikan Program tersebut dengan menggunakan Atmel Microcontroller ISP Software ke AT89S51
- Pastikan posisi jumper reset DST-51 pada mode Power On Reset
- OFF dan ON kan Sumber Daya DST-51 dan sistem prototype telah siap didemokan.

Apabila pada tahap ini masih diperlukan sedikit perubahan, maka dengan menggunakan Kabel ISP anda
dapat mengedit program dan mendownload ulang ke AT89S51. Apabila perubahan yang dilakukan cukup
besar, maka dengan Development System ini pula anda dapat kembali ke Mode Monitor.

III. Tahap Akhir
Tahap ini adalah tahap di mana sistem elektronik harus dibuat seringkas mungkin dengan menghilangkan
komponen-komponen yang hanya dibutuhkan pada saat tahap pengembangan saja seperti PPI 8255, antar
muka RS232 dan EEPROM. Untuk itu hal-hal yang perlu diperhatikan adalah:
- Bila I/O yang dibutuhkan dapat dipenuhi oleh I/O AT8951, maka PPI 8255 dapat ditiadakan
- Pelajari kemungkinan untuk menggantikan EEPROM sebagai media penyimpanan data dengan
Serial EEPROM
- Gunakan Modul SC-51 (Single Chip AT8951) dan pasang AT89S51 yang telah terisi program
rancangan anda ke modul ini.

Tidak ada komentar: