Perangkat Lunak Sistem kerja rangkaian

berfungsi sebagai input dari seven segmen, seperti ditunjukkan pada gambar berikut ini : Gambar 2.4 konfigurasi seven segmen tipe common katoda Sesuai dengan gambar di atas, maka untuk menyalakan salah satu segmen, maka anodanya harus diberi tegangan minimal 3 volt atau logika high. Misalnya jika segmen a akan dinyalakan, maka anoda pada segmen a harus diberi tegangan minimal 3 volt atau logika high, dengan demikian maka segmen a akan menyala. Demikian juga untuk segmen lainnya.

2.2 Perangkat Lunak

2.2.1 Software 8051 Editor, Assembler, Simulator IDE

Instruksi-instruksi yang merupakan bahasa assembly tersebut dituliskan pada sebuah editor, yaitu 8051 Editor, Assembler, Simulator IDE. Tampilannya seperti di bawah ini. Universitas Sumatera Utara Gambar 2.5 8051 Editor, Assembler, Simulator IDE Setelah program selesai ditulis, kemudian di-save dan kemudian di-Assemble di- compile. Pada saat di-assemble akan tampil pesan peringatan dan kesalahan. Jika masih ada kesalahan atau peringatan, itu berarti ada kesalahan dalam penulisan perintah atau ada nama subrutin yang sama, sehingga harus diperbaiki terlebih dahulu sampai tidak ada pesan kesalahan lagi. Software 8051IDE ini berfungsi untuk merubah program yang kita tuliskan ke dalam bilangan heksadesimal, proses perubahan ini terjadi pada saat peng-compile-an. Bilangan heksadesimal inilah yang akan dikirimkan ke mikrokontroller.

2.2.2 Software Downloader

Untuk mengirimkan bilangan-bilangan heksadesimal ini ke mikrokontroller digunakan software ISP- Flash Programmer 3.0a yang dapat didownload dari internet. Tampilannya seperti gambar di bawah ini: Universitas Sumatera Utara Gambar 2.6 ISP- Flash Programmer 3.a Cara menggunakannya adalah dengan meng-klik Open File untuk mengambil file heksadesimal dari hasil kompilasi 8051IDE, kemudian klik Write untuk mengisikan hasil kompilasi tersebut ke mikrokontroller. Universitas Sumatera Utara BAB III PERANCANGAN ALAT DAN PROGRAM

3.1 Sistem kerja rangkaian

Nilai diinputkan melalui keypad, nilai yang telah diinputkan akan diterima langsung oleh mikrokontroller dan ditampilkan hasilnya melalui display seven segment Mikrokontroler pertama akan mengirimkan datanya ke mikrokontroler kedua melalui pemancar infra merah. Pemancar infra merah pada alat ini akan menggunakan sebuah LED infra merah yang akan dikedipkan dengan frekuensi 38 KHz, kemudian dimodulasi dengan data yang akan dikirimkan. Mikrokontroler kedua akan menerima data yang dikirimkan oleh mikrokontroler pertama melalui penerima infra merah. Penerima infra merah pada alat ini akan digunakan sebuah IC TSOP 1738. Keluaran IC ini akan bernilai high 1 jika ada pancaran infra merah 38 KHz. Dan sebaliknya, keluaran IC ini akan bernilai low 0 jika tidak ada pancaran infra merah 38 KHz. Data yang diterima oleh mikrokontroler kedua akan diolah oleh mikrokontroler untuk ditampilkan nilainya pada display seven segmen. Perancangan program Adapun program yang diisikan kedalam mikrokontroller pada alat pengirman data jarak jauh dengan menggunakan infra merah adalah sbb: Universitas Sumatera Utara Program pemancar : bil0 equ 20h bil1 equ 0ech bil2 equ 18h bil3 equ 88h bil4 equ 0c4h bil5 equ 82h bil6 equ 02h bil7 equ 0e8h bil8 equ 0h bil9 equ 80h mov 73h,bil0 Mov 70h,0 inc 70h tbl_Satu: acall kirimdata acall tampil mov p0,7fh mov a,p0 cjne a,77h,tbl_Dua mov 73h,bil1 Mov 70h,1 inc 70h Universitas Sumatera Utara acall tampil Recek_tbl_Satu: mov a,p0 cjne a,77h,Recek_tbl_Satu ljmp Tbl_Satu tbl_Dua: cjne a,7bh,tbl_Tiga mov 73h,bil2 Mov 70h,2 inc 70h acall tampil Recek_tbl_Dua: mov a,p0 cjne a,7bh,Recek_tbl_Dua ljmp Tbl_Satu tbl_Tiga: cjne a,7dh,Tbl_Empat mov 73h,bil3 Mov 70h,3 inc 70h acall tampil Recek_tbl_Tiga: mov a,p0 Universitas Sumatera Utara cjne a,7dh,Recek_tbl_Tiga ljmp Tbl_Satu Tbl_Empat: mov p0,0bfh mov a,p0 cjne a,0b7h,Tbl_Lima mov 73h,bil4 Mov 70h,4 inc 70h acall tampil Recek_tbl_Empat: mov p0,0bfh mov a,p0 cjne a,0b7h,Recek_tbl_Empat Ljmp Tbl_Satu Tbl_Lima: cjne a,0bbh,Tbl_Enam mov 73h,bil5 Mov 70h,5 inc 70h acall tampil Recek_tbl_Lima: mov a,p0 Universitas Sumatera Utara cjne a,0bbh,Recek_tbl_Lima ljmp Tbl_Satu Tbl_Enam: cjne a,0bdh,Tbl_Tujuh mov 73h,bil6 Mov 70h,6 inc 70h acall tampil Recek_tbl_Enam: mov a,p0 cjne a,0bdh,Recek_tbl_Enam ljmp Tbl_Satu Tbl_Tujuh: mov p0,0dfh mov a,p0 cjne a,0d7h,Tbl_Delapan mov 73h,bil7 Mov 70h,7 inc 70h acall tampil Recek_tbl_Tujuh: mov p0,0dfh mov a,p0 Universitas Sumatera Utara cjne a,0d7h,Recek_tbl_Tujuh ljmp Tbl_Satu Tbl_Delapan: cjne a,0dbh,Tbl_Sembilan mov 73h,bil8 Mov 70h,8 inc 70h acall tampil Recek_tbl_Delapan: mov a,p0 cjne a,0dbh,Recek_tbl_Delapan ljmp Tbl_Satu Tbl_Sembilan: cjne a,0ddh,Tbl_nol mov 73h,bil9 Mov 70h,9 inc 70h acall tampil Recek_tbl_Sembilan: mov a,p0 cjne a,0ddh,Recek_tbl_Sembilan ljmp Tbl_Satu Tbl_Nol: Universitas Sumatera Utara mov p0,0efh mov a,p0 cjne a,0ebh,Balik_Tbl_Satu mov 73h,bil0 Mov 70h,0 inc 70h acall tampil Recek_tbl_Nol: mov p0,0efh mov a,p0 cjne a,0ebh,Recek_tbl_Nol Ljmp Tbl_Satu Balik_Tbl_Satu: Ljmp Tbl_Satu Kirimdata: acall frek38khz acall frek38khz mov r0,70h acall data acall frek38khz acall frek38khz ret Universitas Sumatera Utara tampil: mov sbuf,73h jnb ti, clr ti ret frek38khz: mov r0,10 loop: clr p3.7 nop nop nop nop nop nop nop nop nop nop nop nop setb p3.7 nop Universitas Sumatera Utara nop nop nop nop nop nop nop nop nop djnz r0,loop ret data: loop1: acall pulsa djnz r0,loop1 ret pulsa: CLR p3.7 mov r7,2 pls: mov r6,255 djnz r6, djnz r7,pls Universitas Sumatera Utara mov r7,50 djnz r7, ret Penerima: bil0 equ 20h bil1 equ 0ech bil2 equ 18h bil3 equ 88h bil4 equ 0c4h bil5 equ 82h bil6 equ 02h bil7 equ 0e8h bil8 equ 0h bil9 equ 80h mov p1,0h mov p2,0h mov 74h,bil0 acall kirim_disp Utama: mov 61h,0h jb p3.7, nop jnb p3.7, Universitas Sumatera Utara nilai1: inc 61h acall hitung jb p3.7,nilai1 mov a,61h mov b,10 div ab dec a mov 70h,a mov r0,70h cjne r0,0,ke1 mov 74h,bil0 acall kirim_disp sjmp utama ke1: cjne r0,1,ke2 mov 74h,bil1 acall kirim_disp sjmp utama ke2: cjne r0,2,ke3 mov 74h,bil2 acall kirim_disp sjmp utama ke3: Universitas Sumatera Utara cjne r0,3,ke4 mov 74h,bil3 acall kirim_disp sjmp utama ke4: cjne r0,4,ke5 mov 74h,bil4 acall kirim_disp sjmp utama ke5: cjne r0,5,ke6 mov 74h,bil5 acall kirim_disp sjmp utama ke6: cjne r0,7,ke7 mov 74h,bil6 acall kirim_disp ljmp utama ke7: cjne r0,8,ke8 mov 74h,bil7 acall kirim_disp ljmp utama ke8: Universitas Sumatera Utara cjne r0,9,ke9 mov 74h,bil8 acall kirim_disp ljmp utama ke9: cjne r0,10,balik1 mov 74h,bil9 acall kirim_disp balik1: ljmp utama kirim_disp: mov sbuf,74h jnb ti, clr ti ret hitung: mov r7,50 djnz r7, ret Universitas Sumatera Utara Display 7 Segmen Pemancar Infra Red M ikr okont rol er A T 89S 51 K edua Penerima Infra Red Display 7 Segmen M ikr okont rol er A T 89S 51 P er tam a keypad

3.2 Perancangan Alat