Rabu, 05 Januari 2011

BAHASA PEMOGRAMAN DAN FORMAT BILANGAN MIKROKONTROLER AT89S51-AT89C51

Bahasa mesin
Bahasa Assembly (Assembler)
Bahasa Level Tinggi

Bahasa Level Tinggi

Bahasa pemograman tingkat tinggi yang di gunakan oeh
miktrokontroler AT89C51/89S51 antara lain:
Basic
Pascal
Bahasa C
Bahasa C paling banyak dikembangkan diantaranya:
Keil Compiler oleh Keil Corp
Small Device C Compiler oleh Sundeep Duta

Jika dalam penulisan program menggunkan bahasa
assemler atau bahasa tingkat tinggi maka di butuhkan
software yang dikenal dengan Compiler untuk
mentermahkan bahasa yang di mengerti manusia
menjadi bahasa mesin

Bahasa Assembly (Assembler)

Bahasa yang di gunakan oleh programer untuk membuat
program sehingga dapat diproses oleh mikrokontroler.
Bahasa asembler merupakan sandi yang merupakan
singkatan kata dari kata-kata dalam bahasa inggris,
contoh:
Mov dari Move
INC dari Increment
SJMP dari Short Jump, dll

Singkatan-singkatan tersebut di kenal dengan mnemonic .
Agar program yang di buat oleh seorang programer dengan
bahasa assembler dapat dijalankan oleh mikrokontroler.
Maka didalam mikrokontroler sandi tersebut ditermahakan
menjadi kode mesin kemudian baru dapat diproses.
Bahasa mesin yang digunakan oleh mikroprosesor
atau mikrokontroler berbeda-beda tergantung dari
alamat register tujuan


Konversi Bahasa Assambly ke bahasa
Mesin
1. Isi Kolom t dengan data Operand (alamat register tujuan)
2. Isi Kolom N dengan data Source (data sumber)
3. Isi kedua tabel di atas merupakan bahasa mesin

Bahasa Assembly adalah bahasa pemrograman tingkat
Menengah.
Bahasa pemrograman tingkat tinggi lebih berorientasi
kepada manusia yaitu bagaimana agar pernyataanpernyataan
yang ada dalam program mudah ditulis dan
dimengerti oleh manusia.
Sedangkan bahasa tingkat rendah lebih berorientasi
ke mesin, yaitu bagaimana agar komputer dapat
langsung mengintepretasikan pernyataanpernyataan
program.

Kelebihan Bahasa Assembly
1. Ketika di-compile lebih kecil ukuran
2. Lebih efisien/hemat memori
3. Lebih cepat dieksekusi
Kesulitan Bahasa Assembly:
1. Dalam melakukan suatu pekerjaan, baris
program relatif lebih panjang dibanding bahasa
tingkat tinggi
2. Relatif lebih sulit untuk dipahami terutama jika
jumlah baris sudah terlalu banyak
3. Lebih sulit dalam melakukan pekerjaan rumit,
misalnya operasi matematis

BAHASA ASSEMBLY 89C51

Dalam program bahasa assembly terdapat 2 jenis yang
kita tulis dalam program yaitu:
1. Assembly Directive (yaitu merupakan kode yang
menjadi arahan bagi assembler/compiler untuk
menata program)
2. Instruksi (yaitu kode yang harus dieksekusi oleh CPU
mikrokontroler)

Selasa, 04 Januari 2011

Bahasa Mesin

Bahasa dalam bentuk biner yang disandikan menjadi
code yang dikenal dengan code mesin biasanya dalam
bentuk heksadesimal Hexa.
Semua perintah di masukan dalam bentuk kode mesin
atau Operational Code (Op-Code) kode diterjemahkan
mikrokontroler menjadi bentuk biner kemudian baru
diproses.
Program pada CPU mikrokontroler yang disimpan
didalam ROM merupakan bahasa mesin.

Umumnya perintah-perintah tersebut di tulis dalam
bentuk bilangan hexa tetapi disimpan di dalam memory
(ROM) dalam format bilangan biner contoh :
001110100b (74h)
11110000(F0h)

Perbedaan mikroprosesor dengan mikrokontroler

- Dari segi arsitekturnya mikroprosesor merupakan single chip
CPU, didalam chip mikrokontroler selain terdapat CPU juga
terintegrasi ROM, RAM, Eprom, paraler interface, interupt
controler, timer, dll (tergantung dari jenis mikrokontroler)
- Dari segi aplikasinya, mikroprosesor hanya berfungsi sebagai
CPU yang menjadi otak komputer, sedangkan mikrokontroler
yang ukurannya relatif kecil umumya diberikan untuk tugastugas
yang berorientasi kontrol pada rangkaian yang
membutuhkan jumlah komponen minimum dan konsumsi
biaya rendah ( low cost ).

Sistem Minimum Mikrokontroler AT 8951

Untuk membuat sebuah sistem
minimum dengan mikrokontroler AT
8951 dibutuhkan beberapa
komponen yaitu:
IC mikrokontroler
Kristal (XTAL) 12 MHz ,
kapasitor & Resistor
Sebagai sumber energi adalah
sumber tegangan 5V DC

Aplikasi Mikrokontroler Industri




Aplikasi Mikrokontroler Dalam mengukur
Kondisi Udara

Contoh gambar


Senin, 03 Januari 2011

Input dan output

Pada rangkaian digital jika diinginkan perubahan output maka
harus dilakukan perubahan pada struktur perangkat keras.
Sebagai contoh:

Jika menggunakan gerbang OR maka output identik
dengan penjumlahan.
Tetapi kalau menginginkan prinsip kerja identik dengan
perkalian maka rangkaian digital harus di ganti dengan
gerbang AND
Pada sistem yang berbasiskan mikroprosesor untuk
mendapatkan variasi keluaran yang harus dilakukan
adalah perubahan pada perangkat lunak atau
program.


Jika sebuah microprosesor dengan peralatan peripheral
pendukungnya seperti circuit board, I/O peripheral, Memory
(program ataupun data) di letakkan bersama dalam suatu
tempat seperti komputer kecil yang di khusus di gunakan
untuk akuisisi dan aplikasi process kontrol, maka yang seperti
itu disebut sebagai mikrokomputer

Memori

Di dalam sebuah mikrokontroler terdapat suatu memori yang berfungsi untuk menyimpan data atau program. Ada beberapa jenis memori, diantaranya adalah RAM dan ROM. Ada beberapa tingkatan memori, diantaranya adalah register internal, memori utama, dan memori massal. Register intemal adalah memori di dalam ALU. Waktu akses register sangat cepat, umumnya kurang dari 100 ns.

Memori utama adalah memori yang ada pada suatu sistem. Waktu aksesnya lebih lambat dibandingkan register internal, yaitu antara 200 sampai 1.000 ns. Memori massal dipakai untuk penyimpanan berkapasitas tinggi, biasanya berbentuk disket, pita magnetik, atau kaset.

Microprosesor

Mikroprosesor adalah CPU atau Central Processing Unit yang
terdapat dalam satu chip. CPU di rancang dengan (MSI/LSI)
chips yang terintegrasi dengan jumlah medium ataupun besar
Sebagai contoh Microprosesor pertama yang di produksi Intel
Microprosesor didalam sebuah Chip atau IC terintegrasi:
Aritmetic logic unit (ALU)
Instructions decoder
Registers
Bus control circuits
Dll


Diagram Central Processing Unit


FUNGSI BLOCK DALAM MIKROPROSESOR
CONTROL UNIT
Tugas dari control unit adalah :
1.Mengatur dan mengendalikan alat-alat input dan output.
2.Mengambil instruksi-instruksi dari main memory.
3.Mengambil data dari main memory kalau diperlukan oleh
proses.
4.Mengirim instruksi ke ALU bila ada perhitungan aritmatika
atau perbandingan logika, serta mengawasi kerja ALU.
5.Menyimpan hasil proses ke main memory.


ARITHMETIC AND LOGIC UNIT (ALU)
1 Tugas utama dari ALU adalah melakukan semua
perhitungan aritmatika atau matematika yang terjadi
sesuai dengan instruksi program.
2 Selain itu ALU juga melakukan keputusan dari operasi
logika sesuai dengan instruksi program.


REGISTER
Register merupakan simpanan kecil yang mempunyai
kecepatan tinggi, lebih cepat sekitar 5 sampai 10 kali
dibandingkan dengan kecepatan perekaman atau
pengambilan data di main memory.
Register digunakan untuk menyimpan instruksi dan
data yang sedang diproses oleh CPU, sedang
instruksi-instruksi dan data lainnya yang menunggu
giliran untuk diproses masih disimpan di main
memory.