• Tidak ada hasil yang ditemukan

BAB II LANDASAN TEORI. tunggal) dan 2 pasangan (untuk ganda) yang berlawanan.

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB II LANDASAN TEORI. tunggal) dan 2 pasangan (untuk ganda) yang berlawanan."

Copied!
23
0
0

Teks penuh

(1)

5 BAB II

LANDASAN TEORI

2.1 Bulutangkis

Bulutangkis adalah olahraga yang dimainkan oleh minimal 2 orang (untuk tunggal) dan 2 pasangan (untuk ganda) yang berlawanan.

2.1.1 Partai Bulutangkis

Ada lima partai yang biasa dimainkan dalam bulutangkis. Partai tersebut adalah: 1. Tunggal putra 2. Tunggal putri 3. Ganda putra 4. Ganda putri 5. Ganda campuran

2.1.2 Cara Permainan Bulutangkis

Tujuan permainan adalah untuk memukul sebuah shuttle cock menggunakan raket, melompati jaring ke wilayah di seputar batasan tertanda sebelum pemain atau pasangan lawan bisa memukulnya balik. Untuk setiap kali ini berhasil dilakukan oleh regu yang menyervis, pemain atau pasangan penyervis mencetak skor satu poin. Setelah memenangi satu poin, pemain yang sama menyervis kembali, dan terus

(2)

menyervis sepanjang mereka terus mencetak poin. Apabila regu yang tak menyervis memenangkan reli ini, maka poin akan dicetak oleh mereka dan akan ada pergantian penyervis. Permainan di awali dengan menyervis dari Right Service Court.

2.1.3 Lapangan Bulutangkis

Lapangan bulutangkis ini memiliki panjang 13.4 m dan lebar 6.1 m.

(3)

2.2 MCS 52

Gambar 2.2 Bentuk Fisik AT89S52

AT89S52 adalah mikrokomputer cmos 8-bit yang memiliki daya kerja rendah dan unjuk kerja yang tinggi. AT89S52 memiliki 8-Kbytes flash yang dapat diprogram dan ROM yang dapat dihapus (EPROM).

Mikrokontroler atmel AT89S52 menyediakan penggunaan-penggunaan standar seperti flash 8-Kbytes, RAM 256 bytes, 32 jalur input / output, 3 buah timer / counter16 bit, 6 vektor 2 level arsitektur interrupt, port serial full duplex, on chip oscillator, dan rangkaian clock. Sebagai tambahan, mikrokontroler AT89S52 dirancang dengan logika statis untuk operasi dengan frekuensi menurun sampai 0 dan mendukung 2 mode piranti lunak hemat daya yang dapat

24PC

0141

VCC P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 EA/VPP PROG/ALE P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 PSEN P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 RST P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 XTAL2 XTAL1 VSS T2 T2EX RXD TXD INT0 INT1 RW RD T0 T1

AT89S52

(4)

dipilih. Mode idle menghentikan CPU namun selama itu pula memperbolehkan RAM, timer/counter, port serial, dan sistem interrupt untuk tetap berfungsi.

2.2.1 Blok Diagram MCS

Gambar 2.3 Blok Diagram inti dari AT89S52

2.2.2 Organisasi Memori

AT89S52 memiliki ruang alamat memori data dan program yang terpisah. Pemisahan tersebut membolehkan memori data diakses dengan alamat 8-bit, sehingga dapat dengan cepat dan mudah disimpan dan dimanipulasi oleh CPU 8-bit. Walaupun demikian alamat memori data 16-bit juga dihasilkan melalui register DPTR.

EXTERNAL INTERRUPT S INTERRUP T CONTROL ROM CP U OSC BU S CONTROL 4 I/O PORTS P0 P1 P2 P3 ADDRESS/ DATA SERIAL PORT TIMER 1 TIMER 0 COUNTE R INPUT S 128 BYTES RA M T X RX

(5)

Memori Program Memori Program (hanya Baca) (Baca/Tulis)

(6)

Gambar 2.4 Struktur memori program dan data pada AT89S52

Memori program hanya dapat dibaca saja. Terdapat program yang dapat diakses langsung hingga 64K byte. Sedangkan strobe (tanda) untuk akses program memori eksternal melalui sinyal PSEN’ atau program Store Enable.

Memori data menempati suatu ruang alamat yang terpisah dari memori program. Memori eksternal dapat di akses secara langsung hingga 64 K byte dalam ruang memori data eksternal. CPU akan memberikan sinyal baca dan tulis, RD’ dan WR’, selama pengaksesan memori data eksternal. Memori data eksternal dan memori program eksternal dapat di kombinasikan dengan cara menggabungkan sinyal RD’ dan PSEN’ melalui gerbang AND dan keluarannya sebagai tanda baca ke memori data atau program eksternal.

2.2.3 Memori Program

Pada gambar di bawah ditunjukkan pemetaan bagian bawah dari memori program. Setelah reset, CPU segera mengerjakan program mulai dari lokasi 0000h.

(7)

Gambar 2.5 Memori program

Sebagai mana ditunjukkan gambar diatas masing-masing instruksi disimpan pada lokasi yang telah ditentukan dalam memori program. Sebuah instruksi menyebabkan CPU melompat ke lokasi instruksi yang bersangkutan, yaitu letak dari subrutin layanan instruksi tersebut. Misalnya, External Interrupt 0 disimpan pada lokasi 0003h, jika instruksi ini digunakan, maka layanan rutin instruksi ini harus dituliskan pada lokasi ini, jika tidak, maka lokasi tersebut bisa dipakai pada memori program serba guna (untuk keperluan lainnya).

Jika suatu rutin layanan instruksi sangat pendek (kurang dari 8 byte), maka seluruh rutin bisa disimpan pada lokasi yang bersangkutan (sesuai dengan instruksi yang digunakan). Jika terlalu panjang (melebihi atau sama dengan 8 byte), maka harus digunakan suatu perintah lompat

(8)

kelokasi rutin instruksi yang sebenarnya (dilokasi lain dalam memori program).

Alamat-alamat yang paling bawah dari memori program dapat berada dalam flash on-chip maupun memori eksternal, untuk melakukan hal ini lakukan pengkabelan pada pin EA‘ atau Eksternal Akses ke Vcc (untuk akses memori internal) atau GND untuk akses memori eksternal sesuai dengan kebutuhan

Pada AT89S52 (dengan flash sebesar 8 Kbyte), jika = Vcc, maka lokasi 0000h hingga 1FFFh menempati memori internal sedangkan lokasi 2000h hingga FFFFh menempati memori eksternal.

Jika EA’ = GND, maka semua penggambilan instruksi langsung dilakukan pada memori eksternal. Tanda baca ke memori eksternal digunakan untuk semua pengambilan program eksternal sedangkan pengaksesan instruksi pada memori internal tidak melibatkan

2.2.4 Mode – Mode Pengalamatan

Dalam MCS AT89S52 terdapat beberapa jenis pengalamatan yang digunakan untuk mengisi nilai register. Pengalamatan tersebut adalah a. Pengalamatan Langsung ( Direct Addressing )

Dalam pengalamatan langsung ( Direct Addressing ), operan – operan ditentukan berdasarkan alamat 8-bit ( 1 byte ) dalam suatu instruksi. Hanya RAM data internal dan SFR saja yang bisa diakses secara langsung.

(9)

Artinya adalah nilai A akan diisi dengan nilai yang ada pada alamat 7Fh.

Misal nilai pada alamat 7Fh adalah 88h, maka setelah perintah dijalankan, nilai A akan menjadi 88h.

b. Pengalamatan Tak-langsung ( Indirect Addressing )

Dalam pengalamatan tak-langsung, instruksi menentukan suatu register yang digunakan untuk menyimpan alamat operan. Baik RAM internal maupun eksternal dapat diakses secara tak-langsung.

Register alamat untuk alamat-alamat 8-bit bisa menggunakan Stack-Pointer atau R0 dan R1 dari bank register yang dipilih. Sedangkan untuk alamat 16-bit hanya bisa menggunakan register pointer data 16-bit atau DPTR.

Contoh dari pengalamatan Tak-Langsung adalah MOV A,@R0

Artinya adalah diambil nilai yang ada di dalam R0 kemudian nilai

tersebut akan dijadikan sebagai alamat yang akan diambil nilainya. Misal nilai R0 adalah 77h dan nilai yang ada pada alamat 77h adalah 99h, maka setelah perintah di jalankan maka nilai A akan menjadi 99h.

c. Instruksi – instruksi Register

Bank-bank register yang masing-masing berisi R0 hingga R7 atau 8 register, dapat diakses melalui instruksi yang op-kodenya mengandung 3 bit spesifikasi register ( 000 untuk R0, 001 untuk R1, hingga 111 untuk R7 ). Pengaksesan register dengan cara demikian bisa menghemat penggunaan kode instruksi, karena tidak

(10)

memerlukan sebuah byte untuk alamat. Saat instruksi tersebut dikerjakan, satu dari delapan register bank yang terpilih yang diakses. Contoh dari pengalamatan register adalah MOV A, R7

Jika nilai R7 adalah 89h maka setelah perintah dijalankan nilai A akan menjadi 89h.

d. Instruksi – instruksi Register Khusus

Beberapa instruksi hanya dikhususkan untuk suatu register tertentu. Misalnya, suatu instruksi yang hanya bekerja pada akumulator saja, sehingga tidak memerlukan alamat byte untuk menunjuk ke akumulator tersebut. Dalam hal ini op-kodenya sendiri telah mengandung penunjuk ke register yang benar. Instruksi yang mengacu akumulator sebagai A akan dikodekan dengan op-kode spesifik-akumulator.

e. Konstanta Langsung ( Immediate Constant )

Nilai dari suatu konstanta dapat segera menyatu dengan op_kode dalam memori program. Misalnya intruksi : MOV A,#100 yang akan menyimpan konstanta 100 (desimal) ke dalam akumulator. Bilangan yang sama tersebut bisa juga dituliskan dalam format heksa sebagai 64h ( MOV A,#64h ).

Contoh dari pengalamatan langsung adalah Mov A,#88h

Maka setelah perintah dijalankan nilai A akan langsung memiliki nilai 88h.

(11)

Memori program hanya bisa diakses melalui pengalamatan terindeks. Mode pengalamatan ini ditunjukan untuk membaca Look-up tables yang tersimpan dalam memori program ( data yang menyatu dengan program ). Sebuah register dasar 16-bit (bisa DPTR atau Pencacah Program atau Program Counter ) menunjukan ke awal atau dasar tabel dan akumulator di-set dengan angka indeks tabel yang akan diakses. Alamat dari entri tabel dalam memori program dibentuk dengan menjumlahkan data akumulator dengan penunjuk awal tabel.

2.2.5 Instruksi Pemindahan Data dalam AT89S52

Pada instruksi perpindahan data ini kita mengenal ada beberapa instruksi yang dapat digunakan, yaitu:

– Perpindahan data dari dan ke memori dan register. Pada perpindahan ini kita menggunakan perintah Mov.

Perintah mov digunakan untuk memindahkan sumber data ke tujuan data.

– Perpindahan data untuk stack digunakan perintah Push dan Pop.

Perintah push digunakan untuk menyimpan nilai register ( 16-bit) ke dalam stack.

Sedangkan perintah pop digunakan untuk mengambil nilai register (16-bit) yang ada dalam stack.

(12)

2.3 RS 232 (MAX 232)

RS 232 ( MAX 232 ) adalah Protokol komunikasi serial yang berfungsi untuk merubah level tegangan serial dari Komputer ke Sistem Minimum.

RS 232 ( MAX 232 ) ini digunakan untuk menyambungkan antar PC dengan modul yang dibuat dengan bantuan DB 25 atau DB 9 yang berfungsi sebagai pin atau konektor.

EIA ( Electronic Industries Alliance ) Standar RS-232 mendefinisikan :

- Karakteristik sinyal elektronik seperti level tegangan listrik, nilai sinyal, penjadwalan waktu, level maksimum dari tegangan listrik, sifat dari rangkaian pendek, nilai maksimum dari kapasitansi dan panjang kabel. - Karakteristik mekanik yang saling berhubungan. konektor dan

identifikasi pin.

- Fungsi dari setiap rangkaian dari konektor yang saling berhubungan.

Berikut adalah Spesifikasi dari RS 232

Tabel 2.1 Spesifikasi RS 232

Spesifikasi RS 232

Operation Mode Single ended Total Driver and receiver

( On one Line )

1 driver 1 receiver Panjang Maksimum kabel 50 FT

Jumlah maksimum data 20 Kbps Nilai tegangan maksimum driver +/- 25V

(13)

Jarak tegangan penerima input +/- 15 V Sensivitas penerima input +/- 3 V Hambatan penerima input 3k to 7k

2.4 Relay

Relay adalah switch elektrik yang dapat membuka dan menutup dibawah kendali komponen elektronik yang lain. Switch yang sebenarnya hanya dapat dioperasikan dengan menggunakan elektromagnet untuk membuka dan menutup. Dalam relay terdapat 2 cara untuk menyalakan atau menjalankan relay, yaitu – Normally Open, pada cara ini ketika relay mendapat tegangan maka relay

akan menghubungkan semua rangkaian yang terhubung dengan relay. Dan akan terputus apabila relay tidak mendapatkan tegangan.

Normally Close, pada cara ini merupakan kebalikan dari Normally Open. Karena semua rangkaian yang terhubung dengan relay akan terputus apabila relay sedang mendapat tegangan, sedangkan rangkaian akan terhubung apabila relay sedang dalam keadaan tidak mendapatkan tegangan.

2.5 Sensor Cahaya (LDR)

LDR ( Ligth Dependent Resistor) adalah salah satu jenis resistor yang nilai hambatannya dipengaruhi oleh cahaya yang diterima olehnya. LDR dibuat dari Cadmium Sulfida yang peka terhadap cahaya. Seperti yang telah diketahui bahwa cahaya memiliki 2 sifat yang berbeda yaitu gelombang elektromagnetik dan foton / partikel energy (dualism cahaya).

(14)

2.5.1 Simbol LDR

Gambar 2.6 Simbol LDR

2.5.2 Cara kerja LDR

Saat cahaya menerangi LDR, foton akan menabrak ikatan Cadmium Sulfida dan melepaskan electron. Semakin besar intensitas yang cahaya yang datang, semakin banyak elektron yang terlepas dari ikatan. Sehingga hambatan LDR akan turun saat cahaya meneranginya.

LDR akan memiliki hambatan yang sangat besar saat tak ada cahaya yang mengenainya (gelap). Dalam kondisi ini hambatan LDR, mampu mencapai 1 M Ohm. Akan tetapi saat terkena cahaya atau sinar, hambatan LDR akan turun secara drastis hingga nilai beberapa puluh Ohm saja.

2.6 Visual Basic

Visual Basic adalah suatu bahasa pemrograman yang bersifat object oriented. Dibawah ini adalah jendela kerja Standar Visual Basic 6.0

(15)

Gambar 2.7 Jendela kerja Standar Visual Basic 6.0

Pada jendela Kerja terbagi dalam beberapa jendela yang lebih spesifik lagi, yaitu 1. Menu Bar

Gambar 2.8 Menu Bar 2. Toolbar

Gambar 2.9 Toolbar

Toolbar ini berisi ikon – ikon yang berfungsi mempersingkat perintah pada menubar.

(16)

Tabel 2.2 Fungsi ikon yang ada di Toolbar

No Nama Ikon No Nama Ikon

1 Add Project 13 Break

2 Add Form 14 End

3 Menu Editor 15 Project Explorer

4 Open File 16 Properties

5 Save 17 Form Layout

6 Cut 18 Object Browser

7 Copy 19 Toolbox

8 Paste 20 Data View Window

9 Find 21 Visual Component Manager

10 Undo 22 Posisi Awal Object (x,y)

11 Redo 23 Ukuran Object / Form aktif (lebar x tinggi)

12 Run Project

3. Tool Box

Gambar 2.10 Toolbox

Tool Box merupakan kumpulan kontrol yang banyak digunakan dalam pemrograman Visual Basic 6.0.

(17)

4. Jendela Project Explorer

Gambar 2.11 Jendela Project Explorer Jendela Project Explorer menunjukan project aktif.

5. Jendela Properties

Gambar 2.12 Jendela Properties Jendela ini digunakan untuk mengubah properties suatu object. 6. Jendela Form Layout

Gambar 2.13 Jendela Form Layout

Form ini digunakan untuk menentukan posisi suatu form yang akan diaktifkan saat program dijalankan.

(18)

Berikut ini adalah Operasi Dasar Pada Visual Basic

Menggunakan Command Button sebagai tombol. Contoh programnya yaitu :

Private Sub Command1_Click()

Form1.Caption = "Anda telah menekan tombol" End Sub

Maka tampilan kotak dialog windownya setelah command1 di-click akan sebagai berikut :

Gambar 2.14 Contoh penggunaan command button

Menggunakan timer sebagai pengatur waktu. Contoh programnya yaitu : Berikut gambar form-nya :

(19)

Gambar 2.15 Contoh form timer sebagai pengatur waktu

Koding pada timer1 : Dim a As Integer

Private Sub Timer1_Timer() a = a + 1

If a = 5 Then

Text1.Text = "batas waktu anda telah 5 detik" End If

End Sub

Sebelum menjalankan program timer diatas harus dipastikan terlebih dahulu interval timer1 diset 1000 yang berarti 1 detik. Maka saat dijalankan selama 5 detik hasil yang keluar pada kotak dialog window sebagai berikut :

Gambar 2.16 Hasil dari form timer sebagai pengatur Menggunakan massage box. Contoh programnya yaitu: Private Sub Command1_Click()

(20)

Form1.Caption = "Anda telah menekan tombol"

Msgbox “tombol telah ditekan”, vbExclamation, “pemberitahuan” End Sub

Gambar 2.17 Contoh dari penggunaan Message Box

Ketika command button ditekan maka akan muncul message box seperti ada pada gambar diatas.

Menggunakan shape untuk animasi led. Contoh programnya yaitu : Dim a As Integer

Private Sub Timer1_Timer() a = a + 1

If a = 5 Then

Form1.Caption = "setelah 5 detik" Shape1.BackColor = vbRed

(21)

End If End Sub

Gambar 2.18 Contoh dari penggunaan shape untuk animasi led

Gambar 2.19 Hasil dari shape setelah 5 detik

Pada gambar diatas dikatakan bahwa pada awalnya shape berwarna putih, tetapi setelah 5 detik warna pada shape akan berubah menjadi merah. Menampilkan waktu pada komputer. Contoh programnya yaitu : Private Sub Timer1_Timer()

(22)

Label1.Caption = TimeValue(Time)

Label2.Caption = Format(Now, "dd mmmm yyyy") End Sub

Gambar 2.20 Tampilan dari waktu dan tanggal komputer

Program diatas, akan menampilkan waktu dan tanggal yang ada pada komputer.

Gambar 2.21 Tampilan dari komponen Microsoft Comm Control

Gambar di atas adalah MsComm yang berguna untuk komunikasi program Visual Basic dengan modul sistem minimum melalui port serial pada komputer.

Koding Visual Basic Private Sub Form_Load()

(23)

'serial port 1 baudrate 9600 mode 1 MSComm1.CommPort = 1

MSComm1.Settings = "9600,n,8,1" If Not MSComm1.PortOpen Then MSComm1.PortOpen = True Else

MsgBox ("Port Serial Sedang Dipakai Oleh Program Lain...") End If

End Sub

Program ini adalah untuk open port serial pada komputer dengan baud rate 9600 kbps, jika port serial sedang dipakai maka program VB akan memberitahukan dengan memunculkan message box.

Gambar

Gambar 2.1 Lapangan Bulutangkis
Gambar 2.5 Memori program
Tabel 2.1 Spesifikasi RS 232
Gambar 2.7 Jendela kerja Standar Visual Basic 6.0
+7

Referensi

Dokumen terkait

Periksa pengaturan Perangkat lunak printer untuk memastikan Anda telah memilih jenis kertas yang sesuai dan kualitas cetak dari daftar gulung Media.. Periksa perkiraan level

Keuntungan (kerugian) dari perubahan nilai aset keuangan dalam kelompok tersedia untuk

MANAJEMEN LABA DAN RISIKO PASAR TERHADAP COST OF EQUITY CAPITAL (Studi Empiris pada Perusahaan Manufaktur yang Terdaftar di Bursa Efek Indonesia Periode

Tujuan dari penelitian ini adalah (1) untuk mendeskripsikan tentang respon siswa terhadap penerapan metode pembelajaran demonstrasi di kelas VIII SMP Negeri 9 Kota

Segala puji syukur penulis haturkan kepada Allah SWT yang senatiasa memberikan rahmat dan karunia-Nya, sehingga penulis dapat menyelesaikan Tugas Akhir yang

[r]

Suaka Alam Perairan Selat Pantar dan laut sekitarnya (SAP Selat Pantar) merupakan salah satu kawasan konservasi laut yang ditetapkan melalui Surat Keputusan Menteri Kelautan

Menurut peneliti perbedaan peningkatan respons perilaku adaptif penggunaan bidai infus bidai biasa kelompok kontrol dengan bidai infus bergambar kelompok perlakuan enam jam ke dua