Driver Motor L293D Perangkat Lunak Basis Bilangan

2.6 Driver Motor L293D

Untuk menjalankan Motor DC diperlukan sebuah Driver Motor. Driver Motor ini mempunyai banyak type atau versinya, namun yang akan digunakan untuk menjalankan Motor DC pada robot adalah Driver Motor versi L293D. L293D adalah suatu Driver Motor sirkit terintegrasi yang dapat digunakan untuk simulasi, yaitu mengendalikan dua kendali motor kecil. Gambar 2.17 IC L293D IC L293D ini termasuk dalam standard 16 pin dan mempunyai flyback dioda untuk memperkecil voltase induktif. L293D terbatas pada 600 mA, tetapi pada kenyataannya kebanyakan hanya dapat digunakan pada batasan mA yang kecil, kecuali jika sudah melakukan beberapa percobaan serius untuk menurunkan temperaturnya. Jika L293D ini dicoba dengan sebuah Motor DC dan pada saat bekerja terasa terlalu panas bila disentuh maka IC ini tidak dapat digunakan pada Motor DC tersebut. [4] Gambar 2.18 Pin-pin Driver Motor IC L293D

2.7 Perangkat Lunak

Dalam pengoperasian perangkat keras ini agar dapat bekerja sesuai dengan yang diharapkan maka perlu suatu perangkat lunak yaitu Software yang sesuai dengan mikrokontroller yang digunakan. Disini digunakan IC Mikrokontroller AT89S52 yang mempunyai 8 Kb Flash PEROM. Secara umum bahasa pemrograman yang sesuai dengan mikrokontroller adalah Bahasa Assembly karena merupakan suatu bahasa mesin.

2.8 Program Sumber Assembly

Program Sumber Assembly merupakan program yang ditulis oleh pembuat program yang berupa kumpulan baris perintah dan biasanya disimpan dengan extension.ASM. program ini ditulis menggunakan perangkat lunak-perangkat lunak teks editor seperti Notepad atau editor DOS. Program Assembler merupakan perangkat lunak yang akan dibutuhkan untuk melakukan proses assembly yang mengubah program sumber assembly menjadi program obyek maupun assembly listing. [6]

2.8.1 Ekspresi-Ekspresi Assembly

i. Basis Bilangan

Basis bilangan ditulis dengan standart Mikroprosesor Intel. Akhir konstanta harus ditulis “B” untuk biner, “O” atau “Q” untuk Oktal, “D” atau tanpa simbol untuk desimal, dan “H” untuk hexadesimal.[5] Contoh : MOV A, 15 MOV A, 15D MOV A, 15O MOV A, 15Q MOV A, 15H MOV A, 0AH MOV A, 11111111B MOV A, 10111B Khusus untuk format heksa, jika digit awal MSB Most Significant Bit adalah huruf A,B,C,D,E, atau F, penulisannya harus diawali huruf “0” nol dikarenakan bilangan hexadesimal terdiri dari 16 bit, dimana masing- masing terdiri dari 8 bit. ii. String Karakter Operan dapat berupa string yang terdiri dari satu atau karakter yang diapit tanda petik tunggal ‘. Kode ASCII dari karakter tersebut kemudian diterjemahkan sebagai bilangan biner yang sesuai dengan assembler. [10] Contoh : CJNE A, ’Q’, LAGI SUBB A, ’Q’ ; Konversi Digit ASCII ke digit biner MOV DPTR, ’AB’ ; Dua perintah MOV DPTR, 4142 ; ini sama hasilnya iii. Operator-operator Aritmatik Operator-operator aritmatik mencakup : + Penambahan - Pengurangan Perkalian Pembagian MOD modulo, sisa pembagian Contoh : Dua instruksi dibawah ini akan memiliki hasil yang sama MOV A, 10+10h MOV A, 1Ah Atau MOV A, 25 MOD 7 MOV A, 4 iv. Operator-operator logika Operator Logika Mencakup : OR Logika OR AND Logika AND XOR Logika XOR NOT Logika komplemen Kabalikan Operasi logika tersebut masing-masing bit pada operator, misalnya : Dua instruksi berikut hasilnya sama : MOV A, ’9’ AND 0fh MOV A, 9 Operasi NOT hanya membutuhkan satu operan, misalnya : TIGA EQU 3 MOV A, NOT TIGA + 1

v. Operator-operator khusus