Oleh : Hendawan Soebhakti, ST. Program Studi Teknik Elektro Politeknik Batam Juni 2007

Ukuran: px
Mulai penontonan dengan halaman:

Download "Oleh : Hendawan Soebhakti, ST. Program Studi Teknik Elektro Politeknik Batam Juni 2007"

Transkripsi

1 Oleh : Hendawan Soebhakti, ST Program Studi Teknik Elektro Politeknik Batam Juni 27

2 Pokok Bahasan Pendahuluan Arsitektur MCS-5 Operasi Pemindahan Data Operasi Logika Operasi Aritmatika Operasi Percabangan Operasi Timer/Counter Aplikasi Seven Segmen Aplikasi Motor Stepper Komunikasi Data Serial Operasi Interupsi 2

3 Pendahuluan Mengapa perlu mikroprosesor/mikrokontroler? Mikroprosesor adalah inti dari sistem komputer Pada saat ini banyak perangkat elektronika yang dikendalikan oleh mikroprosesor/mikrokontroler Dengan mikroprosesor/mikrokontroler penggunaan komponen dapat dikurangi sehingga biaya produksi dapat dikurangi. 3

4 Pendahuluan Mikroprosesor : CPU (Central Processing Unit) Tidak terdapat RAM, ROM, I/O pada chip CPU Contoh : Intel s x86, Motorola s 68x CPU Data Bus Banyak chip pada mother s board Microprocessor RAM ROM I/O Port Timer Serial COM Port Address Bus Microprocessor System 4

5 Pendahuluan Mikrokontroler : Mini komputer CPU, RAM, ROM dan Port I/O dalam satu chip Contoh : Motorola s 68, Intel s 85, Zilog s Z8 and PIC 6X CPU RAM ROM I/O Port Timer Serial COM Port Microcontroller A single chip 5

6 Pendahuluan Mikroprosesor vs Mikrokontroler Mikroposesor CPU berdiri sendiri, RAM, ROM, I/O dan timer terpisah dalam chip yang berbeda. Desainer dapat memilih besarnya kapasitas RAM, ROM dan jumlah port I/O. Mikrokontroler CPU, RAM, ROM, I/O dan timer menjadi satu pada sebuah chip. Besarnya kapasitas ROM, RAM dan Port I/O sudah ditentukan sesuai tipe mikrokontroler. 6

7 Arsitektur MCS-5 Diagram Blok 89S5 Peta Memori Internal 89S5 Konfigurasi pin AT89S5 Osilator dan Clock Organisasi RAM Internal Special Function Register 7

8 Arsitektur MCS-5 Diagram Blok 89S5 External interrupts Interrupt Control On-chip ROM for program code On-chip RAM Timer/Counter Timer Timer Counter Inputs CPU OSC Bus Control 4 I/O Ports Serial Port P P P2 P3 TxD RxD Address/Data 8

9 Arsitektur MCS-5 9

10 Arsitektur MCS-5 Memori Internal 89S5 Memori internal 89S5 terdiri dari 3 bagian yaitu ROM, RAM dan SFR ROM / Read Only Memory adalah memori tempat menyimpan program / source code. Sifat ROM adalah non-volatile, data / program tidak akan hilang walaupun tegangan supply tidak ada. Kapasitas ROM tergantung dari tipe mikrokontroler. Untuk AT89S5 kapasitas ROM adalah 4 KByte. ROM pada AT89S5 menempati address s/d FFF. RAM / Random Access Memory adalah memori tempat menyimpan data sementara. Sifat RAM adalah volatile, data akan hilang jika tegangan supply tidak ada. Kapasitas RAM tergantung pada tipe mikrokontroler. Pada AT89S5 RAM dibagi menjadi 2 yaitu : LOWER 28 byte yang menempati address s/d 7F. RAM ini dapat diakses dengan pengalamatan langsung (direct) maupun tak langsung (indirect) Contoh : Direct -> mov 3h,#2 ; Pindahkan data 2 ke RAM pada address 3h Indirect -> mov R,#3h ; Isi Register dengan 3h ; Pindahkan data 2 ke RAM pada address sesuai isi R UPPER 28 byte yang menempati address 8 s/d FF. Address ini sama dengan address SFR meski secara fisik benar-benar berbeda. RAM ini hanya dapat diakses dengan pengalamatan tak langsung saja. SFR / Special Function Register adalah register dengan fungsi tertentu. Misalnya, register TMOD dan TCON adalah timer control register yang berfungsi mengatur fasilitas timer mikrokontroler. SFR pada AT89S5 menempati address 8 s/d FF.

11 FFF Arsitektur MCS-5 Peta memori internal 89S5 FF UPPER 28 byte 8 7F RAM Diakses dengan pengalamatan tak langsung saja (Indirect addressing) RAM SFR Diakses dengan pengalamatan langsung (Direct addressing) FF 8 4K Byte ROM LOWER 28 byte Diakses dengan pengalamatan langsung & tak langsung (Direct & Indirect addressing) Catatan : Gambar diatas adalah peta memori internal 89S5 yang terdiri dari RAM, SFR dan ROM. Tampak bahwa ada kesamaan address antara RAM, SFR dan ROM yaitu pada address s/d FF. Atas pertimbangan inilah maka biasanya source code ditulis setelah address FF yaitu pada ROM Hal ini dimaksudkan agar data RAM dan SFR tidak terisi oleh byte source code.

12 Arsitektur MCS-5 Konfigurasi pin AT89S5 P. P. P.2 P.3 P.4 (MOSI) P.5 (MISO) P.6 (SCK) P.7 RST (RXD)P3. (TXD)P3. (INT)P3.2 (INT)P3.3 (T)P3.4 (T)P3.5 (WR)P3.6 (RD)P3.7 XTAL2 XTAL GND S Vcc P.(AD) P.(AD) P.2(AD2) P.3(AD3) P.4(AD4) P.5(AD5) P.6(AD6) P.7(AD7) EA/VPP ALE/PROG PSEN P2.7(A5) P2.6(A4) P2.5(A3) P2.4(A2) P2.3(A) P2.2(A) P2.(A9) P2.(A8) 2

13 Arsitektur MCS-5 VCC GND Port Port Port 2 Port 3 Tegangan supply +5V Ground Port merupakan port paralel 8 bit dua arah (bi-directional) yang dapat digunakan untuk berbagai keperluan. Port juga memultipleks alamat dan data jika digunakan untuk mengakses memori eksternal Port merupakan port paralel 8 bit bi-directional dengan internal pull-up. Port juga digunakan dalam proses pemrograman (In System Programming) P.5 MOSI P.6 MISO P.7 SCK Port 2 merupakan port paralel 8 bit bi-directional dengan internal pull-up. Port 2 akan mengirim byte alamat jika digunakan untuk mengakses memori eksternal Port 3 merupakan port paralel 8 bit bi-directional dengan internal pull-up. Port 3 juga bisa difungsikan untuk keperluan khusus yaitu : P3. RXD(Receive Data) P3. TXD(Transmit Data) P3.2 INT(Interrupt ) P3.3 INT(Interrupt ) P3.4 T(Timer ) P3.5 T(Timer ) P3.6 WR(Write Strobe) P3.7 RD(Read Strobe) 3

14 Arsitektur MCS-5 RST Pulsa dari low ke high akan mereset mikrokontroler ALE/PROG PSEN EA/VPP Address Latch Enable, digunakan untuk menahan alamat memori eksternal selama pelaksanaan instruksi Program Store Enable, merupakan sinyal kendali yang memperbolehkan program memori eksternal masuk ke dalam bus selama proses pengambilan instruksi Jika EA= maka mikrokontroler akan melaksanakan instruksi dari ROM internal Jika EA= maka mikrokontroler akan melaksanakan instruksi dari ROM eksternal XTAL Input ke rangkaian osilator internal XTAL2 Output dari rangkaian osilator internal 4

15 Arsitektur MCS-5 Osilator dan Clock Agar dapat mengeksekusi program, mikrokontroler membutuhkan pulsa clock. Pulsa ini dapat dihasilkan dengan memasang rangkaian resonator pada pin XTAL dan XTAL2. Frekuensi kerja maksimum 89S5 adalah 33 MHz. Gambar disamping adalah contoh rangkaian osilator yang bisa digunakan pada mikrokontroler. Komponen utamanya adalah quartz crystal yang dihubungkan dengan kapasitor. Nilai kapasitornya biasanya 33pF. Rangkaian Clock Dalam mikrokontroler dikenal istilah Machine Cycle (MC) / Siklus Mesin, dimana : MC = 6 state = 2 periode clock Jika frekuensi crystal yang digunakan adalah 2 MHz maka MC = 2/frekuensi crystal = 2/2 MHz =us P P2 P P2 P P2 P P2 P P2 P P2 Oscillator Frequency State State 2 State 3 State 4 State 5 State 6 Machine Cycle d 5

16 Arsitektur MCS-5 Waktu Eksekusi Instruksi Waktu eksekusi sebuah instruksi oleh mikrokontroler tergantung dari jenis instruksi dan frekuensi clock yang digunakan. Setiap instruksi memiliki panjang byte dan jumlah siklus yang berbeda. Byte instruksi (Byte) menandakan jumlah lokasi memori yang dipakai Siklus instruksi (Cycle) menandakan jumlah machine cycle yang dibutuhkan. Waktu eksekusi dapat dihitung dengan rumus : Tinst = C 2 frekuensi crystal Dimana : Tinst : Waktu yang dibutuhkan untuk mengeksekusi instruksi (Secon) C : Jumlah machine cycle Contoh : Diketahui sebuah mikrokontroler dengan frekuensi crystal 2 MHz. Berapakah waktu yang diperlukan untuk mengeksekusi perintah berikut ini? Mov A,#3h Jawab : Dari lembaran data 85 Operational Code Mnemonics diketahui bahwa instruksi dengan format Mov A,#n adalah instruksi dengan Byte = dan Cycle = Maka : Tinst = (x2)/2mhz=us 6

17 Arsitektur MCS-5 Beberapa contoh Operational Code Mnemonics (Opcode) MNEMONICS BYTE CYCLE ADD A,Rr ADD A,add 2 ADD A,@Rp ADD A,#n 2 DEC A DEC Rr DEC add 2 DIV AB 4 INC A INC Rr INC add 2 INC DPTR 2 MUL AB 4 SUBB A,Rr SUBB A,add 2 SUBB A,@Rp SUBB A,#n 2 CLR A NOP RL A RR A SWAP A MOV A,#n 2 MOV Rr,A MOV add,rr 2 2 MNEMONICS BYTE CYCLE MOV add,#n 3 2 MOV add,@rp MOV DPTR,#nn 3 2 CJNE A,#n,radd 3 2 DJNZ Rr.radd 2 2 DJNZ add,radd 3 2 ACALL sadd 2 2 LCALL ladd 3 2 SJMP radd 2 2 AJMP sadd 2 2 LJMP ladd 3 2 JB b,radd 3 2 JZ radd 2 2 JNZ radd 2 2 RET 2 RETI 2 SETB b 2 ANL A,Rr ANL A,add 2 ANL A,@Rp ORL A,Rr ORL A,add 2 ORL A,@Rp 7

18 Arsitektur MCS-5 Rangkaian Minimum Sistem Agar mikrokontroler dapat bekerja maka diperlukan komponen tambahan berupa rangkaian reset dan clock. Mengapa perlu reset? Saat power dinyalakan, instruksi yang pertamakali dieksekusi oleh mikrokontroler adalah instruksi yang tersimpan pada address h. Agar Program Counter (PC) dapat menunjuk address h pada saat awal maka mikrokontroler perlu di-reset. Caranya adalah dengan memberikan pulsa high pada pin Reset selama minimal 2 machine cycle ( jika f crystal = 2 MHz maka 2MC = 2uS). Setelah itu baru diberikan pulsa low. Kondisi ini dapat dipenuhi dengan memasang rangkaian RC yang akan mensuplai tegangan Vcc ke pin 9 selama kapasitor mengisi muatan / charging. Konstanta waktu pengisian dapat dihitung dengan mengalikan nilai R dan C. Pada rangkaian dibawah adalah : T=R.C = (8K2).(uF) = 82mS. Setelah kapasitor terisi, maka pin 9 akan low. R2 5K +5V +5V C3 uf/6v R 8K2 9 RESET VCC 4 EA 3 Tombol push button dipasang agar pada saat running Mikrokontroler dapat juga di-reset. Pin EA / External Access harus dihubungkan ke +5V agar mikrokontroler dapat mengambil byte instruksi dari ROM internal mikrokontroler. C 33pF 8 XTAL2 AT89S5 2 MHz 9 XTAL 8 C2 33pF 2 GND

19 Byte address Bit address Arsitektur MCS-5 Organisasi RAM Internal 7F General purpose RAM 9 RAM (Random Access Memory) internal AT89S5 berfungsi untuk menyimpan data sementara. Data akan tetap disimpan selama ada supply tegangan ke mikrokontroler. Pada AT89S5, RAM dibagi menjadi 3 bagian yaitu : Register serba guna Terdiri dari Bank, Bank, Bank 2, Bank 3. Tiap bank register terdiri dari 8 register 8 bit yaitu R, R,..,R7 Pemilihan bank register ditentukan pada register PSW Rentang address : s/d F Bit addressable RAM Adalah RAM yang dapat diakses per bit. Ini diperlukan pada saat kita ingin menyimpan data yang panjangnya hanya bit. Setiap bit pada lokasi RAM ini memiliki address sendiri-sendiri seperti terlihat pada gambar. Rentang address : 2 s/d 2F General purpose RAM Adalah RAM yang dapat diakses per byte. Ini diperlukan pada saat kita ingin menyimpan data yang panjangnya 8 bit. Rentang address : 3 s/d 7F Bit addressable locations 3 2F 2E 2D 2C 2B 2A F 8 7 F 8 7 7F 7E 7D 7C 7B 7A F 6E 6D 6C 6B 6A F 5E 5D 5C 5B 5A F 4E 4D 4C 4B 4A F 3E 3D 3C 3B 3A F 2E 2D 2C 2B 2A F E D C B A F E D C B A Bank 3 Bank 2 Bank Bank (default register R-R7) RAM

20 Arsitektur MCS-5 Register PSW CY AC F RS RS OV - P PSW / Program Status Word Special Function Register Bit Symbol Fuction 7 CY Carry flag. Digunakan dalam instruksi aritmatika, JUMP, ROTATE dan BOOLEAN. 6 AC Auxilliary carry flag. Digunakan untuk aritmatika BCD. 5 F User flag. 4 RS Register bank select bit. 3 RS Register bank select bit. RS RS Select register bank Select register bank Select register bank 2 Select register bank 3 2 OV Over flow flag. Digunakan dalam instruksi aritmatika. - Tidak digunakan. P Parity flag. Menunjukkan parity register A. = Odd parity 2 Bit addressable as PSW. to PSW.7

21 Arsitektur MCS-5 Special Function Register 2

22 Arsitektur MCS-5 Simbol Nama Alamat ACC B PSW SP DPTR DPTR P P P2 P3 IP IE TMOD TCON Akumulator B register Program Status Word Stack Pointer Data Pointer 6 bit DPL Byte rendah DPH Byte tinggi Data Pointer 6 bit DPL Byte rendah DPH Byte tinggi Port Port Port 2 Port 3 Interrupt Priority Control Interrupt Enable Control Timer/Counter Mode Control Timer/Counter Control EH FH DH 8H 82H 83H 84H 85H 8H 9H AH BH B8H A8H 89H 88H 22

23 Arsitektur MCS-5 Simbol Nama Alamat TH TL TH TL SCON SBUF PCON WDTRST AUXR Timer/Counter High Byte Timer/Counter Low Byte Timer/Counter High Byte Timer/Counter Low Byte Serial Control Serial Data Buffer Power Control Watchdog Timer Reset Auxiliary Register 8CH 8AH 8DH 8BH 98H 99H 87H A6H 8EH 23

24 Operasi Pemindahan Data Immediate Addressing Mode Register Addressing mode Direct Addressing Mode Indirect Addressing Mode 24

25 Operasi Pemindahan Data Immediate Addressing Mode Sumber Source REGISTER (R) DATA Immediate Addressing Mode Immediate Addressing : Data langsung dipindahkan ke register Contoh : MOV A,#3h ; Copy the immediate data 3h to A register MOV R,#B ; Copy the immediate data 3h to R register MOV DPTR,#48 ; Copy the immediate data 3h to DPTR register Catatan : 3hexa = biner = 48desimal 25

26 Operasi Pemindahan Data Register Addressing mode REGISTER Sumber Source (Register A) Tujuan Destination REGISTER (R) data Register Addressing Mode Register Addressing : Data dari register sumber dipindahkan ke register tujuan Contoh : MOV R,A ; Copy data from A register to R register MOV A,R7 ; Copy data from R7register to A register 26

27 Operasi Pemindahan Data Direct Addressing Mode REGISTER/RAM/SFR Sumber Source (Register A) Tujuan Destination REGISTER/RAM/SFR Address 8CH data 27 Direct Addressing Mode Register Addressing : Data dari register/ram/sfr sumber dipindahkan ke register/ram/sfr tujuan Contoh : MOV A,8h ; Copy data from port pins to A register MOV 8h,A ; Copy data from A register to the port MOV 3Ah,#3Ah ; Copy immediate data 3Ah to RAM location 3Ah MOV R,2h ; Copy data from RAM location 2h to R register MOV 8Ch,R7 ; Copy data from R7 register to SFR timer high byte MOV 5Ch,A ; Copy data from A register to RAM location 5Ch MOV A8h,77h ; Copy data from RAM location 77h to IE register

28 Operasi Pemindahan Data Indirect Addressing Mode Sumber Source REGISTER/RAM/SFR (Register A) Register R or R OR DATA 2 Sumber Source RAM Address 7Fh Register R or R 2 address 7Fh Destination ADDRESS 7Fh R or R address 7Fh data Source ADDRESS 7Fh R or R data RAM REGISTER/RAM/SFR Tujuan Destination Address 7Fh Tujuan Destination Address 7Fh R atau R digunakan untuk menunjukkan Destination Address ; Copy immediate data 3h to the address in R ; Copy the content of address 3h to the address in R ; Copy the data in A to the address in R 28 R atau R digunakan untuk menunjukkan Source Address MOV 7Fh,@R ; Copy the content of the address in R to address 7Fh MOV A,@R ; Copy the content of the address in R to A

29 Operasi Pemindahan Data Latihan. Pindahkan data 34h ke R5, R6 dan R7 menggunakan immediate addressing mode. 2. Pindahkan data 35h ke register A kemudian copy data tersebut ke tiap register R5, R6 dan R7 menggunakan register addressing mode. 3. Pindahkan data 36h ke register R5, kemudian copy data tersebut ke tiap register R6 dan R7 menggunakan direct addressing mode. 29

30 Operasi Logika Logika Boolean Operasi Rotate & Swap 3

31 Operasi Logika Logika Boolean BOOLEAN OPERATOR 85 MNEMONIC AND ANL (AND logical) OR ORL (OR logical) NOT CPL (Complement) XOR XRL (Exclusive OR logical) AND OR XOR NOT A B F A B F A B F A /A Contoh : ANL Contoh : Contoh : ORL XRL Contoh : CPL 3

32 Operasi Logika Operasi Rotate & Swap RL RR RLC RRC SWAP Rotate Left : Geser isi register ke kiri satu bit. Rotate Right : Geser isi register ke kanan satu bit. Rotate Left and Carry : Geser isi register dan carry flag ke kiri satu bit. Rotate Right and Carry : Geser isi register dan carry flag ke kanan satu bit. Swap : Saling tukarkan nibble register, low nibble menjadi high nibble, dan sebaliknya C RL A Carry flag RLC A C RR A RRC A Carry flag HIGH NIBBLE LOW NIBBLE SWAP A 32

33 Operasi Logika Contoh. Logika Boolean : MOV A,#FFh ; A = FFh MOV R,#77h ; R = 77h ANL A,R ; A = 77h MOV 5h,A ; 5h = 77h CPL A ; A = 88h ORL 5h,#88h ; 5h = FFh XRL A,5h ; A = 77h XRL A,R ; A = h ANL A,5h ; A = h ORL A,R ; A = 77h CLR A ; A = h XRL 5h,A ; 5h = FFh XRL A,R ; A = 77h Contoh 2. Rotate & Swap : MOV A,#A5h ; A = b = A5h RR A ; A = b = D2h RR A ; A = b = 69h RR A ; A = b = B4h RR A ; A = b = 5Ah SWAP A ; A = b = A5h CLR C ; C =, A =b = A5h RRC A ; C =, A = b = 52h RRC A ; C =, A = b = A9h RL A ; A = b = 53h RL A ; A = b = A6h SWAP A ; C =, A = b = 6Ah RLC A ; C =, A = b = D4h RLC A ; C =, A = b = A8h SWAP A ; C =, A = b = 8Ah 33

34 Operasi Aritmatika Increment & Decrement Penjumlahan Pengurangan Perkalian Pembagian 34

35 Operasi Aritmatika Increment & Decrement Increment Decrement : Tambah satu isi register : Turunkan satu isi register Mnemonic Operation INC A Tambah satu isi register A INC Rr Tambah satu isi register Rr INC add Tambah satu isi direct address Tambah satu isi address dalam Rp INC DPTR Tambah satu isi register 6 bit DPTR DEC A Kurangi satu isi register A DEC Rr Kurangi satu isi register Rr DEC add Kurangi satu isi dirrect address Kurangi satu isi address dalam Rp 35 Contoh MOV A,#3Ah ; A = 3Ah DEC A ; A = 39h MOV R,#5h ; R = 5h MOV 5h,#2h ; Internal RAM 5h = 2h ; Internal RAM 5h = 3h DEC 5h ; Internal RAM 5h = 2h INC R ; R = 6h MOV 6h,A ; Internal RAM 6h = 39h ; Internal RAM 6h = 3Ah MOV DPTR,#2FFh ; DPTR = 2FFh INC DPTR ; DPTR = 3h DEC 83h ; DPTR = 2h(SFR 83h adalah byte DPH

36 Operasi Aritmatika Penjumlahan Mnemonic Operation ADD A,#n Tambahkan A dengan angka n, simpan hasilnya di A ADD A,Rr Tambahkan A dengan register Rr, simpan hasilnya di A ADD A,add Tambahkan A dengan isi address, simpan hasilnya di A ADD A,@Rp Tambahkan A dengan isi address dalam Rp, simpan hasilnya di A ADDC A,#n Tambahkan A, angka n dan Carry, simpan hasilnya di A. ADDC A,Rr Tambahkan A, isi register Rr dan Carry, simpan hasilnya di A. ADDC A,add Tambahkan A, isi address dan Carry, simpan hasilnya di A. ADDC A,@Rp Tambahkan A, isi address dalam Rp dan Carry, simpan hasilnya di A. Catatan : Carry flag (C) akan jika terdapat carry pada bit ke-7. Auxilliary Carry flag (AC) akan jika terdapat carry pada bit ke-3. Over Flow flag (OV) akan jika terdapat carry pada bit ke-7, tapi tidak terdapat carry pada bit ke-6 atau terdapat carry pada bit ke-6 tetapi tidak pada bit ke-7, dimana dapat dieksperikan dengan operasi logika sbb : Penjumlahan tak bertanda dan bertanda Unsigned and Signed Addition OV = C7 XOR C6 Unsigned number : s/d 255d atau b s/d b Signed number : -28d s/d +27d atau b s/d b 36 Penjumlahan unsigned number dapat menghasilkan carry flag jika hasil penjumlahan melebihi FFh, atau borrow flag jika angka pengurang lebih besar dari yang dikurangi.

37 Operasi Aritmatika Penjumlahan Tak Bertanda / Unsigned Addition Carry flag dapat digunakan untuk mendeteksi hasil penjumlahan yang melebihi FFh. Jika carry = setelah penjumlahan, maka carry tersebut dapat ditambahkan ke high byte sehingga hasil penjumlahan tidak hilang. Misalnya : 95d = b 89d = b 284d b C= dapat ditambahkan ke byte berikutnya (high byte) Penjumlahan Bertanda / Signed Addition Hasil penjumlahan bertanda tidak boleh melebihi -28d atau +27d. Aturan ini tidak menjadi masalah ketika angka yang dijumlahkan positif dan negatif, misalnya : - d = b +27d = b +26d = b = + 26d Dari penjumlahan diatas terdapat carry dari bit ke-7, maka C=. Pada bit ke-6 juga terdapat carry, maka OV=. Pada penjumlahan ini tidak perlu manipulasi apapun karena hasil penjumlahannya sudah benar. Jika kedua angka yang dijumlahkan adalah positif, maka ada kemungkinan hasil penjumlahan melebihi +27d, misalnya : +d = b +5d = b +5d = b = - 6d 37 Ada kelebihan 22d dari batas +27d. Tidak ada carry dari bit ke-7, maka C=, ada carry dari bit ke-6, maka OV=.

38 Operasi Aritmatika Contoh penjumlahan dua angka positif yang tidak melebihi +27d adalah : +45d = b +75d = b +2d = b = + 2d Dari penjumlahan diatas tidak terdapat carry dari bit ke-7 maupun bit ke-6, maka C= dan OV=. Penjumlahan dua angka negatif yang tidak melebihi -28d adalah sbb : - 3d = b -5d = b - 8d = b = - 8d Terdapat carry dari bit ke-7, maka C=, ada carry dari bit ke-6, maka OV=. Penjumlahan dua angka negatif yang hasilnya melebihi -28d adalah sbb : - 7d = b -7d = b - 4d = b = +6d (Komplemen 6d = 39d) Ada kelebihan -2d. Ada carry dari bit ke-7, maka C=, tidak ada carry dari bit ke-6, maka OV=. Dari semua contoh diatas, manipulasi program perlu dilakukan sbb : 38 FLAGS ACTION C OV None Complement the sign None Complement the sign

39 Operasi Aritmatika Pengurangan Mnemonic Operation SUBB A,#n Kurangi A dengan angka n dan C flag, simpan hasilnya di A SUBB A,Rr Kurangi A dengan register Rr dan C flag, simpan hasilnya di A SUBB A,add Kurangi A dengan isi address dan C flag, simpan hasilnya di A SUBB A,@Rp Kurangi A dengan isi address dalam Rp dan C flag, simpan hasilnya di A Catatan : Carry flag (C) akan jika terdapat borrow pada bit ke-7. Auxilliary Carry flag (AC) akan jika terdapat borrow pada bit ke-3. Over Flow flag (OV) akan jika terdapat borrow pada bit ke-7, tapi tidak terdapat borrow pada bit ke-6 atau terdapat borrow pada bit ke-6 tetapi tidak pada bit ke-7, dimana dapat dieksperikan dengan operasi logika sbb : Pengurangan tak bertanda dan bertanda Unsigned and Signed Substraction OV = C7 XOR C6 Unsigned number : Positif 255d (C=, A=FFh) s/d Negatif 255d (C=, A=h) Signed number : -28d s/d +27d atau b s/d b Oleh karena carry flag selalu disertakan dalam pengurangan, maka carry flag harus di set agar tidak mempengaruhi pengurangan. Pengurangan unsigned number dapat menghasilkan borrow jika angka pengurang lebih besar dari yang dikurangi. 39

40 Operasi Aritmatika Pengurangan Tak Bertanda / Unsigned Substraction Berikut adalah contoh pengurangan dimana pengurang lebih besar dari yang dikurangi : 5d = b SUBB d = b - 85d b = 7d C= dan OV=. Komplemen 7d adalah 85d Contoh lain : d SUBB 5d 85d = b = b b = 85d C= dan OV=. Hasilnya sudah benar, jadi tidak perlu dikomplemenkan. Pengurangan Bertanda / Signed Substraction Hasil pengurangan bertanda tidak boleh melebihi -28d atau +27d. Contoh : +d = b (Carry flag = sebelum SUBB) SUBB +26d = b - 26d b = - 26d Dari pengurangan diatas terdapat borrow dari bit ke-7 dan ke-6, maka C= dan OV=.Pada pengurangan ini tidak perlu manipulasi apapun karena hasil pengurangannya sudah benar. 4

41 Operasi Aritmatika Contoh 2: - 6d = b (Carry flag = sebelum SUBB) SUBB - 6d = b +55d b = +55d Tidak ada borrow dari bit ke-7 atau bit ke-6, maka C= dan OV=. Contoh 3 : - 99d = b (Carry flag = sebelum SUBB) SUBB +d = b - 99d b = +57d (Komplemen 57d = 98d) Tidak ada borrow dari bit ke-7 tapi ada borrow dari bit ke-6, maka C= dan OV=. Hasilnya perlu dimanipulasi. Contoh 4 : +87d = b (Carry flag = sebelum SUBB) SUBB - 52d = b +39d b = -7d (Komplemen 7d = 38d) Ada borrow dari bit ke-7 dan tidak ada borrow dari bit ke-6, maka C= dan OV=. Hasilnya perlu dimanipulasi. Catatan : Jika OV= maka komplemenkan hasilnya. 4

42 Operasi Aritmatika Perkalian Mnemonic Operation MUL AB Kalikan isi A dengan isi B, simpan lower byte di A dan high byte di B. Catatan : Over Flow flag (OV) akan jika A X B > FFh. Carry flag (C) selalu. Nilai maksimum hasil perkalian antara A dan B adalah FEh, jika A dan B berisi FFh. Contoh : MOV A,#7Bh ; A=7Bh MOV B,#2h ; B=2h MUL AB ; A=F6h dan B=h; OV= MOV A,#FEh ; A=FEh MUL AB ; A=h dan B=h; OV= 42

43 Operasi Aritmatika Pembagian Mnemonic Operation DIV AB Bagi isi A dengan isi B, simpan hasilnya di A dan simpan sisanya di B. Catatan : Over Flow flag (OV) akan jika terjadi pembagian dengan. Carry flag (C) selalu. Contoh : MOV A,#FFh ; A=FFh MOV B,#2Ch ; B=2Ch DIV AB ; A=5h dan B=23h DIV AB ; A=h dan B=5h DIV AB ; A=h dan B=h DIV AB ; A=?? Dan B=??, OV= 43

44 Operasi Percabangan Rentang Percabangan Jump Call & Subrutin 44

45 Memory Address (HEX) FFFF LADD Limit Operasi Percabangan Rentang Percabangan Next Page PC + 27d PC PC - 28d SADD Limit Relative Limit Next Opcode Jump Opcode Relative Limit JC JNC JB JNB JBC CJNE DJNZ JZ JNZ SJMP Bit Jumps Byte Jumps AJMP LJMP Note : page = 2 KByte This Page SADD Limit 45 LADD Limit

46 Operasi Percabangan Jump Instruksi JUMP digunakan untuk melompat ke instruksi tertentu. Bit Jump Mnemonic Operation JC radd Jump relative if the carry flag is set to JNC radd Jump relative if the carry flag is clear to JB b,radd Jump relative if addressable bit is set to JNB b,radd Jump relative if addressable bit is clear to JBC b,radd Jump relative if addressable bit is set, and clear the addressable bit to 46 Byte Jump Mnemonic Operation CJNE A,add,radd Compare content of A register with the content of the direct address, if not equal jump to relative address, C= if A< add, C= if others. CJNE A,#n,radd Compare content of A register with immediate number n, if not equal jump to relative address, C= if A< n, C= if others. CJNE Rn,#n,radd Compare content of Rn register with immediate number n, if not equal jump to relative address, C= if Rn< n, C= if others. Compare the content of address contained in register Rp to the number n, if not equal then jump to relative address, C= if content of Rn< n, C= if others. DJNZ Rn,radd Decrement register Rn by and jump to relative address if the result is not zero, no flag affected. DJNZ add,radd Decrement the dirrect address by and jump to relative address if the result is not zero, no flag affected. JZ radd Jump to the relative address if A is. JNZ radd Jump to the relative address if A is not.

47 Operasi Percabangan Unconditional Jump Mnemonic Operation Jump to address formed by adding A to the DPTR. AJMP sadd Jump to absolute short range address sadd. LJMP ladd Jump to absolute long range address ladd. SJMP radd Jump to absolute relative address radd. NOP No operation. Do nothing and go to the next instruction. 47

48 Operasi Percabangan Contoh. Bit Jump $MOD5 ORG H LJMP MULAI ORG H MULAI: MOV A,#H MOV R,A ADDA: ADD A,R JNC ADDA ; MOV A,#H ADDR: ADD A,R JNB CY,ADDR JBC CY,MULAI SJMP MULAI END Contoh 2. Byte Jump $MOD5 ORG H LJMP BGN ORG H BGN: MOV A,#3H MOV 5H,#H AGN: CJNE A,5H,AEQ SJMP NXT AEQ: DJNZ 5H,AGN NOP NXT: MOV R,#FFH DWN: DJNZ R,DWN MOV A,R JNZ ABIG JZ AZR ABIG: NOP ; ORG 6H AZR: MOV A,#8H MOV DPTR,#H NOP NOP HERE: AJMP AZR END 48

49 Operasi Percabangan Call & Subrutin Instruksi CALL digunakan untuk memanggil sub rutin tertentu. Mnemonic Operation ACALL label Absolute Call the subroutine named label. LCALL label Long Call the subroutine named label. RET Return from subroutine. Contoh $MOD5 ORG H LJMP MULAI ORG H MULAI: MOV P,#FFH CALL DELAY MOV P,#H CALL DELAY SJMP MULAI ; DELAY: MOV R,#5H DL: MOV R,#FH DL: DJNZ R,DL DJNZ R,DL RET END 49

50 Operasi Timer / Counter Register TCON Register TMOD Timer/Counter Interrupt Mode Operasi Timer Menggunakan Counter 5

51 Operasi Timer/Counter Timer sangat diperlukan untuk membuat delay/tundaan waktu. AT89S5 menyediakan fasilitas timer 6 bit sebanyak 2 buah yaitu Timer dan Timer 2. Timer ini juga bisa di fungsikan sebagai counter/pencacah. Timer bekerja dengan cara menghitung pulsa clock internal mikrokontroler yang dihasilkan dari rangkaian osilator. Jumlah pulsa clock akan dibandingkan dengan sebuah nilai yang terdapat dalam register timer (TH dan TL). Jika jumlah pulsa clock sama dengan nilai timer, maka sebuah interrupt akan terjadi (ditandai oleh flag TF). Interrupt ini dapat dipantau oleh program sebagai tanda bahwa timer telah overflow. Counter bekerja dengan cara menghitung pulsa eksternal pada P3.4 (T) dan P3.5 (T). Jumlah pulsa ini akan disimpan dalam register timer (TH dan TL). Timer/Counter Control Logic Oscillator Frequency : 2d Timer C/T = (TMOD Timer Operaton) T/ Input Pin Counter C/T = (TMOD Counter Operaton) Pulse Output To Timer Stage TR/ Bit in TCON Gate Bit in TMOD INT/ Input Pin 5 Timer akan menghitung pulsa clock dari osilator yang sebelumnya telah dibagi 2. Agar berfungsi sebagai timer maka : Bit C/T dalam TMOD harus (timer operation) Bit TRx dalam TCON harus (timer run) Bit Gate dalam TMOD harus atau pin INTx harus. Counter menghitung pulsa dari pin input T dan T. Agar berfungsi sebagai counter maka : Bit C/T dalam TMOD harus (counter operation). Bit TRx dalam TCON harus (timer run) Bit Gate dalam TMOD harus atau pin INTx harus.

52 Operasi Timer/Counter Register TCON TF TR TF TR IE IT IE IT TCON / Timer Control Special Function Register Bit Symbol Fuction 7 TF Timer overflow flag. Set saat timer berubah dari satu ke nol. Clear saat prosesor mengeksekusi interrupt service routine pada address Bh. 6 TR Timer run control bit. Set oleh program agar timer mulai menghitung. Clear oleh program untuk menghentikan timer, bukan me-reset timer. 5 TF Timer overflow flag. Set saat timer berubah dari satu ke nol. Clear saat prosesor mengeksekusi interrupt service routine pada address Bh. 4 TR Timer run control bit. Set oleh program agar timer mulai menghitung. Clear oleh program untuk menghentikan timer, bukan me-reset timer. 3 IE External interrupt edge flag. Set pada saat transisi sinyal high ke low diterima oleh port3 pin 3.3 (INT). Clear saat prosesor mengeksekusi interrupt service routine pada address 3h.Tidak terkait dengan operasi timer. 2 IT External interrupt signal type control bit. Set oleh program untuk mengaktifkan external interrupt yang dipicu oleh sisi turun sinyal (falling edge/transisi high ke low). Clear oleh program untuk mengaktifkan sinyal low pada external interrupt untuk menghasilkan sebuah interrupt. IE External interrupt edge flag. Set pada saat transisi sinyal high ke low diterima oleh port3 pin 3.2 (INT). Clear saat prosesor mengeksekusi interrupt service routine pada address 3h.Tidak terkait dengan operasi timer. 52 IT External interrupt signal type control bit. Set oleh program untuk mengaktifkan external interrupt yang dipicu oleh sisi turun sinyal (falling edge/transisi high ke low). Clear oleh program untuk mengaktifkan sinyal low pada external interrupt untuk menghasilkan sebuah interrupt. TCON is bit addressable as TCON. to TCON.7

53 Operasi Timer/Counter Register TMOD Gate C/T M M Gate C/T M M [ Timer ] [ Timer ] TMOD / Timer Mode Special Function Register Bit Symbol Fuction 7/3 Gate OR gate enable bit. Mengendalikan RUN/STOP timer /. Set oleh program untuk mengaktifkan timer (RUN) jika bit TR/ pada TCON= dan sinyal pada pin INT/ high. Clear oleh program untuk mengaktifkan timer (RUN) jika bit TR/ pada TCON=. 6/2 C/T Set oleh program untuk membuat timer / berfungsi sebagai counter yang akan menghitung pulsa eksternal pada pin 3.5 (T) atau 3.4 (T). Clear oleh program untuk membuat timer / berfungsi sebagai timer yang akan menghitung pulsa clock internal. 5/ M Timer/counter operating mode select bit. Set/clear oleh program untuk memilih mode. 4/ M Timer/counter operating mode select bit. Set/clear oleh program untuk memilih mode. TMOD is not bit addressable M M Mode

54 Operasi Timer/Counter Timer/Counter Interrupt Timer/Counter pada AT89S5 adalah sebuah Up Counter, nilai counternya akan naik (increment) dari nilai awalnya sampai nilai maksimumnya dan kembali ke nilai nol. Saat bergulir menjadi nol (overflow), maka sebuah timer flag akan bernilai. Flag ini dapat diuji oleh program untuk menandakan bahwa counter telah selesai menghitung, atau flag tersebut bisa digunakan untuk meng-interrupt program. Nilai awal timer/counter harus dimasukkan dulu ke dalam timer register Timer High (TH) dan Timer Low (TL) sebelum timer/counter dijalankan. Maximum Value THx=FF, TLx=FF FFFF Initial Value Put in THx & TLx Timer Overflow TF= 7F Zero THx=, TLx= 6-bit Up Counter 54

55 Operasi Timer/Counter Mode Operasi Timer Timer and Timer Operation Modes Pulse Input TLX 5 Bits THX 8 Bits TFX Interrupt Timer Mode, 3 - Bit Timer/Counter Pulse Input TLX 8 Bits THX 8 Bits TFX Interrupt Timer Mode, 6 - Bit Timer/Counter Pulse Input TLX 8 Bits TFX Interrupt Reload TLX THX 8 Bits Timer Mode 2, Auto Reload of TL from TH Pulse Input TL 8 Bits TF Interrupt f/2 TR Bit In TCON TH 8 Bits TF Interrupt Timer Mode 3, Two 8 Bit Timers Using Timer 55

56 Operasi Timer/Counter Pemilihan mode operasi timer ditentukan pada bit M dan M dalam register TMOD. Ada 4 mode operasi yaitu : Mode : 3-bit Timer/Counter Mode : 6-bit Timer/Counter Mode 2 : 8-bit Autoreload Timer/Counter Mode 3 : Two 8 bit Timer/Counter Timer Mode. 3-bit Timer/Counter Dengan mensetting M&M = dalam TMOD menyebabkan register THx berfungsi sebagai counter 8 bit dan register TLx berfungsi sebagai counter 5 bit. Ketika overflow, TFx akan. Nilai maksimumnya adalah 89d atau FFFh. Timer Mode. 6-bit Timer/Counter Register THx dan TLx masing-masing berfungsi sebagai counter 8 bit. Ketika overflow, TFx akan.nilai maksimumnya adalah 65535d atau FFFFh. Timer Mode 2. 8-bit Autoreload Timer/Counter Register TLx berfungsi sebagai counter 8 bit. Register THx berfungsi mengisi ulang / autoreload register TLx ketika terjadi overflow (TFx=). Timer Mode 3. Two 8 bit Timer/Counter Pada mode 3. Timer berfungsi sebagai counter 8 bit yang benar-benar terpisah satu sama lain. Timer berfungsi sebagai timer sekaligus sebagai counter secara terpisah. TL digunakan sebagai counter 8 bit yang menghitung pulsa eksternal, dengan timer flag TF. TH digunakan sebagai timer 8 bit yang menghitung pulsa clock internal, dengan timer flag TF. Pada mode 3, Timer tidak dapat digunakan sebab timer flag TF digunakan sebagai timer flag TH. 56

57 Operasi Timer/Counter Timer/Counter dapat dihidup-matikan secara program dengan mengatur TRx maupun secara hardware dengan memberikan logika pada pin INTx. Berikut adalah tabel nilai TMOD sesuai dengan mode dan kontrol timer/counter. Timer sebagai timer Timer sebagai counter Mode Fungsi Timer Kontrol Internal TMOD Kontrol Eksternal Mode Fungsi Counter Kontrol Internal TMOD Kontrol Eksternal 3 bit timer h 8h 3 bit counter 4h Ch 6 bit timer h 9h 6 bit counter 5h Dh 2 8 bit autoreload 2h Ah 2 8 bit autoreload 6h Eh 3 Two 8 bit timer 3h Bh 3 One 8 bit counter 7h Fh Timer sebagai timer Timer sebagai counter Mode Fungsi Timer Kontrol Internal TMOD Kontrol Eksternal Mode Fungsi Counter Kontrol Internal TMOD Kontrol Eksternal 3 bit timer h 8h 3 bit counter 4h Ch 6 bit timer h 9h 6 bit counter 5h Dh 2 8 bit autoreload 2h Ah 2 8 bit autoreload 6h Eh

58 Operasi Timer/Counter Secara umum delay waktu timer (T) dapat dihitung dengan persamaan sebagai berikut :. Sebagai timer 8 bit. T=(255-TLx)*uS 2. Sebagai timer 3 bit. T=(89-THxTLx)*uS 3. Sebagai timer 6 bit. T=(65535-THxTLx)*uS Dengan catatan frekuensi crystal yang digunakan adalah 2 MHz. Contoh : Diinginkan delay waktu ms menggunakan timer 6 bit. Maka nilai THx dan TLx adalah : T=(65535-THxTLx)*uS THxTLx=65535-(T/uS) THxTLx=65535-(mS/uS) THxTLx= THxTLx=55535d=D8EFh Maka THx=D8h dan TLx=EFh 58

59 Operasi Timer/Counter Contoh. Timer Mode $mod5 ORG H LJMP MULAI ORG H MULAI: MOV TMOD,#H ; Timer pada mode MOV TL,#7H ; T=(89-THx TLx)*uS MOV TH,#CH ; Delay us SETB TR LOOP: JBC TF,SELESAI SJMP LOOP SELESAI: SJMP MULAI END 59 Contoh 2. Timer Mode $mod5 ORG H LJMP MULAI ORG H MULAI: SETB P. CALL DELAY CLR P. CALL DELAY SJMP MULAI ; Delay us DELAY: MOV TMOD,#H ; Timer pada mode MOV TH,#D8H ; T=(65535-THx TLx)*uS MOV TL,#EFH ; THxTLx=(65535-)*uS SETB TR LOOP: JBC TF,SELESAI SJMP LOOP SELESAI: CLR TR RET END

60 Operasi Timer/Counter Contoh 3. Timer Mode 2 $mod5 ORG H LJMP MULAI ORG H MULAI: MOV TMOD,#2H ; Timer pada mode 2 ; T=(255-THx)*uS MOV TH,#9BH ; Delay us SETB TR LOOP: JBC TF,SELESAI SJMP LOOP SELESAI: SJMP MULAI END 6 Contoh 4. Timer Mode 3 $mod5 ORG H LJMP MULAI ORG H MULAI: MOV TMOD,#3H ; Timer pada mode 2 ; T=(255-THx)*uS MOV TH,#9BH ; Delay us MOV TL,#CDH ; Delay 5uS SETB TR SETB TR LOOP: JBC TF,OVER JBC TF,OVER2 SJMP LOOP OVER: MOV TL,#CDH SJMP LOOP OVER2: MOV TH,#9BH SJMP LOOP END

61 Operasi Timer/Counter Contoh 5. Counter $mod5 ORG H LJMP MULAI ORG H MULAI: MOV TMOD,#5H ;COUNTER MODE SETB TR LOOP: MOV A,TL MOV P,A SJMP LOOP END Latihan Rancanglah sebuah program untuk menghitung banyaknya pulsa per detik yang hasilnya ditampilkan pada modul MT-LED. 6

62 Aplikasi Seven Segmen Dasar Seven Segment BCD to 7 Segment Metoda Scanning 62

63 Aplikasi Seven Segment Dasar Seven Segment Seven segment adalah tampilan angka yang terdiri dari 7 LED yang disusun membentuk angka 8 ditambah LED sebagai titik (dot). Ada dua tipe 7 Segment yaitu : Common Anode dan Common Cathode Common Anode (CA) Pada 7 segment CA semua anoda LED dihubungkan menjadi satu dan disebut sebagai Common Anode, sementara katoda LED diberi nama a, b, c, d, e, f, g dan dp (dot/titik). Tanda bar diatas menunjukkan bahwa pin tersebut adalah aktif low. Sebagai contoh untuk membentuk angka 2 maka pin common diberi tegangan + sedangkan pin a, c, d, f dan g diberi tegangan volt. Besarnya tegangan forward (Vf) LED dapat dilihat dari lembaran data sheet tiap produk seven segment. Konfigurasi Seven Segment Common Anode 63

64 Aplikasi Seven Segment Common Cathode (CC) Pada 7 segment CC semua katoda LED dihubungkan menjadi satu dan disebut sebagai Common Cathode, sementara katoda LED diberi nama a, b, c, d, e, f, g dan dp (dot/titik). Sebagai contoh untuk membentuk angka maka pin common diberi tegangan volt sedangkan pin a dan b diberi tegangan +. Konfigurasi Seven Segment Common Cathode 64

65 Aplikasi Seven Segment BCD to 7 Segment BCD (Binary Coded Decimal) to Seven Segment adalah sebuah decoder yang dapat mengubah kode biner menjadi tampilan angka pada seven segment. Ada dua tipe BCD to 7 segment yaitu : 74LS47 dan 74LS48. 74LS47 (BCD to 7 Segment Common Anode) A A A2 A3 BI/RBO RBI LT 74LS47 A 3 B 2 C D E 9 5 F G 4 Nama Pin A-A3 RBI LT BI RBO / a Deskripsi Input BCD Ripple Blanking Input (Aktif Low) Lamp Test Input (Aktif Low) Blanking Input/Ripple Blanking Output (Aktif Low) g - Output Segment

66 66 X X X X X X X X X X X X 5 X 4 X 3 X 2 X X X 9 X 8 X 7 X 6 X 5 X 4 X 3 X 2 X A A A2 A3 Output Input Desimal / Fungsi Tabel Kebenaran BI RBI LT LT RBI BI RBO a b c d e f g / Tabel Kebenaran 74LS47 Aplikasi Seven Segment

67 Aplikasi Seven Segment 74LS48 (BCD to 7 Segment Common Cathode) A A A2 A3 BI/RBO RBI LT 74LS48 A 3 B 2 C D E 9 5 F G 4 Nama Pin A-A3 RBI LT BI RBO / a - g Deskripsi Input BCD Ripple Blanking Input (Aktif Low) Lamp Test Input (Aktif Low) Blanking Input/Ripple Blanking Output (Aktif Low) Output Segment

68 68 X X X X X X X X X X X X 5 X 4 X 3 X 2 X X X 9 X 8 X 7 X 6 X 5 X 4 X 3 X 2 X g f e d c b a A A A2 A3 Output Input Desimal / Fungsi Tabel Kebenaran BI RBI LT LT RBI BI RBO / Tabel Kebenaran 74LS48 Aplikasi Seven Segment

69 Aplikasi Seven Segment Metoda Scanning Metoda scanning digunakan untuk melakukan penghematan jalur data yang diperlukan untuk mengendalikan seven segmen yang jumlahnya lebih dari satu buah seperti pada gambar dibawah ini. P. P. P.2 P A A A2 A3 BI/RBO RBI LT A 3 B 2 C D E 9 5 F G 4 74LS48 Q PNP Q2 PNP Q3 PNP P.5 P.4 P.6 P.5 P.7 P.6 Dengan metoda scanning, semua output segmen dari 74LS48 (a sampai g) dihubungkan ke semua seven segmen. Dengan demikian data akan diterima oleh semua seven segmen secara bersamaan. Yang harus dilakukan selanjutnya adalah memilih common mana yang akan diaktifkan. Dengan mengaktifkan common secara bergantian dan dilakukan dalam frekuensi yang cepat ( 5 Hz) maka seolah-olah akan dilihat tiga digit angka yang menyala bersamaan. 69

70 Aplikasi Seven Segment Contoh : Tiga digit seven segment didesain untuk menampilkan angka -9 pada tiap kolomnya secara bergantian (hanya satu kolom yang menyala). Dimulai dari kolom ketiga, kemudian kolom kedua dan kolom pertama, demikian berulang-ulang. 7 Flowchart Program : Listing Program : $mod5 START ORG LJMP 3 ORG T Isi A dengan Angka untuk Kolom 3 ( MOV A,#b ) Keluarkan isi A ke P INC A Call Delay Apakah A sudah? CJNE A,#DAh,Loop Y Isi A dengan Angka untuk Kolom 2 ( MOV A,#b ) T Keluarkan isi A ke P INC A Call Delay Apakah A sudah? CJNE A,#BAh,Loop2 Y Isi A dengan Angka untuk Kolom ( MOV A,#b ) 2 T 2 Keluarkan isi A ke P INC A Call Delay Apakah A sudah? CJNE A,#7Ah,Loop3 Y 3 H MULAI H MULAI: MOV A,#B LOOP: MOV P,A INC A ACALL DELAY CJNE A,#DAH,LOOP MOV A,#B LOOP2: MOV P,A INC A ACALL DELAY CJNE A,#BAH,LOOP2 MOV A,#B LOOP3: MOV P,A INC A ACALL DELAY CJNE A,#7AH,LOOP3 SJMP MULAI ; ; DELAY SUBROUTINE ; DELAY: MOV R5,#FFH MOV R6,#FFH MOV R7,#5 DLY: DJNZ R5,DLY DJNZ R6,DLY DJNZ R7,DLY RET END

71 Aplikasi Seven Segment 7 2 Contoh 2 : Tiga digit seven segment didesain untuk menampilkan angka sampai 255 kemudian berulang kembali dari. Flowchart Program : START Inisialisasi Angka Value = Inisialisasi Pengulangan Tampilan R = 4 Masukkan Nilai Value Konversi Value menjadi BCD Tampilkan Angka Satuan ke Kolom ke-3 Call Delay Tampilkan Angka Puluhan ke Kolom ke-2 Call Delay Tampilkan Angka Ratusan ke Kolom ke- Call Delay Kurangi R R =? T Y 2 Listing Program : ; VARIABLES ANGKA EQU 3H ANGKA2 EQU 3H ANGKA3 EQU 32H VALUE EQU 33H ; MAIN PROGRAM ORG H LJMP MULAI ORG H MULAI: MOV VALUE,# LOOP: MOV R,#4 LOOP2: MOV A,VALUE MOV B,#AH DIV AB MOV ANGKA3,B MOV B,#AH DIV AB MOV ANGKA2,B MOV ANGKA,A MOV A,ANGKA3 ANL A,#FH ORL A,#7H MOV P,A CALL DELAY MOV A,ANGKA2 ANL A,#FH ORL A,#BH MOV P,A CALL DELAY MOV A,ANGKA ANL A,#FH ORL A,#DH MOV P,A CALL DELAY DJNZ R,LOOP2 INC VALUE SJMP LOOP

72 Aplikasi Seven Segment Latihan Rancanglah sebuah jam digital 3 digit menggunakan timer dengan ketentuan seperti gambar berikut ini : MENIT DETIK DETIK 2 72

73 Aplikasi Motor Stepper Dasar Motor Stepper Operasi Pergeseran Step Kendali Kecepatan Motor Stepper Kendali Arah Putaran Motor Stepper Kendali Posisi Kendali Torsi 73

74 Aplikasi Motor Stepper Dasar Motor Stepper Motor stepper adalah sebuah peralatan elektromekanik yang mengubah pulsa elektrik menjadi pergerakan mekanik. Shaft atau kumparan motor stepper berputar per step ketika pulsa elektrik dimasukkan ke kumparan tersebut dengan urutan yang benar. Urutan pemberian pulsa ke motor stepper akan menyebabkan arah putaran yang berbeda. Sedangkan besarnya frekuensi dari pulsa akan mempengaruhi kecepatan putaran motor stepper. Secara umum motor stepper terbagi menjadi 2 tipe yaitu :. Variable-reluctance 2. Permanent-magnet 74

75 Aplikasi Motor Stepper A. Variable-reluctance (VR) Stepper Motor Gambar 2. Motor Stepper Tipe Variable Reluctance 75 Jika anda memiliki motor dengan tiga kumparan, yang ketiga kumparannya dihubungkan seperti pada gambar diatas dengan satu terminal terhubung ke semua kumparan (common), maka motor tersebut adalah motor stepper tipe variable reluctance (VR). Dalam prakteknya, kabel common dihubungkan ke terminal positif power supply dan kabel yang lain dihubungkan ke ground secara berurutan agar motor dapat berputar. Bagian rotor yang berbentuk silang (cross) pada gambar 2. dapat berputar sebesar 3 derajat per step. Rotor yang memiliki 4 gigi dan stator yang memiliki 6 kutub, dimana setiap kumparan terbagi menjadi 2 kutub yang posisinya berseberangan. Ketika kumparan nomor aktif (energize), gigi rotor yang bertanda X akan tertarik ke kutub kumparan. Pada kondisi ini, posisi rotor seperti terlihat pada gambar 2.. Jika arus listrik yang mengalir pada kumparan dimatikan dan kumparan 2 dinyalakan, rotor akan berputar 3 derajat searah jarum jam sehingga gigi rotor Y akan menghadap kutub 2 Untuk memutar motor secara kontinyu, kita hanya perlu memasukkan power ke 3 kumparan secara berurutan. Dengan asumsi bahwa logika berarti arus mengalir pada kumparan motor, maka berikut adalah urutan yang harus dipenuhi agar motor dapat berputar sebanyak 24 step atau 2 putaran : Kumparan Kumparan 2 Kumparan 3 waktu ---> Motor stepper tipe VR ada juga yang terdiri dari 4 dan 5 kumparan, memerlukan 5 atau 6 kabel. Prinsip pengendaliannya sama dengan motor stepper dengan 3 kumparan. Motor stepper pada gambar 2. memberikan pergerakan 3 derajat per step, dengan menambah jumlah kutub dan gigi rotor akan didapatkan step angle yang lebih kecil.

76 Aplikasi Motor Stepper B. Permanent-magnet (PM) Stepper Motor Berbeda dengan rotor motor stepper tipe variable reluctance yang terbuat dari besi, rotor motor stepper permanent magnet terbuat dari magnet permanen dengan dua kutub utara dan selatan. Motor Stepper Unipolar Gambar 2.2 Motor Stepper Unipolar 76 Motor stepper unipolar baik tipe 5 atau 6 kabel biasanya dihubungkan seperti pada gambar 2.2, dengan sebuah center tap pada tiap kumparan. Pada penggunaannya, center tap dihubungkan ke supply positif, dan dua ujung kumparan lainnya dihubungkan ke ground. Bagian rotor motor pada gambar 2.2 dibuat dari magnet permanent dengan 6 kutub, 3 kutub utara dan 3 kutub selatan. Seperti terlihat pada gambar, arus mengalir dari center tap kumparan ke terminal a menyebabkan kutub stator yang atas menjadi berkutub utara dan kutub stator yang bawah berkutub selatan. Kondisi ini menyebabkan rotor berada pada posisi seperti gambar 2.2. Jika arus pada kumparan dimatikan dan kumparan 2 dinyalakan, maka rotor akan berputar 3 derajat, atau step. Untuk berputar secara kontinyu, kita hanya perlu menghubungkan supplay power ke 2 kumparan secara berurutan. Dengan asumsi bahwa logika berarti arus mengalir pada kumparan motor, maka berikut adalah urutan yang harus dipenuhi agar motor dapat berputar sebanyak 24 step atau 2 putaran : Kumparan a Kumparan b Kumparan 2a Kumparan 2b waktu --->

77 Aplikasi Motor Stepper Motor Stepper Bipolar Gambar 2.3 Motor Stepper Bipolar Motor stepper bipolar dengan magnet permanent pada dasarnya dibentuk dengan mekanisme yang sama dengan motor stepper unipolar, tapi kedua kumparan dihubungkan dengan lebih sedarhana tanpa ada center tap seperti terlihat pada gambar 2.3. Agar motor dapat berputar secara kontinyu, maka berikut ini adalah urutan pemberian polaritas tegangan pada tiap terminal : Terminal a Terminal b Terminal 2a Terminal 2b waktu ---> 77

78 Aplikasi Motor Stepper Step Angle / SA Motor stepper bergerak per step. Setiap bergerak satu step, motor stepper akan berputar beberapa derajat sesuai dengan step anglenya. Step angle tergantung dari jumlah kutub magnet motor stepper. Jumlah putaran yang diperlukan agar motor stepper bergerak putaran penuh (36 ) adalah : Step = 36 / Step Angle Misalnya, sebuah motor stepper memiliki SA=,8 maka untuk untuk berputar satu putaran penuh memerlukan jumlah step sebanyak : 36 /,8 = 2 step 78

79 Aplikasi Motor Stepper Skema Rangkaian Motor Stepper 79

80 Aplikasi Motor Stepper Operasi Pergeseran Step START A = Keluarkan ke Port Delay Geser satu bit isi Register A $mod5 ORG H LJMP MULAI ORG H MULAI: MOV A,#B LOOP: MOV P,A CALL DELAY RL A SJMP LOOP ; ; DELAY SUBROUTINE ; DELAY: MOV R5,#FFH MOV R6,#FH MOV R7,#5H DLY: DJNZ R5,DLY DJNZ R6,DLY DJNZ R7,DLY RET END 8

81 Aplikasi Motor Stepper Kendali Kecepatan Motor Stepper Kecepatan motor stepper ditentukan oleh kecepatan aktifasi kumparannya. Secara program, ini bisa dilakukan dengan mengubah delay waktu pergeseran tiap bitnya. Semakin cepat delay waktunya, kecepatan motor stepper juga akan bertambah. $mod5 ORG H LJMP MULAI ORG H MULAI: MOV A,#B LOOP: MOV P,A CALL DELAY RL A SJMP LOOP ; ; DELAY SUBROUTINE ; DELAY: MOV R5,#FFH MOV R6,#FH MOV R7,#5H DLY: DJNZ R5,DLY DJNZ R6,DLY DJNZ R7,DLY RET END Pada rutin delay, jika instruksi : MOV R7,#5H diganti menjadi MOV R7,#H Maka kecepatan motor stepper akan bertambah 8

82 Aplikasi Motor Stepper Kendali Arah Putaran Motor Stepper Arah putaran motor stepper ditentukan oleh arah urutan aktifasi kumparannya. Secara program, ini bisa dilakukan dengan mengubah arah pergeseran bit. Jika arah pergesarannya ke kiri, maka motor stepper akan berputar kearah kiri pula (CCW) Jika arah pergeserannya ke kanan, maka motor stepper akan berputar ke arah kanan (CW) 82 $mod5 ORG H LJMP MULAI ORG H MULAI: MOV A,#B LOOP: MOV P,A CALL DELAY RL A SJMP LOOP ; ; DELAY SUBROUTINE ; DELAY: MOV R5,#FFH MOV R6,#FH MOV R7,#5H DLY: DJNZ R5,DLY DJNZ R6,DLY DJNZ R7,DLY RET END Pada program, jika instruksi : RL A diganti menjadi RR A Maka arah putaran motor stepper akan berubah

83 Aplikasi Motor Stepper Kendali Posisi Derajat putaran motor stepper ditentukan oleh banyaknya jumlah pergeseran aktifasi kumparannya. Secara program, ini bisa dilakukan dengan mengubah jumlah pergeseran bit. Pada motor stepper dengan SA=,8, agar motor stepper bergerak 45 maka diperlukan pergeseran step sebanyak : 45/,8 =25 step START A = Tentukan jumlah step R = 25 Pada program, jika instruksi : MOV R,#25 diganti menjadi MOV R,#5 Maka posisi putaran motor stepper akan berubah menjadi 9 N Keluarkan ke Port Delay Geser satu bit isi Register A Kurangi isir R=? $mod5 ORG H LJMP MULAI ORG H MULAI: MOV A,#B MOV R,#25 LOOP: MOV P,A CALL DELAY RL A DJNZ R,LOOP HERE: SJMP HERE END 83 Y STOP

84 Aplikasi Motor Stepper Kendali Torsi Torsi motor stepper ditentukan oleh banyaknya jumlah kumparan yang aktif pada saat yang sama. Torsi akan bertambah besar jika 2 kumparan aktif pada saat yang sama. Secara program, ini bisa dilakukan dengan mengubah kondisi bit. $mod5 ORG H LJMP MULAI ORG H MULAI: MOV A,#B LOOP: MOV P,A CALL DELAY RL A SJMP LOOP Pada program, jika instruksi : MOV A,# diganti menjadi MOV A,# Maka torsi motor stepper akan berkurang setengahnya 84

85 Aplikasi Motor Stepper Latihan Rancanglah pergerakan sebuah motor stepper dengan ketentuan sebagai berikut : Motor akan berputar searah jarum jam sampai pada posisi 8 setelah itu motor akan berputar berlawanan arah jarum jam sampai pada posisi. Kemudian motor bergerak kembali ke posisi 8.Demikian seterusnya. 85

86 Komunikasi Data Serial Mode Komunikasi Data Serial Pengiriman Data Serial Penerimaan Data Serial 86

87 Komunikasi Serial Komunikasi serial memiliki keuntungan dari segi efektifitasnya karena hanya membutuhkan 2 jalur komunikasi, jalur data dan clock. Data dikirim/diterima per bit secara bergantian. Pada MCS-5, data ditampung sementara dalam register SBUF (Serial Buffer) sebelum dikirim/diterima. Untuk mengatur mode komunikasi data serial dilakukan oleh register SCON (Serial Control register). Untuk mengatur baudrate dilakukan oleh register PCON (Power Control register). Pada AT89S5, port serial terdapat pada P3.(RXD) dan P3. (TXD) Ada 4 mode komunikasi data serial yang bisa dilakukan mikrokontroler AT89S5 yang dapat dipilih pada bit SM an SM dalam SCON. Dalam SCON terdapat flag TI (Transmit Interrupt) dan RI (Receive Interrupt) yang menandakan sedang terjadi pengiriman atau penerimaan data. Pengiriman Data Pengiriman data serial dimulai ketika sebuah byte data dikirimkan ke SBUF. TI akan ketika data telah selesai dikirimkan. Penerimaan Data Penerimaan data serial dimulai ketika REN dalam SCON di set. RE akan ketika data telah selesai diterima. Data tersebut kemudian disimpan di dalan SBUF 87

88 Komunikasi Data Serial SM SM SM2 REN TB8 RB8 TI RI SCON / Serial Port Control Special Function Register Bit Symbol Fuction 7 SM Serial port mode bit. 6 SM Serial port mode bit. SM SM Mode Description Shift register, baud = f/2 8-bit UART, baud = variable 2 9-bit UART, baud = f/32 or f/ bit UART, baud = variable 5 SM2 Multiprocessor communications bit. Set/clear oleh program untuk mengaktifkan komunikasi multiprosesor pada mode 2 dan 3. Jika di-set, sebuah interrupt akan dihasilkan jika bit ke-9 dari data yang diterima adalah. Tidak ada interrupt yang dihasilkan jika bit ke-9 adalah. Jika di-set pada mode, tidak ada interrupt yang dihasilkan kecuali jika sebuah bit stop telah diterima. Clear ke jika mode digunakan. 4 REN Receive enable bit. Set untuk mengaktifkan penerimaan, clear ke untuk melumpuhkan penerimaan. 3 TB8 Transmitted bit 8. Set/clear oleh program pada mode 2 dan 3. 2 RB8 Received bit 8. Bit ke-8 dari data yang diterima pada mode 2 dan 3 ; stop bit pada mode. Tidak digunakan pada mode. TI Transmit interrupt flag. Set pada akhir bit ke-7 pada mode, dan pada awal bit stop pada mode lain. Harus di-clear oleh program. 88 RI Receive interript flag. Set pada akhir bit ke-7 pada mode,dan setengah jalan pada bit stop pada mode lain. Harus di-clear oleh program. Bit addressable as SCON. to SCON.7

89 Komunikasi Data Serial SMOD GF GF PD IDL PCON / Power Mode Control Special Function Register Bit Symbol Fuction 7 SMOD Serial baud rate modify bit. Set oleh program untuk menggandakan baud rate menggunakan timer pada mode, 2 dan 3. Clear oleh program untuk menggunakan baud rate timer Tidak digunakan 3 GF General pupose user flag bit. 2 GF General pupose user flag bit. PD Power down bit. Set oleh program untuk masuk konfigurasi power down. IDL Idle mode bit. Set oleh program untuk masuk konfigurasi idle mode. 89

90 Komunikasi Data Serial Mode Komunikasi Data Serial Serial Data Mode. Shift Register Shift Register Mode Timing Shift Data Out S6P2 RXD Data Out D D D2 D3 D4 D5 D6 D7 External Data Bits Shifted Out TXD Clock RXD Data In D D D2 D3 D4 D5 D6 D7 External Data Bits Shifted In S5P2 Shift Data In Jika bit SM & SM dalam SCON adalah, menyebabkan SBUF dapat menerima atau mengirim data 8 bit melalui pin RXD. Pin TXD digunakan sebagai jalur clock. Baudrate tetap yaitu /2 frekuensi osilator. Ketika mengirim data, data digeser keluar pin RXD setelah satu pulsa clock. Data akan berubah ketika clock dalam fase falling edge / transisi dari haigh ke low. Ketika menerima data dari pin RXD, data harus disinkronkan dengan pulsa clock yang dihasilkan pada TXD. 9

91 Komunikasi Data Serial Serial Data Mode. Standard UART Standard UART Data Word Receiver Samples Data In Center of Bit Time Idle State Idle State Start Bit Data Bits Minimum of One Stop Bit Bit Time = f t Ketika SM dan SM adalah, SBUF menjadi -bit full-duplex receiver/transmitter yang dapat menerima dan mengirim data pada waktu yang sama. Pin RXD menerima semua data dan Pin TXD mengirim semua data. Pengiriman data diawali dengan start bit, disusul dengan 8 bit data (Least Significant Bit / LSB terlebih dahulu) dan diakhiri dengan stop bit. Interrupt flag TI akan setiap kali bit dikirim. Pengiriman data dimulai ketika start bit diterima, disusul dengan 8 bit data dan berakhir dengan diterimanya stop bit. Data 8 bit disimpan dalam SBUF dan stop bit disimpan pada RB8 dalam SCON. Interrupt flag RI akan setiap kali bit diterima. 9

92 Komunikasi Data Serial Mode Baud Rate Baudrate ditentukan dengan timer yang dioperasikan dalam mode 8 bit autoreload dengan persamaan sbb : f baud 2 = 32d SMOD oscillator frequency x 2d x [256d (TH)] SMOD adalah control bit dalam PCON dan dapat bernilai atau. Jika timer tidak bekerja pada mode 2, maka baudrate adalah : f baud = 2 32d SMOD x(timer overflow frequency) Jika diinginkan baudrate-nya standar, maka harus menggunakan crystal dengan frekuensi.592 MHz. Untuk mendapatkan baudrate standar 96 hertz maka nilai TH dapat dihitung dengan cara : TH = 256d x 32d 2 96d 6 = 253d = FDh 92

93 Komunikasi Data Serial Serial Data Mode 2. Multiprocessor Mode Multiprocessor Data Word Receiver Samples Data In Center of Bit Time Idle State Idle State Start Bit Data Bits Minimum of One Stop Bit Bit Time = f t Mode 2 sama dengan mode, tetapi jumlah data yang dikirim adalah bit, dimulai dengan start bit, 9 bit data dan diakhiri dengan bit stop. Data ke-9 disimpan pada TB8 dalam SCON ketika proses pengirman dan disimpan dalam RB8 ketika proses penerimaan. Baudrate-nya adalah : f 2 = 64d SMOD baud oscillator frequency Serial Data Mode 3. Mode 3 sama dengan mode 2 kecuali baudrate-nya sama dengan pada mode. 93

94 94 Contoh. Pengiriman Data $MOD5 ORG H LJMP MULAI ORG H MULAI: CALL INITSERIAL LOOP: MOV R,#5 MOV DPTR,#TEXT LOOP: CLR A MOVC A,@A+DPTR CALL KIRIM CALL DELAY DJNZ R,NEXT SJMP LOOP NEXT: INC DPTR SJMP LOOP INITSERIAL: MOV SCON,#52H MOV TMOD,#2H MOV TH,#FDH SETB TR RET KIRIM: JNB TI,$ CLR TI MOV SBUF,A RET DELAY: MOV R5,#FFH MOV R6,#FFH MOV R7,#3 DLY: DJNZ R5,DLY DJNZ R6,DLY DJNZ R7,DLY RET ; MESSAGES ; TEXT: DB ' HELLO WORLD! ' END Contoh 2. Penerimaan Data $MOD5 ORG H LJMP MULAI ORG H MULAI: CALL INITSERIAL LOOP: CALL TERIMA MOV P,A CALL DELAY SJMP LOOP INITSERIAL: MOV SCON,#52H MOV TMOD,#2H MOV TH,#FDH SETB TR RET TERIMA: JNB RI,$ CLR RI MOV A,SBUF RET DELAY: MOV R5,#FFH MOV R6,#FFH MOV R7,#3 DLY: DJNZ R5,DLY DJNZ R6,DLY DJNZ R7,DLY RET END

95 Komunikasi Data Serial Latihan Buat flow chart dan program komunikasi serial antara mikrokontroler dengan PC dengan ketentuan sebagai berikut : Ketika tombol angka di keyboard ditekan, maka angka tersebut akan ditampilkan ke seven segmen kemudian dikirim kembali ke PC untuk ditampilkan ke Hyper Terminal. 95

96 Operasi Interupsi Register IE Register IP Timer Flag Interrupt Serial Port Interrupt External Interrupt Reset Lokasi Memori Interrupt 96

97 Interupsi Interupsi adalah kondisi yang memaksa mikrokontroler menghentikan sementara eksekusi program utama untuk mengeksekusi rutin interrupt tertentu / Interrupt Service Routine (ISR) Setelah melaksanakan ISR secara lengkap, maka mikrokontroler akan kembali melanjutkan eksekusi program utama yang tadi ditinggalkan. Time Main Program (a). Program execution without interrupts ISR ISR ISR Main Main Main Main Time (b). Program execution with interrupts Pada AT89S5, ada 5 sumber interrupt yaitu. System reset 2. External 3. Timer 4. External 5. Timer 6. Serial Port. 97 Untuk mengatur kerja interrupt, dapat dilakukan pengaturan pada register Interrupt Enable (IE) dan Interrupt Priority (IP).

98 Operasi Interupsi Register IE EA - ET2 ES ET EX ET EX IE / Interrupt Enable Special Function Register Bit Symbol Fuction 7 EA Enable interrupts bit. Clear ke oleh program untuk melumpuhkan semua interrupt, set untuk mengaktifkan interrupt sesuai enable bit interrupt terkait. 6 - Tidak digunakan. 5 ET2 Reserved for future use. 4 ES Enable serial port interrupt. Set oleh program untuk mengaktifkan serial port interrupt, clear untuk melumpuhkan. 3 ET Enable timer overflow interrupt. Set oleh program untuk mengaktifkan timer overflow interrupt, clear untuk melumpuhkan. 2 EX Enable external interrupt. Set oleh program untuk mengaktifkan interrupt (INT), clear untuk melumpuhkan. ET Enable timer overflow interrupt. Set oleh program untuk mengaktifkan timer overflow interrupt, clear untuk melumpuhkan. EX Enable external interrupt. Set oleh program untuk mengaktifkan interrupt (INT), clear untuk melumpuhkan. 98 Bit addressable as IE. to IE.7

99 Operasi Interupsi Register IP PT2 PS PT PX PT PX IP / Interrupt Priority Special Function Register Bit Symbol Fuction 7 - Tidak digunakan. 6 - Tidak digunakan. 5 PT2 Reserved for future use. 4 PS Priority of serial port interrupt. 3 PT Priority of timer overflow interrupt. 2 PX Priority of external interrupt. PT Priority of timer overflow interrupt. PX Priority of external interrupt. Bit addressable as IP. to IP.7 99

100 Operasi Interupsi Serial Port Interrupt Serial port interrupt terjadi jika transmit interrupt flag (TI) atau receive interrupt flag (RI) dalam kondisi set (). Transmit interrupt terjadi ketika mikrokontroler telah berhasil mengirim data secara lengkap. Receive interrupt terjadi ketika mikrokontroler telah berhasil menerima data secara lengkap. Flag TI dan RI harus di-clear () oleh program sebab kedua flag ini tidak otomatis clear secara hardware ketika ISR selesai dijalankan. ORG h LJMP MAIN ORG 23h ; serial port interrupt vector LJMP SP_ISR ; jump ke Serial Port ISR ORG 3h MAIN: MOV TMOD,#2h ; Timer, mode 2 MOV TH,#FDh ; 2 baudrate SETB TR ; start Timer MOV SCON,#42h ; mode MOV A,#2h ; send ASCII space first MOV IE,#9h ; enable serial port interrupt SJMP $ ; do nothing ; SP_ISR: CJNE A,#7F,SKIP ; if finished ASCII set, MOV A,#2h ; reset to SPACE SKIP: MOV SBUF,A ; send char. to serial port INC A ; increment ASCII code CLR TI ; clear interrupt flag RETI END

101 Operasi Interupsi External Interrupt External interrupt terjadi jika interrupt external flag (IE atau IE) pada TCON dalam kondisi set (). Interrupt external flag dalam kondisi set jika :. Terdapat sinyal low pada Pin INT atau INTatau ; 2. Terdapat perubahan sinyal dari high ke low Pin INT atau INT Pengaturan kondisi sinyal interrupt ini dilakukan pada bit IT dan IT dalam register TCON. Jika ITx = maka sinyal interrupt low, jika ITx= maka sinyal interrupt dari high ke low. Flag IEx akan kembali jika subrutin interrupt dieksekusi. Untuk kembali dari subrutin interrupt digunakan instruksi RETI (RETurn from Interrupt) Reset Reset termasuk interrupt yang tidak dapat dilumpuhkan, sebab reset dipicu secara hardware yaitu pada pin RST dan menyebabkan mikrokontroler mengeksekusi instruksi pada address h. Ketika reset, nilai internal register menjadi sbb : REGISTER VALUE(HEX) REGISTER VALUE(HEX) PC DPTR A B SP 7 PSW P-3 FF IP xxxb IE xxb TCON TMOD TH TL TH TL SCON SBUF xx PCON xxxxxxxxb

102 2 Contoh. Interrupt $MOD5 ORG H LJMP MULAI ORG 3H LJMP INT_ISR ORG H MULAI: MOV IE,#8H ; Interrupt enable MOV IP,#H ; Prioritaskan LOOP: MOV P,# CALL DELAY MOV P,#FFH CALL DELAY SJMP LOOP ; ; INTERRUPT SERVICE ROUTINE ; INT_ISR: PUSH 5H PUSH 6H PUSH 7H MOV R,#6 MOV A,#H LOOP: MOV P,A CALL DELAY RL A DJNZ R,LOOP POP 7H POP 6H POP 5H RETI ; DELAY: MOV R5,#FFH MOV R6,#FH MOV R7,#5H DLY: DJNZ R5,DLY DJNZ R6,DLY DJNZ R7,DLY RET END Contoh 2. Interrupt Operasi Interupsi $MOD5 ORG H LJMP MULAI ORG 3H LJMP INT_ISR ORG H MULAI: MOV IE,#84H ; Interrupt enable MOV IP,#4H ; Prioritaskan LOOP: MOV P,# CALL DELAY MOV P,#FFH CALL DELAY SJMP LOOP ; ; INTERRUPT SERVICE ROUTINE ; INT_ISR: PUSH 5H PUSH 6H PUSH 7H MOV R,#6 MOV A,#8H LOOP: MOV P,A CALL DELAY RL A DJNZ R,LOOP POP 7H POP 6H POP 5H RETI ; DELAY: MOV R5,#FFH MOV R6,#FH MOV R7,#5H DLY: DJNZ R5,DLY DJNZ R6,DLY DJNZ R7,DLY RET END

103 Operasi Interupsi Lokasi Memori Interrupt Interrupt Service Routine / ISR ditempatkan pada address yang berbeda untuk tiap sumber interrupt. Berikut adalah tabel sumber interrupt, flag yang dipengaruhi dan vector address tiap sumber interrupt. INTERRUPT FLAG VECTOR ADDRESS System reset External Timer External Timer Serial Port RST IE TF IE TF RI or TI h 3h Bh 3h B 23h 3

104 Pustaka []. Kenneth J. Ayala, The 85 Microcontroller, Prentice Hall, 99. [2]. Moh.Ibnu Malik & Anistardi, Bereksperimen dengan Mikrokontroler 83, Elex Media Komputindo, 987. [3]. Hendawan Soebhakti, Buku Panduan Praktikum Sistem Mikrokontroler, Politeknik Batam, 26. 4

MIKROKONTROLER Arsitektur Mikrokontroler AT89S51

MIKROKONTROLER Arsitektur Mikrokontroler AT89S51 MIKROKONTROLER Arsitektur Mikrokontroler AT89S51 Ringkasan Pendahuluan Mikrokontroler Mikrokontroler = µp + Memori (RAM & ROM) + I/O Port + Programmable IC Mikrokontroler digunakan sebagai komponen pengendali

Lebih terperinci

Ringkasan Set Instruksi Dan Mode pengalamatan ( Addressing Mode )

Ringkasan Set Instruksi Dan Mode pengalamatan ( Addressing Mode ) Ringkasan Set Instruksi Dan Mode pengalamatan ( Addressing Mode ) Mikroprosessor 8051, sebagaimana terdaftar dalam 8051 set instruction in numerical order memiliki sekumpulan instruksi yang terintegrasi

Lebih terperinci

DESKRIPSI SINGKAT INSTRUKSI-INSTRUKSI PADA AT89S51

DESKRIPSI SINGKAT INSTRUKSI-INSTRUKSI PADA AT89S51 DESKRIPSI SINGKAT INSTRUKSI-INSTRUKSI PADA AT89S51 (Dikemas oleh : Sumarna, Jurdik Fisika, FMIPA, UNY E-mail : [email protected]) No. Instruksi Deskripsi Contoh 1. ADD A,R n Menambahkan isi A dengan isi

Lebih terperinci

INSTRUKSI DAN BAHASA PEMOGRAMAN MIKROKONTROLER

INSTRUKSI DAN BAHASA PEMOGRAMAN MIKROKONTROLER INSTRUKSI DAN BAHASA PEMOGRAMAN MIKROKONTROLER Yoyo Somantri dan Erik Haritman Dosen Jurusan Pendidikan Teknik Elektro FPTK Universitas Pendidikan Indonesia Pendahuluan Dalam bab ini akan dibahas tujuan

Lebih terperinci

Mikrokontroler 89C51 Bagian II :

Mikrokontroler 89C51 Bagian II : Mikrokontroler 89C51 Bagian II : Mikrokontroler 89C51 Mikrokontroler 89C51 merupakan mikrokomputer CMOS 8 bit dengan 4 Kbytes Flash Programmable Memory. Arsitektur 89C51 ditunjukkan pada gambar 2. Accumulator

Lebih terperinci

4. Port Input/Output Mikrokontroler MCS-51

4. Port Input/Output Mikrokontroler MCS-51 4. Port Input/Output Mikrokontroler MCS-51 Mikrokontroler MCS-51 memiliki 2 jenis port input/output, yaitu port I/O parallel dan port I/O serial. Port I/O parallel sebanyak 4 buah dengan nama P0,P1,P2

Lebih terperinci

Memprogram Port sebagai Output dan Input Sederhana

Memprogram Port sebagai Output dan Input Sederhana BAGIAN 1 Tujuan Pembelajaran Umum: 1. Mahasiswa trampil memprogram Port sebagai Input dan Output sederhana menggunakan bahasa pemrograman assembly Tujuan Pembelajaran Khusus: 1. Mahasiswa memahami Konstruksi

Lebih terperinci

BAB 2 LANDASAN TEORI. Dalam bab ini penulis akan membahas tentang komponen-komponen yang

BAB 2 LANDASAN TEORI. Dalam bab ini penulis akan membahas tentang komponen-komponen yang BAB 2 LANDASAN TEORI Dalam bab ini penulis akan membahas tentang komponen-komponen yang digunakan dalam seluruh unit sistem ini. Agar pembahasan tidak melebar dan menyimpang dari topik utama laporan ini,

Lebih terperinci

Gambar 1.1. Diagram blok mikrokontroller 8051

Gambar 1.1. Diagram blok mikrokontroller 8051 1.1. Organisasi Memori Semua divais 8051 mempunyai ruang alamat yang terpisah untuk memori program dan memori data, seperti yang ditunjukkan pada gambar1.1. dan gambar 1.2. Pemisahan secara logika dari

Lebih terperinci

Tabel Perbandingan ROM dan RAM pada beberapa seri ATMEL

Tabel Perbandingan ROM dan RAM pada beberapa seri ATMEL Pendahuluan Mikroprosessor 8051 (Struktur dan Organisasi Memori, SFR ) Tabel Perbandingan ROM dan RAM pada beberapa seri ATMEL A. Organisasi Memori Mikroprosesor 8051 Pada mikrokontroler keluarga MCS51

Lebih terperinci

BAB 2 LANDASAN TEORI. Agar kendaraan lebih teratur dan tidak terlalu padat, biasanya tempat perparkiran ini dibagi

BAB 2 LANDASAN TEORI. Agar kendaraan lebih teratur dan tidak terlalu padat, biasanya tempat perparkiran ini dibagi BAB 2 LANDASAN TEORI 2.1. Inteligent Parking System Agar kendaraan lebih teratur dan tidak terlalu padat, biasanya tempat perparkiran ini dibagi menjadi beberapa tempat. Dengan demikian kendaraan yang

Lebih terperinci

Percobaan 5. TIMER/COUNTER Menggunakan DT-51 MinSys

Percobaan 5. TIMER/COUNTER Menggunakan DT-51 MinSys Percobaan 5 TIMER/COUNTER Menggunakan DT-51 MinSys Menggunakan Timer/Counter pada DT-51 Mininum System sebagai timer ataupun sebagai counter. Memanfaatkan Special Fungtion Register (SFR) untuk mengatur

Lebih terperinci

Pengendalian 8 buah Motor oleh DST-51

Pengendalian 8 buah Motor oleh DST-51 Ib2 Pengendalian 8 buah Motor oleh DST-51 Pada aplikasinya, seringkali suatu sistem mikrokontroler digunakan untuk mengendalikan beberapa buah motor secara bersamaan. Berikut ini adalah pengendalian delapan

Lebih terperinci

Lab Elektronika Industri Mikrokontroler - 1 AT89C1051

Lab Elektronika Industri Mikrokontroler - 1 AT89C1051 Lab Elektronika Industri Mikrokontroler - 1 AT89C1051 I. FITUR AT89C1051 Kompatibel dengan produk MCS51 1k byte program flash ROM yang dapa diprogram ulang hingga 1000 kali Tegangan operasi 2.7 volt hingga

Lebih terperinci

Instruction Set Mikrokontroler

Instruction Set Mikrokontroler BAGIAN 1 Instruction Set Mikrokontroler Tujuan Pembelajaran Umum: 1. Mahasiswa mampu mendeskripsikan Instruction Set Mikrokontroler AT89S51 Tujuan Pembelajaran Khusus: 1. Mahasiswa memahami Instruction

Lebih terperinci

Laporan Modul 2, EL3006 Timer/Counter dan Interrupt Jongguran Sondang DN ( )/ Kelompok 48/ Jumat, 14 Maret 2008 Asisten: Virgilius

Laporan Modul 2, EL3006 Timer/Counter dan Interrupt Jongguran Sondang DN ( )/ Kelompok 48/ Jumat, 14 Maret 2008 Asisten: Virgilius Laporan Modul 2, EL3006 Timer/Counter dan Interrupt Jongguran Sondang DN (132 05 110)/ Kelompok 48/ Jumat, 14 Maret 2008 Asisten: Virgilius Abstrak pada praktikum kali ini, praktikan diharapkan mampu membuat

Lebih terperinci

I/O dan Struktur Memori

I/O dan Struktur Memori I/O dan Struktur Memori Mikrokontroler 89C51 adalah mikrokontroler dengan arsitektur MCS51 seperti 8031 dengan memori Flash PEROM (Programmable and Erasable Read Only Memory) DESKRIPSI PIN Nomor Pin Nama

Lebih terperinci

TIMER DAN COUNTER MIKROKONTROLER ATMEL

TIMER DAN COUNTER MIKROKONTROLER ATMEL Lab Elektronika Industri Mikrokontroler - 1 TIMER DAN COUNTER MIKROKONTROLER ATMEL I. TIMER DAN COUNTER Timer atau counter pada dasarnya adalah sebuah pencacah. Pencacah itu bisa dipakai sebagai pewaktu

Lebih terperinci

Mengenal bahasa assembly

Mengenal bahasa assembly Mengenal bahasa assembly adiatma [email protected] Abstrak Komputer adalah mesin penghitung elektronik yang cepat dan dapat menerima informasi input digital, kemudian memprosesnya sesuai dengan program

Lebih terperinci

Percobaan 5 PENGENALAN MIKROKONTROLER 8051

Percobaan 5 PENGENALAN MIKROKONTROLER 8051 Percobaan 5 PENGENALAN MIKROKONTROLER 8051 I. Tujuan 1. Mempelajari arsitektur mikrokontroller 8051 2. Memahami macam-macam interrupt yang ada pada mikrokontroller 8051 3. Memahami penggunaan I/O port

Lebih terperinci

LAMPIRAN D DATA SHEET

LAMPIRAN D DATA SHEET LAMPIRAN D DATA SHEET D-1 D-2 D-3 D-4 D-5 D-6 D-7 D-8 D-9 D-10 D-11 Instruksi-instruksi Keluarga MCS51 A. Operasi Aritmatika 1. ADD ADD A,Rn Tambahkan Akumulator A dengan Rn di mana n = 0 7 dan simpan

Lebih terperinci

PERTEMUAN SET INSTRUKSI MIKROKONTROLER AT 89C51

PERTEMUAN SET INSTRUKSI MIKROKONTROLER AT 89C51 PERTEMUAN SET INSTRUKSI MIKROKONTROLER AT 89C51 Pendahuluan Dalam materi sebelumnya sudah di bahas untuk menjalankan suatu tugas maka mikrokontroler 89C51 membutuhkan sebuah program yang terdiri dari susunan

Lebih terperinci

Program Studi Fisika Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Lambung Mangkurat

Program Studi Fisika Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Lambung Mangkurat Program Studi Fisika Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Lambung Mangkurat MIKROKONTROLLER MCS-51 Salah satu tipe mikrokontroler arsitektur MCS-51 yang banyak digunakan saat ini adalah

Lebih terperinci

PORT SERIAL MIKROKONTROLER ATMEL AT89C51

PORT SERIAL MIKROKONTROLER ATMEL AT89C51 Lab Elektronika Industri Mikrokontroler - 1 PORT SERIAL MIKROKONTROLER ATMEL AT89C51 I. FISIK AT89C51 Mikrokontroler AT89C51 umumnya mempunyai kemasan 40 pin seperti gambar berikut. AT89C51 telah dilengkapi

Lebih terperinci

Pertemuan 10 Arsitektur Mikrokontroler 8051

Pertemuan 10 Arsitektur Mikrokontroler 8051 Pertemuan 10 Arsitektur Mikrokontroler 8051 Learning Outcomes Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu : Menjelaskan arsitektur mikrokontroler 8051 Arsitektur Mikrokontroller 8051 Materi:

Lebih terperinci

BAHASA PEMOGRAMAN AT89S/Cxx (assembly)

BAHASA PEMOGRAMAN AT89S/Cxx (assembly) 1 BAHASA PEMOGRAMAN AT89S/Cxx (assembly) Operand dalam pemograman mikrokontroler adalah data yang tersimpan dalam memory, register dan input/output (I/O). Instruksi yang dikenal secara umum dikelompokan

Lebih terperinci

PETUNJUK PEMROGRAMAN DAN SET INSTRUKSI

PETUNJUK PEMROGRAMAN DAN SET INSTRUKSI Lab Elektronika Industri Mikrokontroler - 1 PETUNJUK PEMROGRAMAN DAN SET INSTRUKSI I. ORGANISASI MEMORI AT89C51 AT89C51 memisahkan antara memori untuk program dan untuk data dalam FLASH dan RAM. Metode

Lebih terperinci

REGISTER-REGISTER Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY

REGISTER-REGISTER Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY REGISTER-REGISTER 8051 Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY E-mail : [email protected] 1. PC (Program Counter) PC dengan ukuran 16 bit menentukan lokasi berikutnya yang akan dieksekusi (dijalankan).

Lebih terperinci

MIKROKONTROLER AT89S52

MIKROKONTROLER AT89S52 MIKROKONTROLER AT89S52 Mikrokontroler adalah mikroprosessor yang dirancang khusus untuk aplikasi kontrol, dan dilengkapi dengan ROM, RAM dan fasilitas I/O pada satu chip. AT89S52 adalah salah satu anggota

Lebih terperinci

Pendahuluan Mikrokontroler 8051

Pendahuluan Mikrokontroler 8051 Pendahuluan Mikrokontroler 8051 Pokok Bahasan: 1. Mikrokontroler 8051 Arsitektur (Architecture) Timers/Counters Interrupts Komunikasi Serial (Serial Communication) Tujuan Belajar: Setelah mempelajari dalam

Lebih terperinci

BAB 2 TINJAUAN TEORITIS

BAB 2 TINJAUAN TEORITIS 7 BAB 2 TINJAUAN TEORITIS 1 Konveyor Konveyor hanya bergerak ke satu arah saja, konveyor digerakkan dengan motor stepper 12V type. Sinyal keluaran dari motor stepper untuk menggerakkan konveyor dirangkaikan

Lebih terperinci

I. Pendahuluan. Mikroprosesor CPU. Gambar 1. Perbedaan Mikrokontroler dengan Mikroprosesor

I. Pendahuluan. Mikroprosesor CPU. Gambar 1. Perbedaan Mikrokontroler dengan Mikroprosesor I. Pendahuluan Mikrokontroler, jika diterjemahkan secara harfiah, berarti pengendali yang berukuran mikro. Sekilas mikrokontroler hampir sama dengan mikroprosesor. Namun mikrokontroler memiliki banyak

Lebih terperinci

PANDUAN DASAR MIKROKONTROLER KELUARGA MCS-51

PANDUAN DASAR MIKROKONTROLER KELUARGA MCS-51 PANDUAN DASAR MIKROKONTROLER KELUARGA MCS-51 PANDUAN DASAR MIKROKONTROLER KELUARGA MCS-51 Danny Christanto, S.T. Kris Pusporini, S.T., M.T. 2004, Innovative Electronics Hak Cipta dilindungi undang-undang

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1 Mikrokontroller AT89C51 Meskipun termasuk tua, keluarga mikrokontroler MCS51 adalah mikrokontroler yang paling populer saat ini. Keluarga ini diawali oleh Intel yang mengenalkan

Lebih terperinci

Menggunakan Bahasa Pemrograman Assembly

Menggunakan Bahasa Pemrograman Assembly BAGIAN 1 Tujuan Pembelajaran Umum: 1. Mahasiswa trampil menggunakan bahasa pemrograman assembly Tujuan Pembelajaran Khusus: 1. Mahasiswa memahami konstruksi program assembly 2. Mahasiswa memahami proses

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI 6 BAB 2 LANDASAN TEORI 2.1 Perangkat Keras 2.1.1 Bahasa Assembly MCS-51 Bahasa yang digunakan untuk memprogram IC mikrokontroler AT89S51 adalah bahasa assembly untuk MCS-51. angka 51 merupakan jumlah instruksi

Lebih terperinci

Memprogram Interupsi AT89S51

Memprogram Interupsi AT89S51 BAGIAN 1 AT89S51 Tujuan Pembelajaran Umum: 1. Mahasiswa trampil memprogram interupsi Tujuan Pembelajaran Khusus: 1. Mahasiswa memahami dasar-dasar interupsi Mikrokontroler AT89S51 2. Mahasiswa memahami

Lebih terperinci

BAB 2 LANDASAN TEORI. Dalam bidang elektronika, perlahan-lahan peralatan-peralatan manual mulai digantikan

BAB 2 LANDASAN TEORI. Dalam bidang elektronika, perlahan-lahan peralatan-peralatan manual mulai digantikan BAB 2 LANDASAN TEORI 2.1. Sistem Pendeteksi dan Pemadam Kebakaran Otomatis Dalam bidang elektronika, perlahan-lahan peralatan-peralatan manual mulai digantikan dengan peralatan elektronik yang dapat bekerja

Lebih terperinci

PERTEMUAN BAHASA PEMOGRAMAN ASSEMBLER

PERTEMUAN BAHASA PEMOGRAMAN ASSEMBLER PERTEMUAN BAHASA PEMOGRAMAN ASSEMBLER Bahasa merupakan media komunikasi. Manusia dapat berintegrasi dengan baik jika jika memahami apa yang diinginkan oleh orang lain. Pada dasarnya bahasa yang di gunakan

Lebih terperinci

Perancangan Serial Stepper

Perancangan Serial Stepper Perancangan Serial Stepper ini : Blok diagram dari rangakaian yang dirancang tampak pada gambar dibawah Komputer Antar Muka Peralatan luar Komputer Komputer berfungsi untuk mengendalikan peralatan luar,

Lebih terperinci

BAB I TUGAS MATA KULIAH SISTEM MIKROPROSESOR DOSEN PEMBERI TUGAS : FATAH YASIN, ST, MT.

BAB I TUGAS MATA KULIAH SISTEM MIKROPROSESOR DOSEN PEMBERI TUGAS : FATAH YASIN, ST, MT. 1 BAB I TUGAS MATA KULIAH SISTEM MIKROPROSESOR DOSEN PEMBERI TUGAS : FATAH YASIN, ST, MT. A. Deskripsi Tugas 1. Jelaskan perbedaan mikroprosesor dan mikrokontroler. 2. Jelaskan mode-mode pengalamatan yang

Lebih terperinci

AKSES MEMORI Menggunakan DT-51 MinSys

AKSES MEMORI Menggunakan DT-51 MinSys AKSES MEMORI Menggunakan DT-51 MinSys Mengakses eksternal memori dan data memori pada DT-51 Minimum sistem. Membuat program untuk penulisan atau pembacaan data pada memori eksternal DT-51 MinSys. Memori

Lebih terperinci

PERTEMUAN SET INSTRUKSI MIKROKONTROLER AT 89C51

PERTEMUAN SET INSTRUKSI MIKROKONTROLER AT 89C51 PERTEMUN SET INSTRUKSI MIKROKONTROLER T 89C5 PERTEMUN SET INSTRUKSI MIKROKONTROLER T 89C5 Pendahuluan Dalam materi sebelumnya sudah di bahas untuk menjalankan suatu tugas maka mikrokontroler 89C5 membutuhkan

Lebih terperinci

Memprogram Interface Display

Memprogram Interface Display BAGIAN 1 Tujuan Pembelajaran Umum: 1. Mahasiswa trampil memprogram interface display Tujuan Pembelajaran Khusus: 1. Mahasiswa memahami dasar-dasar interface display 2. Mahasiswa trampil memprogram interface

Lebih terperinci

Blok sistem mikrokontroler MCS-51 adalah sebagai berikut.

Blok sistem mikrokontroler MCS-51 adalah sebagai berikut. Arsitektur mikrokontroler MCS-51 diotaki oleh CPU 8 bit yang terhubung melalui satu jalur bus dengan memori penyimpanan berupa RAM dan ROM serta jalur I/O berupa port bit I/O dan port serial. Selain itu

Lebih terperinci

ARSITEKTUR MIKROKONTROLER AT89C51/52/55

ARSITEKTUR MIKROKONTROLER AT89C51/52/55 ARSITEKTUR MIKROKONTROLER AT89C51/52/55 A. Pendahuluan Mikrokontroler merupakan lompatan teknologi mikroprosesor dan mikrokomputer. Mikrokontroler diciptakan tidak semata-mata hanya memenuhi kebutuhan

Lebih terperinci

PORT PARALEL MIKROKONTROLER ATMEL AT89C51

PORT PARALEL MIKROKONTROLER ATMEL AT89C51 Lab Elektronika Industri Mikrokontroler - 1 PORT PARALEL MIKROKONTROLER ATMEL AT89C51 I. FISIK AT89C51 Mikrokontroler AT89C51 umumnya mempunyai kemasan 40 pin seperti gambar berikut. AT89C51 mempunyai

Lebih terperinci

Arsitektur Mikrokontroler

Arsitektur Mikrokontroler BAGIAN 1 Arsitektur Mikrokontroler Tujuan Pembelajaran Umum: 1. Mahasiswa mampu mendeskripsikan Arsitektur Mikrokontroler AT89S51 Tujuan Pembelajaran Khusus: 1. Mahasiswa dapat memahami arsitektur mikrokontroler

Lebih terperinci

INTRUKSI-INTRUKSI BAHASA PEMROGRAMAN ASSEMBLY

INTRUKSI-INTRUKSI BAHASA PEMROGRAMAN ASSEMBLY INTRUKSI-INTRUKSI BAHASA PEMROGRAMAN ASSEMBLY Mubtasir [email protected] Abstrak Program yang ditulis dengan bahasa Assembly terdiri dari label, kode mnemonic dan lain sebagainya, pada umumnya dinamakan

Lebih terperinci

PEMBUATAN ALAT PRAKTIKUM MIKROKONTROLER (AT89S51)

PEMBUATAN ALAT PRAKTIKUM MIKROKONTROLER (AT89S51) MATERI WORKSHOP PEMBUATAN ALAT PRAKTIKUM MIKROKONTROLER (AT89S51) Dikemas Ulang Oleh : Sumarna JURUSAN PENDIDIKAN FISIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS NEGERI YOGYAKARTA 15 MARET

Lebih terperinci

Mikrokontroler AVR. Hendawan Soebhakti 2009

Mikrokontroler AVR. Hendawan Soebhakti 2009 Mikrokontroler AVR Hendawan Soebhakti 2009 Tujuan Mampu menjelaskan arsitektur mikrokontroler ATMega 8535 Mampu membuat rangkaian minimum sistem ATMega 8535 Mampu membuat rangkaian downloader ATMega 8535

Lebih terperinci

MAKALAH. Timer atau Counter 0 dan 1. Oleh : Rizky Dwi N ( ) Satrio Teguh Yulianto ( ) D3 TEKNIK ELEKTRO JURUSAN TEKNIK ELEKTRO

MAKALAH. Timer atau Counter 0 dan 1. Oleh : Rizky Dwi N ( ) Satrio Teguh Yulianto ( ) D3 TEKNIK ELEKTRO JURUSAN TEKNIK ELEKTRO MAKALAH Timer atau Counter 0 dan 1 Oleh : Rizky Dwi N (1431110061 ) Satrio Teguh Yulianto (1431110023) D3 TEKNIK ELEKTRO JURUSAN TEKNIK ELEKTRO POLITEKNIK NEGERI MALANG TAHUN 2015/2016 i KATA PENGANTAR

Lebih terperinci

BAB 2 LANDASAN TEORI. Mikrokontroler AT89S52 termasuk kedalam keluarga MCS-51 merupakan suatu. dua macam memori yang sifatnya berbeda yaitu:

BAB 2 LANDASAN TEORI. Mikrokontroler AT89S52 termasuk kedalam keluarga MCS-51 merupakan suatu. dua macam memori yang sifatnya berbeda yaitu: BAB 2 LANDASAN TEORI 2.1 Perangkat Keras 2.1.1 Mikrokontroler AT89S52 Mikrokontroler AT89S52 termasuk kedalam keluarga MCS-51 merupakan suatu mikrokomputer CMOS 8 bit dengan daya rendah, kemampuan tinggi,

Lebih terperinci

Timer Counter. D3 Telekomunikasi.

Timer Counter. D3 Telekomunikasi. Timer Counter D3 Telekomunikasi Timer Pada dasarnya timer dan counter merupakan sistem yang sama-sama menambahkan diri hingga overflow. Timer memanfaatkan frekuensi osilator untuk bertambah tiap machine

Lebih terperinci

PERTEMUAN MEMORY DAN REGISTER MIKROKONTROLER

PERTEMUAN MEMORY DAN REGISTER MIKROKONTROLER PERTEMUAN MEMORY DAN REGISTER MIKROKONTROLER Memory Program Memory dan Data Memory Memory yang terdapat pada Mikrokontroler 89C51 dipisahkan menjadi 2 bagian yaitu program memory (memori program) dan data

Lebih terperinci

ORGANISASI MEMORI MIKROKONTROLER MCS-51. Yoyo Somantri dan Erik Haritman Dosen Jurusan Pendidikan Teknik Elektro FPTK Universitas Pendidikan Indonesia

ORGANISASI MEMORI MIKROKONTROLER MCS-51. Yoyo Somantri dan Erik Haritman Dosen Jurusan Pendidikan Teknik Elektro FPTK Universitas Pendidikan Indonesia ORGANISASI MEMORI MIKROKONTROLER MCS-51 Yoyo Somantri dan Erik Haritman Dosen Jurusan Pendidikan Teknik Elektro FPTK Universitas Pendidikan Indonesia Pendahuluan Dalam bab ini akan dibahas tujuan perkuliahan,

Lebih terperinci

BAB 3 PERANCANGAN ALAT DAN PROGRAM

BAB 3 PERANCANGAN ALAT DAN PROGRAM BAB 3 PERANCANGAN ALAT DAN PROGRAM 3.1. DIAGRAM BLOK display Penguat sinyal Sensor 1 keypad AT89S51 Penguat sinyal Sensor 5 relay alarm pompa Keterangan diagram blok: Sensor air yang berfungsi untuk mengetahui

Lebih terperinci

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA BAB II TINJAUAN PUSTAKA 2.1 PERANGKAT KERAS 2.1.1 Arsitektur Mikrokontroler AT89S51 Mikrokontroler, sebagai suatu terobosan teknologi mikrokontoler dan mikrokomputer, hadir memenuhi kebutuhan pasar (market

Lebih terperinci

KBK 635 MIKROKONTROLER PENDAHULUAN

KBK 635 MIKROKONTROLER PENDAHULUAN KBK 635 MIKROKONTROLER PENDAHULUAN PERTEMUAN 1 Program Studi Sistem Komputer - Fakultas Ilmu Komputer UNIVERSITAS NAROTAMA SURABAYA Informasi Kuliah HP : 08123313678 Email : [email protected] Website

Lebih terperinci

BAB III PERANCANGAN SISTEM. Secara garis besar rangkaian pengendali peralatan elektronik dengan. blok rangkaian tampak seperti gambar berikut :

BAB III PERANCANGAN SISTEM. Secara garis besar rangkaian pengendali peralatan elektronik dengan. blok rangkaian tampak seperti gambar berikut : BAB III PERANCANGAN SISTEM 3.1. Diagram Blok Secara garis besar rangkaian pengendali peralatan elektronik dengan menggunakan PC, memiliki 6 blok utama, yaitu personal komputer (PC), Mikrokontroler AT89S51,

Lebih terperinci

PENGENALAN SISTEM KENDALI BERBASIS MIKROPROSESOR

PENGENALAN SISTEM KENDALI BERBASIS MIKROPROSESOR KEGIATAN BELAJAR 1 PENGENALAN SISTEM KENDALI BERBASIS MIKROPROSESOR Lembar Informasi Automasi dan Pengendalian Pabrik dan industri modern memerlukan kendali automatik. Kendali automatik memegang peranan

Lebih terperinci

TKC210 - Teknik Interface dan Peripheral. Eko Didik Widianto

TKC210 - Teknik Interface dan Peripheral. Eko Didik Widianto TKC210 - Teknik Interface dan Peripheral Eko Didik Sistem Komputer - Universitas Diponegoro Review Kuliah Pembahasan tentang: Referensi: mikrokontroler (AT89S51) mikrokontroler (ATMega32A) Sumber daya

Lebih terperinci

BAB IV PENGUJIAN DAN ANALISA DATA

BAB IV PENGUJIAN DAN ANALISA DATA BAB IV PENGUJIAN DAN ANALISA DATA Pada bab ini akan dibahas tentang pengujian dan pengoperasian Sistem Pemantau Ketinggian Air Cooling Tower di PT. Dynaplast. Pengujian dan pengoperasian ini dilakukan

Lebih terperinci

LM124/LM224/LM324/LM2902

LM124/LM224/LM324/LM2902 LM124/LM224/LM324/LM2902 Low Power Quad Operational Amplifiers General Description The LM124 series consists of four independent, high gain, internally frequency compensated operational amplifiers which

Lebih terperinci

Microcontroller: Bahasa Pemrograman Assembly 8051

Microcontroller: Bahasa Pemrograman Assembly 8051 Microcontroller: Bahasa Pemrograman Assembly 8051 Oleh: Ali Sofyan Kholimi Universitas Muhammadiyah Malang E-Mail / IM: [email protected] Blog: http://kholimi-id.blogspot.com Tujuan Belajar Mendaftar register

Lebih terperinci

BAB III RANCANGAN DAN CARA KERJA ALAT

BAB III RANCANGAN DAN CARA KERJA ALAT BAB III RANCANGAN DAN CARA KERJA ALAT 3.1 Perancangan Alat 3.1.1 Blok Diagram Perancangan Alat Rancangan dan cara kerja alat secara blok diagram yaitu untuk mempermudah dalam menganalisa rangkaian secara

Lebih terperinci

PERTEMUAN. SET INSTRUKSI MIKROKONTROLER AT 89C51 (Lanjutan)

PERTEMUAN. SET INSTRUKSI MIKROKONTROLER AT 89C51 (Lanjutan) PERTEMUAN SET INSTRUKSI MIKROKONTROLER AT 89C51 (Lanjutan) Rotate Perintah Rotate identik dengan Shift register dimana bit-bit dalam byte di geser ke kiri atau kekanan dengan atau tanpa carry. Perintah-perintah

Lebih terperinci

BAB II TINJAUAN PUSTAKA. Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan

BAB II TINJAUAN PUSTAKA. Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan BAB II TINJAUAN PUSTAKA 2.1. PERANGKAT KERAS 2.1.1. Arsitektur Mikrokontroler AT89S51 Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan mikrokomputer, hadir memenuhi kebutuhan pasar

Lebih terperinci

Tahun Akademik 2015/2016 Semester I DIG1B3 Konfigurasi Perangkat Keras Komputer

Tahun Akademik 2015/2016 Semester I DIG1B3 Konfigurasi Perangkat Keras Komputer Tahun Akademik 2015/2016 Semester I DIG1B3 Konfigurasi Perangkat Keras Komputer SAP-2 Mohamad Dani (MHM) E-mail: [email protected] Hanya dipergunakan untuk kepentingan pengajaran di lingkungan Telkom

Lebih terperinci

ANTAR MUKA DST-51 DENGAN MODUL AD-0809

ANTAR MUKA DST-51 DENGAN MODUL AD-0809 ANTAR MUKA DST-51 DENGAN MODUL AD-0809 ADC0809 ADC0809 adalah IC pengubah tegangan analog menjadi digital dengan masukan berupa 8 kanal input yang dapat dipilih. IC ADC0809 dapat melakukan proses konversi

Lebih terperinci

PENGENALAN DASAR MIKROKONTROLER MCS-51 AT89S51/52. DI SUSUN OLEH: RENI NURAENI,ST M.Pd

PENGENALAN DASAR MIKROKONTROLER MCS-51 AT89S51/52. DI SUSUN OLEH: RENI NURAENI,ST M.Pd PENGENALAN DASAR MIKROKONTROLER MCS-51 AT89S51/52 DI SUSUN OLEH: RENI NURAENI,ST M.Pd 1 KEGIATAN BELAJAR 1 MIKROKONTROLLER AT89S51/52 Mikrokontroller 8-bit dengan 4 K Byte, ISP ( In System Programming

Lebih terperinci

PERCOBAAN 11 PULSE WIDHT MODULATION

PERCOBAAN 11 PULSE WIDHT MODULATION PERCOBAAN 11 PULSE WIDHT MODULATION TUJUAN: 1. Memahami prinsip dasar PWM 2. Memahami rangkaian Driver Motor DC 3. Memahami pemrograman assembly untuk pengaturan PWM Konsep Dasar PWM Salah satu cara yang

Lebih terperinci

AT89S52 8kByte In-System Programmable Mikrokontroler

AT89S52 8kByte In-System Programmable Mikrokontroler Lab Elektronika Industri Mikrokontroler 1 AT89S52 8kByte In-System Programmable Mikrokontroler I. Fitur AT89S52 Kompatibel dengan produk MCS51 Intel 8kByte Flah Memori dengan In-System Programmable (ISP)

Lebih terperinci

Arsitektur SAP-2 W BUS ACKNOWLEDGE HEXADECIMAL KEYBOARD ENCODER ACCUMULATOR INPUT PORT 1 ALU FLAGS READY INPUT PORT 2 SERIAL IN PROGRAM COUNTER TMP

Arsitektur SAP-2 W BUS ACKNOWLEDGE HEXADECIMAL KEYBOARD ENCODER ACCUMULATOR INPUT PORT 1 ALU FLAGS READY INPUT PORT 2 SERIAL IN PROGRAM COUNTER TMP W BUS ACKNOWLEDGE HEXADECIMAL KEYBOARD ENCODER 16 ACCUMULATOR INPUT PORT 1 READY SERIAL IN 0 7 INPUT PORT 2 ALU 2 FLAGS PROGRAM COUNTER 16 TMP MAR 16 B 16 64 K MEMORY C Arsitektur SAP-2 MDR OUTPUT PORT

Lebih terperinci

Tahun Akademik 2015/2016 Semester I DIG1B3 Konfigurasi Perangkat Keras Komputer

Tahun Akademik 2015/2016 Semester I DIG1B3 Konfigurasi Perangkat Keras Komputer Tahun Akademik 2015/2016 Semester I DIG1B3 Konfigurasi Perangkat Keras Komputer SAP-3 Mohamad Dani (MHM) E-mail: [email protected] Hanya dipergunakan untuk kepentingan pengajaran di lingkungan Telkom

Lebih terperinci

BAB II LANDASAN TEORI. Dalam merancang sebuah peralatan yang cerdas, diperlukan suatu

BAB II LANDASAN TEORI. Dalam merancang sebuah peralatan yang cerdas, diperlukan suatu BAB II LANDASAN TEORI 2.1. Perangkat Keras Dalam merancang sebuah peralatan yang cerdas, diperlukan suatu perangkat keras (hardware) yang dapat mengolah data, menghitung, mengingat dan mengambil pilihan.

Lebih terperinci

BAB II DASAR TEORI MIKROKONTROLER II (PENERIMA DATA) MEDIA PENGIRIMAN DATA. Gambar 2.1 Blok Pengiriman Data Mikrokontroler I ke Mikrokontroler II

BAB II DASAR TEORI MIKROKONTROLER II (PENERIMA DATA) MEDIA PENGIRIMAN DATA. Gambar 2.1 Blok Pengiriman Data Mikrokontroler I ke Mikrokontroler II BAB II DASAR TEORI 2.1 Komunikasi Data Paralel Prinsip dasar dari sistem komunikasi data paralel adalah suatu cara untuk pengiriman atau pertukaran data dari kedua pihak dengan menggunakan sirkuit yang

Lebih terperinci

BAB III RANCANGAN SISTEM. dirancanag. Setiap diagram blok mempunyai fungsi masing-masing. Adapun diagram

BAB III RANCANGAN SISTEM. dirancanag. Setiap diagram blok mempunyai fungsi masing-masing. Adapun diagram BAB III RANCANGAN SISTEM 3.1. Diagram Blok Rangkaian Diagram blok merupakan gambaran dasar dari rangkaian sistem yang akan dirancanag. Setiap diagram blok mempunyai fungsi masing-masing. Adapun diagram

Lebih terperinci

AD Channel AD Conversion

AD Channel AD Conversion AD-0809 8 Channel AD Conversion Fitur: - 8 Channel Multiplex Analog Input - 0 5 Volt Analog Input - 4 Interrupt Output Selector - 4 Address Selector - Kompatibel DST-51 Minimum System & SC-51 - Free Running

Lebih terperinci

DASAR INPUT/OUTPUT (2) (PORT PPI DAN PORT 1 SEBAGAI INPUT/OUTPUT)

DASAR INPUT/OUTPUT (2) (PORT PPI DAN PORT 1 SEBAGAI INPUT/OUTPUT) PERCOBAAN 2 DASAR INPUT/OUTPUT (2) (PORT PPI DAN PORT 1 SEBAGAI INPUT/OUTPUT) Menggunakan DT-51 MinSys Mengamati keluaran data berupa nyala LED setelah proses pemindahan data (akses eksternal) dari sebuah

Lebih terperinci

Percobaan 6. SERIAL INTERFACE Menggunakan DT-51 MinSys

Percobaan 6. SERIAL INTERFACE Menggunakan DT-51 MinSys Percobaan 6 SERIAL INTERFACE Menggunakan DT-51 MinSys Membuat aplikasi serial interface untuk komuniksi secara serial melalui pin RXD dan TXD pada MCS-51. Membuat program menggunakan serial port (DB9)

Lebih terperinci

Gambar 3.1 Blok Diagram Port Serial RXD (P3.0) D SHIFT REGISTER. Clk. SBUF Receive Buffer Register (read only)

Gambar 3.1 Blok Diagram Port Serial RXD (P3.0) D SHIFT REGISTER. Clk. SBUF Receive Buffer Register (read only) 1. Operasi Serial Port mempunyai On Chip Serial Port yang dapat digunakan untuk komunikasi data serial secara Full Duplex sehingga Port Serial ini masih dapat menerima data pada saat proses pengiriman

Lebih terperinci

USER MANUAL TRAINER TOMBOL & LED 8 BIT MENGGUNAKAN AT89S51 MATA PELAJARAN:ELEKTRONIKA KENDALI

USER MANUAL TRAINER TOMBOL & LED 8 BIT MENGGUNAKAN AT89S51 MATA PELAJARAN:ELEKTRONIKA KENDALI USER MANUAL TRAINER TOMBOL & LED 8 BIT MENGGUNAKAN AT89S51 MATA PELAJARAN:ELEKTRONIKA KENDALI SISWA TINGKAT XII - ELEKTRONIKA INDUSTRI JURUSAN TEKNIK ELEKTRONIKA INDUSTRI SEKOLAH MENENGAH KEJURUAN SMK

Lebih terperinci

PERCOBAAN 3. KONTROL DISPLAY 7-SEGMENT Menggunakan DT-51 MinSys

PERCOBAAN 3. KONTROL DISPLAY 7-SEGMENT Menggunakan DT-51 MinSys PERCOBAAN 3 KONTROL DISPLAY 7-SEGMENT Menggunakan DT-5 MinSys Membuat proses kontrol display seven segment menggunakan SWITC sebagai set () dan reset (L) program. Membuat program Counter baik Up Counter

Lebih terperinci

BAB 2 TINJAUAN TEORITIS. Mikrokontroller, sebagai suatu terobosan teknologi mikrokontroler dan microkomputer,

BAB 2 TINJAUAN TEORITIS. Mikrokontroller, sebagai suatu terobosan teknologi mikrokontroler dan microkomputer, BAB 2 TINJAUAN TEORITIS 2.1.Hardware 2.1.1 Mikrokontroler AT89S51 Mikrokontroller, sebagai suatu terobosan teknologi mikrokontroler dan microkomputer, hadir memenuhi kebutuhan pasar (market need) dan teknologi

Lebih terperinci

DASAR INPUT/OUTPUT (1) (PORT PPI DAN PORT 1 SEBAGAI OUTPUT)

DASAR INPUT/OUTPUT (1) (PORT PPI DAN PORT 1 SEBAGAI OUTPUT) Percobaan DASAR INPUT/OUTPUT () (PORT PPI DAN PORT SEBAGAI OUTPUT) Menggunakan DT-5 MinSys Mengamati keluaran data berupa nyala LED setelah proses pemindahan data (akses eksternal) dari sebuah register

Lebih terperinci

BAB II TEORI DASAR PENUNJANG

BAB II TEORI DASAR PENUNJANG BAB II TEORI DASAR PENUNJANG 2.1 Mikrokontroler AT89S51 Mikrokontroler, sebagai suatu terobosan dari teknologi mikroprosesor dan mikrokomputer, hadir memenuhi kebutuhan pasar (marked need) dan teknologi

Lebih terperinci

Alarm Pintu, Harap Pintu Tutup Kembali, Jangan Buka Pintu Lama-lama versi 2

Alarm Pintu, Harap Pintu Tutup Kembali, Jangan Buka Pintu Lama-lama versi 2 Alarm Pintu, Harap Pintu Tutup Kembali, Jangan Buka Pintu Lama-lama versi 2 Kalo sobat pernah jalan-jalan ke sebuah kantor dan lihat di pintu ada tulisan: HARAP PINTU TUTUP KEMBALI atau MOHON PINTU TUTUP

Lebih terperinci

LAPORAN PRAKTIKUM. Praktek Mikroprosesor 1 Job Sheet 2

LAPORAN PRAKTIKUM. Praktek Mikroprosesor 1 Job Sheet 2 LAPORAN PRAKTIKUM Instruksi Aritmatika dan Operasi Logika Praktek Mikroprosesor 1 Job Sheet 2 Nama : DENNY SETIAWAN NIM : 3201311036 Kelas : V B Kelompok : 1 Anggota Kelompok : Denny Setiawan Ranto susilo

Lebih terperinci

PERCOBAAN 9 T I M E R/ COUNTER

PERCOBAAN 9 T I M E R/ COUNTER PERCOBAAN 9 T I M E R/ COUNTER TUJUAN 1. Memahami fungsi timer dan counter pada mikrokontroller 2. Memahami rangkaian interface untuk aplikasi timer dan counter 3. Dapat memanfaatkan fungsi counter untuk

Lebih terperinci

Daftar Isi Daftar Isi. I. Pendahuluan A. Pengenalan DT51 Debugger. B. Istilah pada Instruksi MCS-51 1) Program Status Word (PSW).

Daftar Isi Daftar Isi. I. Pendahuluan A. Pengenalan DT51 Debugger. B. Istilah pada Instruksi MCS-51 1) Program Status Word (PSW). Daftar Isi Daftar Isi. i I. Pendahuluan A. Pengenalan DT51 Debugger. 1 B. Istilah pada Instruksi MCS-51 1) Program Status Word (PSW). 2 2) Addressing Modes... 2 3) Daftar Istilah pada Instruksi MCS-51

Lebih terperinci

TAMPILKAN NADA DTMF DAN DERING TELEPHONE OLEH MODUL DF-88 DAN MODUL DST-51 PADA LCD

TAMPILKAN NADA DTMF DAN DERING TELEPHONE OLEH MODUL DF-88 DAN MODUL DST-51 PADA LCD TAMPILKAN NADA DTMF DAN DERING TELEPHONE OLEH MODUL DF-88 DAN MODUL DST-51 PADA LCD Pada aplikasi-aplikasi menggunakan saluran telephone, proses deteksi nada DTMF maupun sinyal dering seringkali dibutuhkan,

Lebih terperinci

PERTEMUAN TIMER & COUNTER MIKROKONTROLER 89C51

PERTEMUAN TIMER & COUNTER MIKROKONTROLER 89C51 PERTEMUAN TIMER & COUNTER MIKROKONTROLER 89C51 Pemakaian Timer TIMMER MIKROKONTROLER 89C51 Timer atau pewaktu dan counter atau pencacah adalah jenis pengatur waktu didalam mikrokontroler. Didalam mikrokontroler

Lebih terperinci

Simple As Posible 2 (bag-1)

Simple As Posible 2 (bag-1) Simple As Posible 2 (bag-1) (Pertemuan ke-17) Disusun ulang oleh: Andrian Rakhmatsyah Diedit ulang oleh: Endro Ariyanto Prodi S1 Teknik Informatika Fakultas Informatika Universitas Telkom Maret 2016 Arsitektur

Lebih terperinci

Simple As Possible (SAP) - 2. Abdul Syukur

Simple As Possible (SAP) - 2. Abdul Syukur Simple As Possible (SAP) - 2 Abdul Syukur [email protected] http://skurlinux.blogspot.com 053740514 Arsitektur Komputer SAP-2 Persamaan dengan SAP-1 : Sama-sama komputer bit. Kesamaan ini dapat

Lebih terperinci

TAKARIR. Akumulator Register yang digunakan untuk menyimpan semua proses aritmatika

TAKARIR. Akumulator Register yang digunakan untuk menyimpan semua proses aritmatika TAKARIR AC (Alternating Current) Adalah sistem arus listrik. Sistem AC adalah cara bekerjanya arus bolakbalik. Dimana arus yang berskala dengan harga rata-rata selama satu periode atau satu masa kerjanya

Lebih terperinci

BAB II TEORI DASAR. peralatan input / output ( I / O ) pendukung di dalamnya. Suatu sistem mikroprosesor

BAB II TEORI DASAR. peralatan input / output ( I / O ) pendukung di dalamnya. Suatu sistem mikroprosesor BAB II TEORI DASAR 2. 1 Sistem Mikrokontroler AT89S52 Mikrokontroller adalah suatu perangkat keras yang memiliki memori dan peralatan input / output ( I / O ) pendukung di dalamnya. Suatu sistem mikroprosesor

Lebih terperinci

MODE OPERASI TIMER/COUNTER. Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY

MODE OPERASI TIMER/COUNTER. Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY MODE OPERASI TIMER/COUNTER Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY E-mail : [email protected] 1. Mode 0 : Timer/Counter 13 bit. Gambar berikut menunjukkan konfigurasi operasi timer/counter mode 0. Salah

Lebih terperinci

Wireless Infrared Printer dengan DST-51 (Komunikasi Infra Merah dengan DST-51)

Wireless Infrared Printer dengan DST-51 (Komunikasi Infra Merah dengan DST-51) Wireless Infrared Printer dengan DST-5 (Komunikasi Infra Merah dengan DST-5) Komunikasi Infra Merah dilakukan dengan menggunakan dioda infra merah sebagai pemancar dan modul penerima infra merah sebagai

Lebih terperinci

THERMOMETER DIGITAL DENGAN MODUL DST-51, ADC-0809 DAN LCD 2X16

THERMOMETER DIGITAL DENGAN MODUL DST-51, ADC-0809 DAN LCD 2X16 THERMOMETER DIGITAL DENGAN MODUL DST-51, ADC-0809 DAN LCD 2X16 LCD 2x16 Modul DST-51 Modul ADC-0809 Amplifier LM35 Gambar 1 Blok Diagram Sistem Aplikasi thermometer digital dilakukan dengan melakukan konversi

Lebih terperinci