BUKU DIKTAT MIKROKONTROLLER. Dibuat Oleh: Iswanto, S.T, M.Eng

Ukuran: px
Mulai penontonan dengan halaman:

Download "BUKU DIKTAT MIKROKONTROLLER. Dibuat Oleh: Iswanto, S.T, M.Eng"

Transkripsi

1 BUKU DIKTAT MIKROKONTROLLER Dibuat Oleh: Iswanto, S.T, M.Eng TEKNIK ELEKTRO MEDIK PROGRAM VOKASI UNIVERSITAS MUHAMMADIYAH YOGYAKARTA 05

2 DAFTAR ISI BUKU DIKTAT... MIKROKONTROLLER... DAFTAR ISI... DAFTAR GAMBAR... 4 BAB I PENGENALAN MIKROKONTROLER (OK)..... PENDAHULUAN..... MIKROKONTROLER AVR ATMEGA KONFIGURASI PIN AVR ATMEGA STRUKTUR MEMORI FLASH MEMORI MEMORI SRAM MEMORI EEPROM... 4 BAB II PENGENALAN BAHASA C PENDAHULUAN Preprosesor Tipe Data Deklarasi Variabel, Konstanta dan Alamat I/O Struktur Percabangan Struktur Perulangan Fungsi dan Subrutin Operasi relasional (perbandingan) Operasi aritmatika Operasi logika dan biner... 9 BAB III PORT SEBAGAI INPUT/OUTPUT DIGITAL(OK) PENDAHULUAN PORT RANGKAIAN LAMPU LED PEMROGRAMAN MENYALAKAN LED RANGKAIAN PEMBACAAN KEYPAD DENGAN LCD PEMROGRAMAN PEMBACAAN KEYPAD RANGKAIAN SEVEN SEGMENT... 4

3 3..5. PEMROGRAMAN SEVENT SEGMENT PIN RANGKAIAN PEMBACAAN 8 TOMBOL PEMROGRAMAN PEMBACAAN 8 BUAH TOMBOL RANGKAIAN PEMBACAAN KEYPAD DENGAN LCD PEMROGRAMAN PEMBACAAN KEYPAD... 9 BAB IV ANALOG TO DIGITAL CONVERTER (OK) PENDAHULUAN RANGKAIAN ADC ATMEGA DENGAN LED PEMROGRAMAN ADC ATMEGA BAB V TIMER / COUNTER (OK) PENDAHULUAN TIMING DIAGRAM TIMER/COUNTER RANGKAIAN MENCACAH COUNTER TIMER T PEMROGRAMAN MENCACAH COUNTER T PEMROGRAMAN MENCACAH COUNTER T BAB VI INTERUPSI (OK) PENDAHULUAN RANGKAIAN INTERUPSI EKTERNAL PEMROGRAMAN INTERUPSI EKTERNAL INT PEMROGRAMAN INTERUPSI EKTERNAL INT RANGKAIAN INTERUPSI TIMER MIKROKONTROLLER PEMROGRAMAN INTERUPSI TIMER PEMROGRAMAN INTERUPSI TIMER PEMROGRAMAN INTERUPSI TIMER BAB VII SERIAL PORT(OK) PENDAHULUAN INISIALISASI USART RANGKAIAN SERIAL MIKROKONTROLLER PEMROGRAMAN PORT SERIAL MIKROKONTROLLER... 4 BAB VIII PWM(OK) PENDAHULUAN RANGKAIAN PWM MIKROKONTROLLER PEMROGRAMAN PWM MIKROKONTROLLER

4 DAFTAR GAMBAR 4

5 BAB I PENGENALAN MIKROKONTROLER (OK).. PENDAHULUAN Mikrokontroler, jika diterjemahkan secara harfiah, berarti pengendali yang berukuran mikro. Sekilas mikrokontroler hampir sama dengan mikroprosesor. Namun mikrokontroler memiliki banyak komponen yang terintegrasi didalamnya, misalnya timer/counter.sedangkan pada mikroprosesor, komponen tersebut tidak terintegrasi. Mikroprosesor umumnya terdapat pada komputer dimana tugas dari mikroprosesor adalah untuk memproses berbagai macam data input maupun output dari berbagai sumber. Mikrokontroler lebih sesuai untuk tugas-tugas yang lebih spesifik. Gambar. Perbedaan mikrokontroler dengan mikroprosesor.. MIKROKONTROLER AVR ATMEGA 6 AVR merupakan seri mikrokontroler CMOS 8-bit buatan Atmel, berbasis arsitektur RISC (Reduced Instruction Set Computer) yang ditingkatkan. Hampir semua instruksi dieksekusi dalam satu siklus clock. AVR mempunyai 3 register generalpurpose, timer/counter fleksibel dengan mode compare, interrupt internal dan eksternal, serial UART, programmable Watchdog Timer, dan mode power saving. Mempunyai ADC dan PWM internal. AVR juga mempunyai In-System Programmable Flash on-chip yang mengijinkan memori program untuk diprogram ulang dalam sistem menggunakan hubungan serial SPI. ATmega6 adalah mikrokontroler CMOS 8-bit daya-rendah berbasis arsitektur RISC yang ditingkatkan. Untuk lebih jelas tentang arsitektur dari ATmega6 ditunjukan pada gambar. ATmega6 mempunyai throughput mendekati MIPS per MHz membuat disainer sistem untuk mengoptimasi komsumsi daya versus kecepatan proses. Beberapa keistimewaan dari AVR ATmega6 antara lain:

6 Keuntungan arsitektur RISC 30 Instruksi yang hebat Kebanyakan satu detak untuk satu instruksi 3 x 8 General Purpose Fully Static Operation Up to 6 MIPS Throughput at 6 MHz On-chip -cycle Multiplier Nonvolatile Program and Data Memories 8K Bytes of In-System Self-Programmable Flash Optional Boot Code Section with Independent Lock Bits 5 Bytes EEPROM 5 Bytes Internal SRAM Programming Lock for Software Security Peripheral Features Two 8-bit Timer/Counters with Separate Prescalers and Compare Mode Two 8-bit Timer/Counters with Separate Prescalers and Compare Modes One 6-bit Timer/Counter with Separate Prescaler, Compare Mode, and Capture Mode Real Time Counter with Separate Oscillator Four PWM Channels 8-channel, 0-bit ADC Byte-oriented Two-wire Serial Interface Programmable Serial USART Special Microcontroller Features Power-on Reset and Programmable Brown-out Detection Internal Calibrated RC Oscillator External and Internal Interrupt Sources Six Sleep Modes: Idle, ADC Noise Reduction, Power-save, Power-down, Standby and Extended Standby 5. I/O and Package 3 Programmable I/O Lines 40-pin PDIP, 44-lead TQFP, 44-lead PLCC, and 44-pad MLF Operating Voltages.7-5.5V for ATmega6L V for Atmega6

7 Gambar. Arsitektur ATMEGA6.3. KONFIGURASI PIN AVR ATMEGA 6 Pin-pin pada ATmega6 dengan kemasan 40-pin DIP (dual inline package) ditunjukkan oleh gambar. Kemasan pin tersebut terdiri dari 4 Port yaitu Port A, Port B, Port C,Port D yang masing masing Port terdiri dari 8 buah pin. Selain itu juga terdapat RESET,, GND buah,, A, XTAL, XTAL dan AREF. Gambar.3 Pin -pin ATmega6 kemasan 40 -pin 3

8 .4. STRUKTUR MEMORI Untuk memaksimalkan performa dan paralelisme, AVR menggunakan arsitektur Harvard (dengan memori dan bus terpisah untuk program dan data). Instruksi pada memori program dieksekusi dengan pipelining single level. Selagi sebuah instruksi sedang dikerjakan, instruksi berikutnya diambil dari memori program..4.. FLASH MEMORI ATmega6 memiliki 6K byte flash memori dengan lebar 6 atau 3 bit. Kapasitas memori itu sendiri terbagi manjadi dua bagian yaitu bagian boot program dan bagian aplikasi program. Flash memori memiliki kemampuan mencapai write dan erase..4.. MEMORI SRAM Penempatan memori data yang lebih rendah dari 0 menunjukkan register, I/O memori, dan data internal SRAM. 96 alamatmemori pertama untuk file register dan memori I/O, dan 04 alamat memori berikutnya untuk data internal SRAM. Lima mode pengalamatan yang berbeda pada data memori yaitu direct, indirect, indirect dis-placement, indirect predecreament dan indirect post-increament.pada file register, mode indirect mulai dari register R6-R3. Pengalamatan mode direct mencapai keseuruhan kapasitas data. Pengalamatan mode indirect displacement mencapai 63 alamat memori dari register X atau Y. Ketika meggunakan mode pengalamatan indirect dengan predecrement dan post increment register X, Y, dan Z akan didicrement-kan atau di-increment-kan. Pada ATmega6 memiliki 3 register, 64 register I/O dan 04 data internal SRAM yang dapat mengakses semua mode-mode pengalamatan MEMORI EEPROM Pada EEPROM ATmega6 memiliki memori. Memori yang dimiliki sebesar 5 byte. Memori tersebut memiliki daya tahan siklus write/read. 4

9 BAB II PENGENALAN BAHASA C.. PENDAHULUAN Bahasa pemrograman C adalah sebuah bahasa 'mid-level', namun memiliki fitur 'highlevel' (seperti support pada fungsi dan modul) dan juga memiliki fitur 'lowlevel' (seperti mengakses hardware melalui pointer). Dengan menggunakan bahasa C, kita dapat dengan mudah untuk pindah ke jenis mikrokontroler yang lain, lebih mudah dan cepat dalam menulis kode program, dan lebih mudah dimengerti, dan lebih mudah dalam melakukan debugging. Berikut penjelasan kode kode dasar bahasa C untuk pemrograman mikrokontroler keluarga MCS5 yang sering digunakan:.. PREPROSESOR Merupakan bagian program yang digunakan untuk mendefenisikan library berupa file header (*.h) yang ikutkan (include) ke dalam program. Beberapa contoh penggunaannya: #include //mengikutsertakan file at89x5.h #include #include.3. TIPE DATA char : byte ( -8 s/d 7 ) unsigned char : byte ( 0 s/d 55 ) int : byte ( s/d 3767 ) unsigned int : byte ( 0 s/d ) long : 4 byte ( s/d ) unsigned long : 4 byte ( 0 s/d ) float : bilangan desimal array : kumpulan data-data yang sama tipenya. Terkadang untuk mendefenisikan tipe data dengan nama tersendiri dapat menggunakan keyword typedef. Perhatikan contoh berikut : typedef unsigned char ubyte; ubyte merupakan nama lain dari tipe data unsigned char.4. DEKLARASI VARIABEL, KONSTANTA DAN ALAMAT I/O Variabel merupakan lokasi memori tempat penyimpanan data yang nilai datanya dapat diubah pada saat program dijalankan. Sementara Konstanta merupakan lokasi memori penyimpan data yang nilai datanya tetap/konstan. 5

10 Ketika kita mendeklarasikan suatu variabel atau konstanta secara otomatis compiler bahasa C akan mengalokasikan sebuah lokasi memori pada RAM internal MCS5 yang akan digunakan untuk menyimpan nilai data dari variabel/konstanta tersebut. Untuk mendeklarasikan variabel data penulisan kode programnya sebagai berikut: [tipe data] [nama variabel] [= nilai awal (Optional)] Contoh: int counter = 0; unsigned char sum; Untuk mendeklarasikan konstanta penulisannya adalah sebagai berikut: [#define] [nama konstanta] [nilai konstanta] Contoh: #define phi 3.4 #define data_led 0xFF Selain variabel dan konstanta kita juga dapat mendeklarasikan sebuah variabel data dari sebuah PORT I/O atau Memori External dengan alamat tertentu. Yaitu dengan cara mengalokasikan lokasi memori /alamat PORT I/O secara manual menggunakan kata kunci xdata at(alamat) Contoh penggunaan xdata at(0x400) #include xdata at(0x400) unsigned char PORT_LED; unsigned char data_led void main() PORT_LED = 0x40; Pada contoh program diatas, alamat 0x400 dialokasikan sebagai alamat PORT_LED.Alamat external ini merupakan alamat yang dikeluarkan melaui Bus Alamat dari MCS5. Tipe data yang harus digunakan untuk mendeklarasikan sebuah PORT adalah unsigned char. Contoh menuliskan/mengeluarkan data ke sebuah PORT Output [nama_port] = [data_port] PORT_LED = 0x40; membaca data dari sebuah PORT Input [variabel_data] = [nama_port] 6

11 data_led = PORT_LED;.5. STRUKTUR PERCABANGAN Struktur percabangan digunakan untuk memilih atau menyeleksi kondisi yang dipersyaratkan dalam mengeksekusi perintah dalam pemrograman. Bentuk penulisannya If (kondisi) perintah elseperintah if(a==0xff) b=0xf; else b=0x00; Jika kondisi terpenehi maka barisan perintah dieksekusi, jika kondisi tidak terpenuhi maka barisan perintah yang dieksekusi. If (kondisi)perintah else if(kondisi) perintah if(a==0xff) b=0xf; else if(a==0x00) b=0x00; Jika kondisi terpenuhi maka barisan perintah dieksekusi, jika kondisi tidak terpenuhi tetapi kondisi terpenuhi maka barisan perintah yang dieksekusi. if (kondisi)perintahelse if(kondisi)pernitah elseperintah3 if(a==0xff) b=0xf; else if(a==0x00) b=0x00; else b = 0xff; Jika kondisi terpenuhi maka barisan perintah dieksekusi, jika kondisi tidak terpenuhi tetapi kondisi terpenuhi maka barisan perintah yang dieksekusi, dan jika tidak ada kondisi yang terpenuhi maka barisan perintah3 yang dieksekusi..6. STRUKTUR PERULANGAN Struktur perulangan digunakan untuk mengeksekusi barisan perintah secara berulang sesuai dengan kondisi atau jumlah perulangan yang dipersyaratkan. Perulangan dengan for Pada Perulangan ini looping dilakukan sesuai dengan jumlah yang ditentukan. Contoh: for (n=0;n0;n--) b= b+; Baris perintah b=b+ akan dieksekusi berulangkali.dimana perulangan eksekusi dilakukan sebanyak 0 kali dari n = 0 (kondisi awal) s/d n = (kondisi akhir n > 0).nilai n akan berkurang setiap perulangan (n--). Perulangan dengan while Perulangan jenis ini kan melakukan looping selama kondisi yang dipersyaratkan terpenuhi. Contoh PORT_LED = 0xFF; while(data_led!=0xff) data_led = PORT_LED; PORT_LED = 0x00; 7

12 Kondisi awal PORT_LED adalah 0xFF kemudian program akan melakukan perulangan while(). Pada perulangan ini program akan mengeksekusi perintah data_led = PORT_LED atau perintah membaca data pada PORT_LED berulangkali. Selama data_led tidak sama (!=) dengan 0xFF maka perulangan akan terus terjadi. ketikadata_led=0xff maka perulangan akan berhenti. Dan program akan lanjut ke baris perintah dibawahnya yaitu perintah PORT_LED = 0x FUNGSI DAN SUBRUTIN Fungsi adalah blok program yang digunakan untuk melakukan sekumpulan instruksi akan mengembalikan nilai tertentu setelah semua instruksi dilaksanakan. Subrutin adalah blok program yang digunakan untuk melakukan sekumpulan instruksi tertentu. Perbedaannya dengan fungsi adalah subrutin hanya menjalankan sekumpulan instruksi dan tidak mengembalikan nilai tertentu. //contoh subrutin void counter_up() counter++; //contoh fungsi int kalikan(int ct) int temp; temp = * ct; return temp; //pengembalian nilai Prototype fungsi dan subrutin Jika sebuah penulisan kode fungsi atau subrutin berada dibawah program utama (subrutin main()), agar fungsi atau subrutin tersebut dapat dipanggil oleh program utama maka perlu dilakukan deklarasi fungsi/subrutin atau yang disebut dengan prototype. Perhatikan contoh berikut: #include int hasil = 0; int counter = 0; int kalikan(int); //prototype fungsi kalikan void counter_up(); //prototype subrutin counter_up void main() counter_up(); hasil = kalikan(counter); void counter_up() counter++; int kalikan(int ct) int temp; temp = * ct; return temp;.8. OPERASI RELASIONAL (PERBANDINGAN) Sama dengan : == Tidak sama dengan :!= Lebih besar : > Lebih besar sama dengan : >= Lebih kecil : < Lebih kecil sama dengan : <= 8

13 .9. OPERASI ARITMATIKA +,, *, / : tambah,kurang,kali,bagi +=, -=, *=, /= : nilai di sebelah kiri operator di tambah/kurang/kali/bagi dengan nilai di sebelah kanan operator % : sisa bagi ++, : tambah satu (increment), kurang satu (decrement) Contoh : a = 5 * 6 + / - ; maka nilai a adalah 30 a *= 5 ; jika nilai awal a adalah 30, maka nilai a = 30 5 = 50. a += 3 ; jika nilai awal a adalah 30, maka nilai a = 30+5 = 33. a++ ; jika nilai awal a adalah 5 maka nilai a = a+ = 6. a ; jika nilai awal a adalah 5 maka nilai a = a- = OPERASI LOGIKA DAN BINER Logika Logika AND :&& Logika NOT :! Logika OR : Biner AND : & Biner OR : Biner XOR : ^ Shift right biner: >> Shift left biner : << Komplemen : ~ Beberapa struktur dan elemen bahasa C lainnya dapat dilihat pada literatur yang ada baik di-internet maupun di buku. 9

14 BAB III PORT SEBAGAI INPUT/OUTPUT DIGITAL(OK) 3.. PENDAHULUAN ATmega6 mempunyai empat buah port yang bernama PortA, PortB, PortC, dan PortD. Keempat port tersebut merupakan jalur bidirectional dengan pilihan internal pull-up. Tiap port mempunyai tiga buah register bit, yaitu DDxn, PORTxn, dan PINxn. Huruf x mewakili nama huruf dari port sedangkan huruf n mewakili nomor bit. Bit DDxn terdapat pada I/O address DDRx, bit PORTxn terdapat pada I/O address PORTx, dan bit PINxn terdapat pada I/O address PINx. Bit DDxn dalam regiter DDRx (Data Direction Register) menentukan arah pin. 3.. PORT Bila DDxn diset maka Px berfungsi sebagai pin output. Bila PORTxn diset pada saat pin terkonfigurasi sebagai pin output maka pin port akan berlogika. Dan bila PORTxn diset 0 pada saat pin terkonfigurasi sebagai pin output maka pin port akan berlogika 0. Saat mengubah kondisi port dari kondisi tri-state (DDxn=0, PORTxn=0) ke kondisi output high (DDxn=, PORTxn=) maka harus ada kondisi peralihan apakah itu kondisi pull-up enabled (DDxn=0, PORTxn=)atau kondisi output low (DDxn=, PORTxn=0). Biasanya, kondisi pull-up enabled dapat diterima sepenuhnya, selama lingkungan impedansi tinggi tidak memperhatikan perbedaan antara sebuah strong high driver dengan sebuah pull-up. Jika ini bukan suatu masalah, maka bit PUD pada register SFIOR dapat diset untuk mematikan semua pull-up dalam semua port. Peralihan dari kondisi input dengan pullup ke kondisi output low juga menimbulkan masalah yang sama. Kita harus menggunakan kondisi tri-state (DDxn=0, PORTxn=0) atau kondisi output high (DDxn=, PORTxn=0) sebagai kondisi transisi RANGKAIAN LAMPU LED Rangkaian minimum untuk menghidupkan 8 LED melalui Port B ditunjukan pada Gambar 3.. yang perlu diperhatikan adalah konfigurasi rangkaian LED yaitu Common Anode (CA) artinya untuk menghidupkan LED pada Port B, port B harus dikirim atau diberi logika 0. 0

15 R C3 00nF C pf X C pf RST U 40 PB0(XCK/T0) PA0(ADC0) 39 3 PB(T) PA(ADC) 38 4 PB(INT/AIN0) PA(ADC) 37 5 PB3(OC0/AIN) PA3(ADC3) 36 6 PB4(SS) PA4(ADC4) 35 7 PB5(MOSI) PA5(ADC5) 34 8 PB6[MISO) PA6(ADC6) 33 9 PB7[SCK) PA7(ADC7) 3 0 RESET AREF 3 AGND 30 GND A 9 3 XTAL PC7(TOSC) 8 4 XTAL PC6(TOSC) 7 5 PD0(RXD) PC5 6 6 PD(TXD) PC4 5 7 PD(INT0) PC3 4 8 PD3(INT) PC 3 9 PD4(OCB) PC(SDA) 0 PD5(OCA) PC0(SCL) PD6(ICP) PD7(OC) ATMEGA6 Gambar 3. Hasil pemasangan komponen rangkaian lampu led 3... PEMROGRAMAN MENYALAKAN LED Setelah rangkaian LED dibuat dan dihubungkan dengan port pararel mikrokontroller, maka sekarang saatnya Anda membuat program yang digunakan untuk menghidupkan LED tersebut. Program sebagai berikut ini - // Program LED Menyala // DEKLARASI HEADER - #include <mega6.h> #include <delay.h> - //RUTIN UTAMA - void main(void) char a; a=0x000; DDRB=0xFF; while() PORTB = a; RANGKAIAN PEMBACAAN KEYPAD DENGAN LCD Rangkaian tombol 4x4 adalah rangkaian untuk membaca tombol 4x4 dari port keluaran mikrokontroller. Pada saat penekanan tombol key pad, data dari key pad akan ditampilkan dengan port serial komputer.

16 J6. J HEADER 5 pinb.5 pinb.6 pinb.7 RST R C3 00nF C pf X C pf 5k R9 U4 pinb.0 40 pinb. PB0(XCK/T0) PA0(ADC0) 39 pinb. 3 PB(T) PA(ADC) 38 4 PB(INT/AIN0) PA(ADC) 37 5 PB3(OC0/AIN) PA3(ADC3) 36 pinb.5 6 PB4(SS) PA4(ADC4) 35 pinb.6 7 PB5(MOSI) PA5(ADC5) 34 pinb.7 8 PB6[MISO) PA6(ADC6) 33 9 PB7[SCK) PA7(ADC7) 3 0 RESET AREF 3 AGND 30 GND A 9 3 XTAL PC7(TOSC) 8 PD0 4 XTAL PC6(TOSC) 7 PD 5 PD0(RXD) PC5 6 PD 6 PD(TXD) PC4 5 PD3 7 PD(INT0) PC3 4 PD4 8 PD3(INT) PC 3 PD5 9 PD4(OCB) PC(SDA) PD6 0 PD5(OCA) PC0(SCL) PD6(ICP) PD7(OC) PD7 ATMEGA6 pinb.0 pinb. pinb. A C pinb.4 pinb.5 pinb.6 pinb D3 HEADER 6 N400 S4 S8 S S6 S5 S9 S3 S7 S6 S0 S4 S8 PD0 PD PD PD3 PD4 PD5 PD6 PD7 S7 S S5 S9 Gambar 3. Rangkaian aplikasi tombol keypad dengan lcd PEMROGRAMAN PEMBACAAN KEYPAD Setelah rangkaian tombol 4x4 dibuat dan dihubungkan dengan port pararel mikrokontroller, maka sekarang saatnya Anda membuat program Program pembacaan tombol. 4x4. Program sebagai berikut ini //Program KEYPAD LCD //DEKLARASI HEADER #include <lcd.h> #include <stdio.h> #include <mega6.h> #include <delay.h>

17 //DEKLARASI PIN LCD #asm.equ lcd_port=0x8;portb #endasm //DEKLARASI VARIABEL unsigned char dt, dtkey; char buf[33]; //DEKLARASI SUB RUTIN KEYPAD void inkey(void); //PROGRAM UTAMA void main() PORTD = 0XFF; DDRD=0xF0; lcd_init(6); lcd_gotoxy(0,); lcd_putsf("hello world"); while() inkey(); lcd_gotoxy(0,); sprintf(buf,"hex %x ",dtkey); lcd_puts(buf); //SUB RUTIN KEYPAD void inkey(void) PORTD.4 = 0; dt = (~PIND & 0x0F); switch (dt) case :dtkey = 0x0; case :dtkey = 0x05; case 4:dtkey = 0x09; case 8:dtkey = 0x3; 3

18 PORTD.4 = ;PORTD.5 = 0; dt = (~PIND & 0x0F); switch (dt) case :dtkey = 0x0; case :dtkey = 0x06; case 4:dtkey = 0x0; case 8:dtkey = 0x4; PORTD.5 = ;PORTD.6 = 0; dt = (~PIND & 0x0F); switch (dt) case :dtkey = 0x03; case :dtkey = 0x07; case 4:dtkey = 0x; case 8:dtkey = 0x5; PORTD.6 = ;PORTD.7 = 0; dt = (~PIND & 0x0F); switch (dt) case :dtkey = 0x04; case :dtkey = 0x08; case 4:dtkey = 0x; case 8:dtkey = 0x6; PORTD.7 = ; RANGKAIAN SEVEN SEGMENT Rangkaian seven segment tunggal adalah rangkaian untuk menggerakkan penampil 7 segment secara langsung dari port keluaran mikrokontroller. Penampil seven segment yang digunakan common anoda. Data yang digunakan untuk menghasilkan angka atau huruf tertentu didapatkan dengan cara seperti pada Tabel 4. 4

19 R C3 00nF RST C pf X C pf PD0 PD PD PD3 PD4 PD5 PD6 U4 P0 40 P PB0(XCK/T0) PA0(ADC0) 39 P 3 PB(T) PA(ADC) 38 P3 4 PB(INT/AIN0) PA(ADC) 37 P4 5 PB3(OC0/AIN) PA3(ADC3) 36 P5 6 PB4(SS) PA4(ADC4) 35 P6 7 PB5(MOSI) PA5(ADC5) 34 P7 8 PB6[MISO) PA6(ADC6) 33 9 PB7[SCK) PA7(ADC7) 3 0 RESET AREF 3 AGND 30 GND A 9 3 XTAL PC7(TOSC) 8 4 XTAL PC6(TOSC) 7 5 PD0(RXD) PC5 6 6 PD(TXD) PC4 5 7 PD(INT0) PC3 4 8 PD3(INT) PC 3 9 PD4(OCB) PC(SDA) 0 PD5(OCA) PC0(SCL) PD6(ICP) PD7(OC) ATMEGA6 PD7 6 HEADER 5 JISP P5 P6 P7 RST GND PD0 PD PD PD3 PD4 PD5 PD6 PD Gambar 3. 3 Rangkaian aplikasi penggerak seven segmen tunggal PEMROGRAMAN SEVENT SEGMENT Setelah rangkaian seven segment dibuat dan dihubungkan dengan port pararel mikrokontroller, maka sekarang saatnya anda membuat program Program Seven Segment. Program ini digunakan untuk menampilkan data 3 dan secara bergantian. Program sebagai berikut ini - // Program Sevent Segmen Tunggal // DEKLARASI HEADER - #include <mega6.h> #include <delay.h> - //SUB RUTIN - void bin7seg(unsigned char data) switch(data) case 0 : PORTD = 0xc0; case : PORTD = 0xf9; case : PORTD = 0xa4; case 3 : 5

20 PORTD = 0xb0; case 4 : PORTD = 0x99; case 5 : PORTD = 0x9; case 6 : PORTD = 0x8; case 7 : PORTD = 0xf8; case 8 : PORTD = 0x80; case 9 : PORTD = 0x90; - //RUTIN UTAMA - void main(void) DDRD=0xFF; while() bin7seg(0); delay_ms(00); bin7seg(); delay_ms(00); 3.3. PIN Bila DDxn diset 0 maka Px berfungsi sebagai pin input. Bila PORTxn diset pada saat pin terkonfigurasi sebagai pin input, maka resistor pull-up akan diaktifkan. Untuk mematikan resistor pull-up, PORTxn harus diset 0 atau pin dikonfigurasi sebagai pin output. Pin port adalah tri-state setelah kondisi reset. Bila PORTxn diset pada saat pin terkonfigurasi sebagai pin output maka pin port akan berlogika. Dan bila PORTxn diset 0 pada saat pin terkonfigurasi sebagai pin output maka pin port akan berlogika 0. Saat mengubah kondisi port dari kondisi tri-state (DDxn=0, PORTxn=0) ke kondisi output high (DDxn=, PORTxn=) maka harus ada kondisi peralihan apakah itu kondisi pull-up enabled (DDxn=0, PORTxn=)atau kondisi output low (DDxn=, PORTxn=0). 6

21 Biasanya, kondisi pull-up enabled dapat diterima sepenuhnya, selama lingkungan impedansi tinggi tidak memperhatikan perbedaan antara sebuah strong high driver dengan sebuah pull-up. Jika ini bukan suatu masalah, maka bit PUD pada register SFIOR dapat diset untuk mematikan semua pull-up dalam semua port. Peralihan dari kondisi input dengan pullup ke kondisi output low juga menimbulkan masalah yang sama. Kita harus menggunakan kondisi tri-state (DDxn=0, PORTxn=0) atau kondisi output high (DDxn=, PORTxn=0) sebagai kondisi transisi. Bit PUD : Pull-up Disable. Bila bit diset bernilai maka pull-up pada port I/O akan dimatikan walaupun register DDxn dan PORTxn dikonfigurasikan untuk menyalakan pull-up (DDxn=0, PORTxn=) RANGKAIAN PEMBACAAN 8 TOMBOL Rangkaian pembacaan 8 buah tombol adalah rangkaian untuk membaca penekanan tombol yang terhubung pada port keluaran mikrokontroller yang hasilnya tertampil pada led. R C3 00nF C pf X C pf RST U 40 PB0(XCK/T0) PA0(ADC0) 39 3 PB(T) PA(ADC) 38 4 PB(INT/AIN0) PA(ADC) 37 5 PB3(OC0/AIN) PA3(ADC3) 36 6 PB4(SS) PA4(ADC4) 35 7 PB5(MOSI) PA5(ADC5) 34 8 PB6[MISO) PA6(ADC6) 33 9 PB7[SCK) PA7(ADC7) 3 0 RESET AREF 3 AGND 30 GND A 9 3 XTAL PC7(TOSC) 8 4 XTAL PC6(TOSC) 7 5 PD0(RXD) PC5 6 6 PD(TXD) PC4 5 7 PD(INT0) PC3 4 8 PD3(INT) PC 3 9 PD4(OCB) PC(SDA) 0 PD5(OCA) PC0(SCL) PD6(ICP) PD7(OC) ATMEGA6 PORTC.7 PORTC.6 PORTC.5 PORTC.4 PORTC.3 PORTC. PORTC. PORTC.0 PORTC.7 PORTC.6 PORTC.5 PORTC.4 PORTC.3 PORTC. PORTC. PORTC.0 JP R-PACK Gambar 3.4 Rangkaian aplikasi pembacaan 8 buah tombol PEMROGRAMAN PEMBACAAN 8 BUAH TOMBOL Setelah rangkaian tombol dibuat dan dihubungkan dengan port pararel mikrokontroller, maka sekarang saatnya Anda membuat program pembacaan tombol. Program sebagai berikut ini - //Program Program pembacaan 8 buah tombol //DEKLARASI HEADER - #include <mega6.h> #include <delay.h> 7

22 - //RUTIN UTAMA - void main(void) DDRC=0x00; DDRB=0xFF; while() PORTB = PINC; RANGKAIAN PEMBACAAN KEYPAD DENGAN LCD Rangkaian tombol 4x4 adalah rangkaian untuk membaca tombol 4x4 dari port keluaran mikrokontroller. Pada saat penekanan tombol key pad, data dari key pad akan ditampilkan dengan port serial komputer. J6. J HEADER 5 pinb.5 pinb.6 pinb.7 RST R C3 00nF C pf X C pf 5k R9 U4 pinb.0 40 pinb. PB0(XCK/T0) PA0(ADC0) 39 pinb. 3 PB(T) PA(ADC) 38 4 PB(INT/AIN0) PA(ADC) 37 5 PB3(OC0/AIN) PA3(ADC3) 36 pinb.5 6 PB4(SS) PA4(ADC4) 35 pinb.6 7 PB5(MOSI) PA5(ADC5) 34 pinb.7 8 PB6[MISO) PA6(ADC6) 33 9 PB7[SCK) PA7(ADC7) 3 0 RESET AREF 3 AGND 30 GND A 9 3 XTAL PC7(TOSC) 8 PD0 4 XTAL PC6(TOSC) 7 PD 5 PD0(RXD) PC5 6 PD 6 PD(TXD) PC4 5 PD3 7 PD(INT0) PC3 4 PD4 8 PD3(INT) PC 3 PD5 9 PD4(OCB) PC(SDA) PD6 0 PD5(OCA) PC0(SCL) PD6(ICP) PD7(OC) PD7 ATMEGA6 pinb.0 pinb. pinb. A C pinb.4 pinb.5 pinb.6 pinb D3 HEADER 6 N400 S4 S8 S S6 S5 S9 S3 S7 S6 S0 S4 S8 PD0 PD PD PD3 PD4 PD5 PD6 PD7 S7 S S5 S9 Gambar 3.5 Rangkaian aplikasi tombol keypad dengan lcd 8

23 PEMROGRAMAN PEMBACAAN KEYPAD Setelah rangkaian tombol 4x4 dibuat dan dihubungkan dengan port pararel mikrokontroller, maka sekarang saatnya Anda membuat program Program pembacaan tombol. 4x4. Program sebagai berikut ini //Program KEYPAD LCD //DEKLARASI HEADER #include <lcd.h> #include <stdio.h> #include <mega6.h> #include <delay.h> //DEKLARASI PIN LCD #asm.equ lcd_port=0x8;portb #endasm //DEKLARASI VARIABEL unsigned char dt, dtkey; char buf[33]; //DEKLARASI SUB RUTIN KEYPAD void inkey(void); //PROGRAM UTAMA void main() PORTD = 0XFF; DDRD=0xF0; lcd_init(6); lcd_gotoxy(0,); lcd_putsf("hello world"); while() inkey(); lcd_gotoxy(0,); sprintf(buf,"hex %x ",dtkey); lcd_puts(buf); 9

24 //SUB RUTIN KEYPAD void inkey(void) PORTD.4 = 0; dt = (~PIND & 0x0F); switch (dt) case :dtkey = 0x0; case :dtkey = 0x05; case 4:dtkey = 0x09; case 8:dtkey = 0x3; PORTD.4 = ;PORTD.5 = 0; dt = (~PIND & 0x0F); switch (dt) case :dtkey = 0x0; case :dtkey = 0x06; case 4:dtkey = 0x0; case 8:dtkey = 0x4; PORTD.5 = ;PORTD.6 = 0; dt = (~PIND & 0x0F); switch (dt) case :dtkey = 0x03; case :dtkey = 0x07; case 4:dtkey = 0x; case 8:dtkey = 0x5; PORTD.6 = ;PORTD.7 = 0; dt = (~PIND & 0x0F); switch (dt) case :dtkey = 0x04; case :dtkey = 0x08; 0

25 case 4:dtkey = 0x; case 8:dtkey = 0x6; PORTD.7 = ;

26 BAB IV ANALOG TO DIGITAL CONVERTER (OK) 4.. PENDAHULUAN ATmega6 mempunyai ADC (Analog to Digital Converter) internal dengan fitur sebagai berikut (untuk lebih detil dapat mengacu pada datasheet) : 0-bit Resolution μs Conversion Time Up to 5 ksps at Maximum Resolution 8 Multiplexed Single Ended Input Channels Optional Left Adjustment for ADC Result Readout 0 - ADC Input Voltage Range Selectable.56V ADC Reference Voltage Free Running or Single Conversion Mode ~ ADC Start Conversion by Auto Triggering on Interrupt 9 Ibit ha l 49 Sources Interrupt on ADC Conversion Complete Sleep Mode Noise Canceler Dibawah ini gambar timing diagram untuk mode single convertion maksudnya hanya satu input chanel saja yang dikonversi. Gambar 4. Timing diagram mode single conversion

27 4.. RANGKAIAN ADC ATMEGA DENGAN LED Rangkaian minimum untuk membaca ADC dengan tempilan LED ditunjukan pada Gambar 9.7 yang perlu diperhatikan adalah konfigurasi rangkaian LED yaitu Common Anode (CA) artinya untuk menghidupkan LED pada Port D, port D harus dikirim atau diberi logika 0. HEADER 5 R C3 00nF RST C pf X C pf JISP L P5 P6 P7 RST GND P0 P P P3 P4 P5 P6 P U4 PB0(XCK/T0) PA0(ADC0) PB(T) PA(ADC) PB(INT/AIN0) PA(ADC) PB3(OC0/AIN) PA3(ADC3) PB4(SS) PA4(ADC4) PB5(MOSI) PA5(ADC5) PB6[MISO) PA6(ADC6) PB7[SCK) PA7(ADC7) ATMEGA RESET AREF AGND GND A XTAL PC7(TOSC) XTAL PC6(TOSC) PD0(RXD) PC5 PD(TXD) PC4 PD(INT0) PC3 PD3(INT) PC PD4(OCB) PC(SDA) 0 PD5(OCA) PC0(SCL) PD6(ICP) PD7(OC) 3 R POT Gambar 4. Hasil pemasangan komponen ADC LED 4.3. PEMROGRAMAN ADC ATMEGA6 Setelah rangkaian adc mikrokontroller ATMEGA6 dibuat, maka sekarang saatnya Anda membuat program yang digunakan untuk membaca ADC ATMEGA6 dan menampilkan data ADC tersebut dengan menggunakan LED yang terhubung pada PORT D yang konfigurasi rangkaian LED yaitu Common Anode (CA). Program sebagai berikut ini - //Program ADC LED - - //DEKLARASI HEADER - #include <mega6.h> #include <stdio.h> #include <delay.h> - //DEKLARASI VARIABEL - unsigned int data_adc; 3

28 int suhu; - //DEFINISI VARIABEL - #define ADC_VREF_TYPE 0x60 - //SUB RUTIN ADC - unsigned char read_adc(unsigned char adc_input) ADMUX=adc_input ADC_VREF_TYPE; ADCSRA =0x40; while ((ADCSRA & 0x0)==0); ADCSRA =0x0; return ADCH; - //RUTIN UTAMA - void main(void) DDRD = 0xFF; ADMUX=ADC_VREF_TYPE; ADCSRA=0x87; SFIOR&=0xEF; while () data_adc=read_adc(0); suhu=~data_adc; PORTD = suhu; 4

29 BAB V TIMER / COUNTER (OK) 5.. PENDAHULUAN Timer/couter adalah tujuan umum single channel, module 8 bit timer/counter. Beberapa fasilitas chanel dari timer counter antara lain: Counter channel tunggal Pengosongan data timer sesuai dengan data pembanding Bebas -glitch, tahap yang tepat Pulse Width Modulator (PWM) Pembangkit frekuensi Event counter external Gambar 5. Blok diagram timer counter Gambar diagram block timer/counter 8 bit ditunjukan pada gambar di bawah ini. Untuk penempatan pin I/O telah di jelaskan Ibit hal 67 pada bagian I/O di atas. CPU dapat diakses register I/O, termasuk dalam pinpin I/O dan bit I/O. Device khusus register I/O dan lokasi bit terdaftar pada deskripsi timer/counter 8 bit pada gambar TIMING DIAGRAM TIMER/COUNTER Timer/counter disain sinkron clock timer (clkt0) oleh karena itu ditunjukan sebagai sinyal enable clock pada gambar berikut. Gambar ini termasuk informasi ketika flag interrupt dalam kondisi set. Data timing digunakan sebagai dasar dari operasi timer/counter. Sesuai dengan gambar dibawah timing diagram timer/counter dengan prescaling maksudnya adalah counter akan menambahkan data counter (TCNTn) ketika terjadi pulsa 5

30 clock telah mencapai 8 kali pulsa dan sinyal clock pembagi aktif clock dan ketika telah mencapai nilai maksimal maka nilai TCNTn akan kembali ke nol. Dan kondisi flag timer akan aktif ketika TCNTn maksimal. Gambar 5. Timing diagram timer/counter, tanpa prescaling Gambar 5. 3 Timing diagram timer/counter, dengan prescaling Gambar 5. 4 Timing diagram timer/counter, OCFO pescaler (fclk_i/o/8) 6

31 Sama halnya timing timer diatas, timing timer/counter dengan seting OCFO timer mode ini memasukan data ORCn sebagai data input timer. Ketika nilai ORCn sama dengan nilaitcntn maka pulsa flag timer akan aktif. TCNTn akan bertambah nilainya ketika pulsa clock telah mencapai 8 pulsa. Dan kondisi flag akan berbalik (komplemen) kondisi ketika nilai TCNTn kembali ke nilai 0 (overflow). Ketika nilai ORCn sama dengan nilai TCNTn maka pulsa flag timer akan aktif. TCNTn akan bertambah nilainya ketika pulsa clock telah mencapai 8 pulsa. Dan kondisi flag akan berbalik (komplemen) kondisi ketika nilai TCNTn kembalimkenilai 0 (overflow). Gambar 5. 5 Timing diagram timer/counter,,dengan pescaler (fclk_i/o/8) 5.3. RANGKAIAN MENCACAH COUNTER TIMER T0 Rangkaian minimum untuk counter melalui Port B.0 ditunjukan pada Gambar 6.. Rangkaian tersebut menggunakan penampil led. Konfigurasi rangkaian LED yaitu Common Anode (CA) artinya untuk menghidupkan LED pada Port D, port D harus dikirim atau diberi logika 0. HEADER 5 R C3 00nF RST C pf X C pf JISP L P5 P6 P7 RST GND P0 P P P3 P4 P5 P6 P U4 PB0(XCK/T0) PA0(ADC0) PB(T) PA(ADC) PB(INT/AIN0) PA(ADC) PB3(OC0/AIN) PA3(ADC3) PB4(SS) PA4(ADC4) PB5(MOSI) PA5(ADC5) PB6[MISO) PA6(ADC6) PB7[SCK) PA7(ADC7) ATMEGA RESET AREF AGND GND A XTAL PC7(TOSC) XTAL PC6(TOSC) PD0(RXD) PC5 PD(TXD) PC4 PD(INT0) PC3 PD3(INT) PC PD4(OCB) PC(SDA) 0 PD5(OCA) PC0(SCL) PD6(ICP) PD7(OC) Gambar 5.6 Hasil pemasangan komponen-komponen mencacah counter T0 7

32 5.4. PEMROGRAMAN MENCACAH COUNTER T0 Setelah rangkaian dibuat dan dihubungkan dengan port mikrokontroller, maka sekarang saatnya Anda membuat program yang digunakan untuk mencacah. Program cacah menggunakan port B.0 pada mikrokontroller. Program sebagai berikut ini // Program MENCACAH COUNTER TIMER 0 //DEKLARASI HEADER #include <mega6.h> #include <delay.h> #include <stdio.h> //DEKLARASI VARIABEL unsigned char led,a; //DEKLARASI SUB RUTIN void InisialisasiTIMER (); //RUTIN UTAMA void main (void) DDRD = 0xff; led=0x00; InisialisasiTIMER(); while() a = TCNT0; if (a == 0x06) led = PIND; PORTD=~led; TCNT0=0x00; 8

33 //SUB RUTIN INISIALISASI TIMER0 void InisialisasiTIMER () TCNT0=0x00; TCCR0=0x07; 5.5. PEMROGRAMAN MENCACAH COUNTER T0 Setelah rangkaian dibuat dan dihubungkan dengan port mikrokontroller, maka sekarang saatnya Anda membuat program yang digunakan untuk mencacah. Program cacah menggunakan port B.0 pada mikrokontroller. Program sebagai berikut ini // Program MENCACAH COUNTER TIMER 0 //DEKLARASI HEADER #include <mega6.h> #include <delay.h> #include <stdio.h> //DEKLARASI VARIABEL unsigned char led,a; //DEKLARASI SUB RUTIN void InisialisasiTIMER (); //RUTIN UTAMA void main (void) DDRD = 0xff; led=0x00; InisialisasiTIMER(); while() a = TCNT0; 9

34 if (a == 0x06) led = PIND; PORTD=~led; TCNT0=0x00; //SUB RUTIN INISIALISASI TIMER0 void InisialisasiTIMER () TCNT0=0x00; TCCR0=0x07; 30

35 BAB VI INTERUPSI (OK) 6.. PENDAHULUAN Interupsi adalah suatu kejadian atau peristiwa yang menyebabkan mikrokontroler berhenti sejenak untuk melayani interupsi tersebut. Program yang dijalankan pada saat melayani interupsi disebut Interrupt Service Routine. Pada sistem mikrokontroler yang sedang menjalankan programnya, saat terjadi interupsi, program akan berhenti sesaat, melayani interupsi tersebut dengan menjalankan program yang berada pada alamat yang ditunjuk oleh vektor dari interupsi yang terjadi hingga selesai dan kembali meneruskan program yang terhenti oleh interupsi tadi. Meskipun memerlukan pengertian yang lebih mendalam, pengetahuan mengenai interupsi sangat membantu mengatasi masalah pemrograman mikroprosesor / mikrokontroler dalam hal menangani banyak peralatan input/output. Pengetahuan mengenai interupsi tidak cukup hanya dibahas secara teori saja, diperlukan contoh program yang konkrit untuk memahami. ATMEGA6 memiliki buah sumber interupsi. Interupsi tersebut bekerja jika bit I pada Register status atau Status Register (SREG) dan bit pada masing-masing register bernilai. Tabel. Interrupt vektor 3

36 6.. RANGKAIAN INTERUPSI EKTERNAL Rangkaian berikut digunakan untuk interupsi ekternal mikrokontroller. Rangkaian tersebut menggunakan interupsi eksternal 0,, dan yang menggunakan tampilan LED yang dihubungkan pada Port A. R C3 00nF INT RST C pf X C pf P0 P P P3 P4 P5 P6 P U4 PB0(XCK/T0) PA0(ADC0) PB(T) PA(ADC) PB(INT/AIN0) PA(ADC) PB3(OC0/AIN) PA3(ADC3) PB4(SS) PA4(ADC4) PB5(MOSI) PA5(ADC5) PB6[MISO) PA6(ADC6) PB7[SCK) PA7(ADC7) ATMEGA RESET AREF AGND GND A XTAL PC7(TOSC) XTAL PC6(TOSC) PD0(RXD) PC5 PD(TXD) PC4 PD(INT0) PC3 PD3(INT) PC PD4(OCB) PC(SDA) 0 PD5(OCA) PC0(SCL) PD6(ICP) PD7(OC) L INT INT0 HEADER P5 P6 P7 RST GND JISP Gambar 6. Rangkaian interupsi ekternal mikrokontroller 6.3. PEMROGRAMAN INTERUPSI EKTERNAL INT0 Setelah membuat rangkaian interupsi ekternal untuk menghidupkan LED, maka sekarang saatnya Anda membuat program yang digunakan untuk menghidupkan LED dengan menggunakan interupsi external 0. Program sebagai berikut ini //Program interupsi eksternal 0 //EKLARASI HEADER #include <mega6.h> #include <delay.h> #include <stdio.h> 3

37 //EKLARASI VARIABEL unsigned char dt=0x0; //DEKLARASI SUB RUTIN void InisialisasiINT0(); //PROGRAM UTAMA void main (void) DDRA=0xff; InisialisasiINT0(); #asm ("sei"); while() PORTA=dt; delay_ms(00); dt=dt<<; if (dt==0) dt=0x0; //SUB RUTIN INTERUPSI EXTERNAL0 interrupt [EXT_INT0] void ext_int0_isr(void) unsigned char rr=0; while (rr<5) PORTA=0x0f; delay_ms(5); PORTA=0xf0; delay_ms(5); ++rr; //SUB RUTIN INISIALISASI INTERUPSI EXTERNAL0 void InisialisasiINT0 () GICR =0x80; MCUCR=0x0C; MCUCSR=0x00; 33

38 GIFR=0x80; 6.4. PEMROGRAMAN INTERUPSI EKTERNAL INT Setelah membuat rangkaian interupsi ekternal int, maka sekarang saatnya Anda membuat program yang digunakan untuk menghidupkan LED dengan menggunakan interupsi external int Program sebagai berikut ini //Program interupsi eksternal //EKLARASI HEADER #include <mega6.h> #include <delay.h> #include <stdio.h> //EKLARASI VARIABEL unsigned char dt=0x0; //DEKLARASI SUB RUTIN void InisialisasiINT(); //PROGRAM UTAMA void main (void) DDRA=0xff; InisialisasiINT(); #asm ("sei"); while() PORTA=dt; delay_ms(00); dt=dt<<; if (dt==0) dt=0x0; ; 34

39 //SUB RUTIN INTERUPSI EXTERNAL0 interrupt [EXT_INT] void ext_int_isr(void) unsigned char rr=0; while (rr<5) PORTA=0x0f; delay_ms(5); PORTA=0xf0; delay_ms(5); ++rr; //SUB RUTIN INISIALISASI INTERUPSI EXTERNAL0 void InisialisasiINT() GICR =0x80; MCUCR=0x0C; MCUCSR=0x00; GIFR=0x80; 6.5. RANGKAIAN INTERUPSI TIMER MIKROKONTROLLER Rangkaian berikut digunakan untuk interupsi ekternal mikrokontroller. Rangkaian tersebut menggunakan interupsi timer 0 dan yang menggunakan tampilan LED yang dihubungkan pada Port D. R C3 00nF JISP RST C pf X C pf HEADER P5 P6 P7 RST GND L P0 P P P3 P4 P5 P6 P U4 PB0(XCK/T0) PA0(ADC0) PB(T) PA(ADC) PB(INT/AIN0) PA(ADC) PB3(OC0/AIN) PA3(ADC3) PB4(SS) PA4(ADC4) PB5(MOSI) PA5(ADC5) PB6[MISO) PA6(ADC6) PB7[SCK) PA7(ADC7) ATMEGA RESET AREF AGND GND A XTAL PC7(TOSC) XTAL PC6(TOSC) PD0(RXD) PC5 PD(TXD) PC4 PD(INT0) PC3 PD3(INT) PC PD4(OCB) PC(SDA) 0 PD5(OCA) PC0(SCL) PD6(ICP) PD7(OC) Gambar 6. Rangkaian interupsi timer mikrokontroller 35

40 6.6. PEMROGRAMAN INTERUPSI TIMER 0 Setelah membuat rangkaian interupsi timer untuk menghidupkan LED, maka sekarang saatnya Anda membuat program yang digunakan untuk menghidupkan LED dengan menggunakan interupsi timer 0. Program sebagai berikut ini // Program INTERUPSI TIMER 0 //DEKLARASI HEADER #include <mega6.h> #include <delay.h> #include <stdio.h> //DEKLARASI VARIABEL unsigned char led=0xfe; //DEKLARASI SUB RUTIN Inisialisasi TIMER0 void InisialisasiTIMER0(); //PROGRAM UTAMA void main (void) DDRD=0xff; InisialisasiTIMER0(); #asm ("sei"); while(); //SUB RUTIN INTERUPSI TIMER0 interrupt [TIM0_OVF] void timer0_overflow(void) TCNT0=0x00; led<<=; led =; if (led==0xff) led=0xfe; PORTD=led; //SUB RUTIN INISIALISASI TIMER0 36

41 void InisialisasiTIMER0() TCNT0=0x00; TCCR0=0x05; TIMSK=0x0; TIFR=0x0; 6.7. PEMROGRAMAN INTERUPSI TIMER Setelah membuat rangkaian interupsi timer untuk menghidupkan LED, maka sekarang saatnya Anda membuat program yang digunakan untuk menghidupkan LED dengan menggunakan interupsi timer. Program sebagai berikut ini // Program INTERUPSI TIMER //DEKLARASI HEADER #include <mega6.h> #include <delay.h> #include <stdio.h> //DEKLARASI VARIABEL unsigned char led=0xfe; //DEKLARASI SUB RUTIN void InisialisasiTIMER(); //PROGRAM UTAMA void main (void) DDRD=0xff; InisialisasiTIMER(); #asm ("sei"); while(); //SUB RUTIN INTERUPSI TIMER interrupt [TIM_OVF] void timer_ovf_isr(void) 37

42 TCNTL=0x00; TCNTH=0x00; led<<=; led =; delay_ms(00); if (led==0xff) led=0xfe; PORTD=led; //SUB RUTIN INISIALISASI TIMER void InisialisasiTIMER() TCNTL=0x00; TCNTH=0x00; TCCRA=0x00; TCCRB=0x0; TIMSK=0x04; TIFR=0x04; 6.8. PEMROGRAMAN INTERUPSI TIMER Setelah membuat rangkaian interupsi timer untuk menghidupkan LED, maka sekarang saatnya Anda membuat program yang digunakan untuk menghidupkan LED dengan menggunakan interupsi timer. Program sebagai berikut ini // Program INTERUPSI TIMER //DEKLARASI HEADER #include <mega6.h> #include <delay.h> #include <stdio.h> //DEKLARASI VARIABEL unsigned char led=0xfe; //DEKLARASI SUB RUTIN void InisialisasiTIMER(); //PROGRAM UTAMA 38

43 void main (void) DDRD=0xff; InisialisasiTIMER(); #asm ("sei"); while(); //SUB RUTIN INTERUPSI TIMER interrupt [TIM_OVF] void timer_ovf_isr(void) TCNT=0x00; led<<=; led =; delay_ms(00); if (led==0xff) led=0xfe; PORTD=led; //SUB RUTIN INISIALISASI TIMER void InisialisasiTIMER() TCCR=0x05; TCNT=0x00; TIMSK=0x40; TIFR=0x40; 39

44 BAB VII SERIAL PORT(OK) 7.. PENDAHULUAN Universal synchronous dan asynchronous pemancar dan penerima serial adalah suatu alat komunikasi serial sangat fleksibel. Jenis yang utama adalah : Operasi full duplex (register penerima dan pengirim dapat berdiri sendiri ) Operasi Asychronous atau synchronous Master atau slave mendapat clock dengan operasi synchronous Pembangkit boud rate dengan resolusi tinggi Dukung frames serial dengan 5, 6, 7, 8 atau 9 Data bit dan atau Stop bit Tahap odd atau even parity dan parity check didukung oleh hardware Pendeteksian data overrun Pendeteksi framing error Pemfilteran gangguan ( noise ) meliputi pendeteksian bit false start dan pendeteksian low pass filter digital Tiga interrupt yaitu TX complete, TX data register empty dan RX complete. Mode komunikasi multi-processor Mode komunikasi double speed asynchronous 7.. INISIALISASI USART USART harus diinisialisasi sebelum komunikasi manapun dapat berlansung. Proses inisialisasi normalnyaterdiri daripengesetan boud rate, penyetingan frame format dan pengaktifan pengirim atau penerimatergantung pada pemakaian. Untuk interrupt menjalankan operasi USART, global interrupt flag ( penanda ) sebaiknya dibersihkan ( dan interrupt global disable ) ketika inisialisasi dilakukan. Sebelum melakukan inisialisasi ulang dengan mengubah boud rate atau frame format, untuk meyakinkan bahwa tidak ada transmisi berkelanjutan sepanjang peiode register yang diubah. Flag TXC dapat digunakan untuk mengecek bahwa pemancar telah melengkapi semua pengiriman, dan flag RXC dapat digunakan untuk mengecek bahwa tidak ada data yang tidak terbaca pada buffer penerima. Tercatat bahwa flag TXC harus dibersihkan sebelum tiap transmisi ( sebelum UDR ditulisi ) jika itu semua digunakan untuk tujuan tersebut. USART sederhana inisialisasi kode contoh berikut menunjukan fungsi satu assembly dan satu C itu mempunyai kesamaan dalam kemampuan. Pada contoh tersebit 40

45 mengasumsikan bahwa operasi asinkron menggunakan metode poling ( tidak ada interrupt enable ) frame format yang tetap. Boud rate diberikan sebagai fungsi parameter. Untuk kode assembly, parameter boud rate diasumsikan untuk di simpan pada register r6, r7. Ketika menulis fungsi pada register UCSRC, bit URSEL (MSB) harus diset dalam kaitan dengan pembagian penempatan I/O oleh UBRRH dan UCSRC. Lebih mengedepankan inisialisasi rutin dapat dibuat seperti itu meliputi frame format sebagai parameter, disable interrupt dan lain-lain. Bagai manapun juga banyak aplikasi menggunakan seting tetap boud dan register control, dan untuk aplikasi jenis ini dapat ditempatkan secara langsung pada keseluruhan routine, atau dikombinasikan dengan inisialisasi kode untuk modul I/O yang lain RANGKAIAN SERIAL MIKROKONTROLLER Rangkaian berikut digunakan untuk interfacing Led dengan port serial. Rangkaian tersebut, sebagai konverter dari serial ke pararel. Berikut adalah rangkaian serial led driver yang akan kita hubungkan pada port serial. Rangkaian Led Driver Serial menggunakan Microcontroller ATMEGA6 yang dihubungkan ke port serial dengan menggunakan IC RS3 Rangkaian Serial LED Driver ini akan mendeteksi setiap pengiriman data karakter dari port serial computer. HEADER R 5 JISP C3 00nF RST C pf X C pf P5 P6 P7 RST GND U4 P0 40 P PB0(XCK/T0) PA0(ADC0) 39 P 3 PB(T) PA(ADC) 38 P3 4 PB(INT/AIN0) PA(ADC) 37 P4 5 PB3(OC0/AIN) PA3(ADC3) 36 P5 6 PB4(SS) PA4(ADC4) 35 P6 7 PB5(MOSI) PA5(ADC5) 34 P7 8 PB6[MISO) PA6(ADC6) 33 9 PB7[SCK) PA7(ADC7) 3 0 RESET AREF 3 AGND 30 GND A 9 3 XTAL PC7(TOSC) 8 PD0 4 XTAL PC6(TOSC) 7 PD 5 PD0(RXD) PC5 6 PD 6 PD(TXD) PC4 5 PD3 7 PD(INT0) PC3 4 PD4 8 PD3(INT) PC 3 PD5 9 PD4(OCB) PC(SDA) PD6 0 PD5(OCA) PC0(SCL) PD6(ICP) PD7(OC) ATMEGA6 DATA0 DATA DATA DATA3 DATA4 DATA5 DATA6 DATA7 ADD8 ADD9 ADD0 ADD ADD ADD3 ADD4 ADD5 PD7 L HEADER 3 3 JSerial U6 8 RX 3 RIN TIN 7 RIN ROUT 0 TX 4 TOUT TIN 9 TOUT ROUT uf 6V C+ C+ 4 uf 6V + C4 + C5 uf 6V + C8 3 6 V+ V- MAX3 C- C- 5 uf 6V C9 + Gambar 7. Hasil pemasangan komponen rangkaian serial mikrokontroller 4

46 7.4. PEMROGRAMAN PORT SERIAL MIKROKONTROLLER Setelah membuat dan menjalankan program mengirim data serial, maka sekarang saatnya Anda membuat program kedua yang digunakan untuk program mengirim dan menerima data serial. Program sebagai berikut ini - //Program Bab 5.. MENGIRIM DAN MENERIMA DATA - - //DEKLARASI HEADER - #include <mega6.h> #include <delay.h> #include <stdio.h> - //DEKLARASI VARIABEL - unsigned char data_terima = 0x00; const long int osilator = ; unsigned long int UBRR; //DEKLARASI SUB RUTIN void InisialisasiUSART (unsigned long int baud_rate); //PROGRAM UTAMA void main(void) DDRC = 0xFF; PORTC = 0x00; InisialisasiUSART(9600); putsf("selamat Datang Mas Iswanto"); putchar(3); while() putsf("tekan sembarang tombol"); putchar(3); data_terima = getchar(); delay_ms(00); putsf("anda menekan tombol "); putchar(data_terima);; putchar(3); 4

47 //SUB RUTIN BAUDRATE void InisialisasiUSART (unsigned long int baud_rate) UBRR = (osilator/(6*baud_rate))-; UBRRL = UBRR; UBRRH = UBRR>>8; UCSRB = 0x8; UCSRC = 0x86; 43

48 BAB VIII PWM(OK) 8.. PENDAHULUAN PWM (Pulse Width Modulation) dapat digunakan untuk mengatur kecepatan motor, yaitu dengan cara mengatur lebar pulsa (waktu ON) dari tegangan sumbernya (tegangan DC). Perbandingan antara waktu ON dan waktu OFF disebut duty cycle (siklus kerja). Semakin besar siklus kerjanya, akan semakin besar pula keluaran yang dihasilkan, sehingga kecepatan motor akan semakin besar. Pembangkitan sinyal PWM dengan mikrokontroler memiliki beberapa keuntungan, seperti teknik pemrograman yang sederhana, dan rangkaian listrik menjadi sederhana. Mikrokontroler AVR ATMEGA6 dapat digunakan sebagai pembangkit gelombang PWM. Mikrokontroler AVR ATMEGA6 mempunyai PWM yang telah terintegrasi dalam chip. Keluaran dari PWM tersebut terdapat pada pin 5 (OC). Untuk menjalankan program PWM, diperlukan 3 unit register timer, yaitu: a. Timer/Counter Control Register (TCCR), untuk menentukan mode PWM. b. Timer/Counter Register (TCNT), digunakan untuk menentukan modulasi frekuensinya. c. Output Compare Register (OCR), untuk menentukan nilai siklus kerjanya. Dalam mikrokontroler ATMEGA6, terdapat beberapa mode PWM. Mode PWM yang akan dibahas adalah mode Fast PWM, karena dalam perancangan sistem robot ini menggunakan mode Fast PWM. Pada mode Fast PWM, semakin besar nilai OCR, maka akan semakin besar pula siklus kerja yang dihasilkan. Keluaran PWM akan berlogika tinggi setelah nilai TOP tercapai sampai nilai OCR tercapai dan kemudian akan berlogika rendah sampai nilai TOP tercapai kembali. Prinsip kerja dari Fast PWM dapat dilihat pada Gambar 0.. nilai counter nilai OCR TOP Keluaran Gambar 8. Prinsip Kerja Mode Fast PWM Untuk menghitung siklus kerja digunakan rumus: 44

49 OCR D x00%...0. TOP Untuk menentukan frekuensi PWM dihitung dengan rumus: f PWM fclock...0. N( TOP) Sedangkan untuk menentukan resolusi PWM digunakan rumus: R PWM log( TOP ) log keterangan: N adalah faktor prescaler (, 8, 64, 56, atau 04), dan TOP adalah nilai tertinggi dari pengaturan counter. 8.. RANGKAIAN PWM MIKROKONTROLLER Rangkaian minimum untuk pwm melalui Port D.4 dan Port D.5 ditunjukan pada Gambar 0.. Rangkaian tersebut menggunakan diver motor dc yaitu transistor. Rangkaian driver tersebut akan di hubungkan dengan pin D.4 dan pin D.5. JISP 5V R C3 00nF RST C pf X C pf RST pinb.7 pinb.6 pinb.5 pinb.5 pinb.6 pinb.7 5V U 40 PB0(XCK/T0) PA0(ADC0) 39 3 PB(T) PA(ADC) 38 4 PB(INT/AIN0) PA(ADC) 37 5 PB3(OC0/AIN) PA3(ADC3) 36 6 PB4(SS) PA4(ADC4) 35 7 PB5(MOSI) PA5(ADC5) 34 8 PB6[MISO) PA6(ADC6) 33 9 PB7[SCK) PA7(ADC7) 3 0 RESET AREF 3 AGND 30 GND A 9 3 XTAL PC7(TOSC) 8 4 XTAL PC6(TOSC) 7 5 PD0(RXD) PC5 6 6 PD(TXD) PC4 5 7 PD(INT0) PC3 4 8 PD3(INT) PC 3 9 PD4(OCB) PC(SDA) 0 PD5(OCA) PC0(SCL) PD6(ICP) PD7(OC) ATMEGA6 5V V MG D DIODE EN 470 Q TI903 TIP3055 MOTOR DC V D MG DIODE EN TI903 MOTOR DC 470 TIP3055 Gambar 8. Hasil pemasangan komponen rangkaian minimum untuk pwm 45

50 8.3. PEMROGRAMAN PWM MIKROKONTROLLER Setelah rangkaian dibuat dan dihubungkan dengan port mikrokontroller, maka sekarang saatnya Anda membuat program yang digunakan untuk mengatur putaran motor dc. Program sebagai berikut ini - // Program PWM // DEKLARASI HEADER - #include <stdio.h> #include <mega6.h> #include <delay.h> //DEKLARASI SUB RUTIN void InisialisasiPWM(); //DEKLARASI VARIABEL int data; int data; //RUTIN UTAMA void main (void) InisialisasiPWM(); while() data = 50; data = 04; OCRA=data; OCRB=data; TIFR=0; //SUB RUTIN INISIALISASI PWM void InisialisasiPWM() DDRD=0xff; TCCRA=0xa3; TCCRB=0x0b; TCNT=0x0000; 46

51 DAFTAR PUSTAKA [] Iswanto, Design dan Implementasi Sistem Embedded Mikrokontroler ATMEGA8535 dengan Bahasa Basic. Yogyakarta: Gava Media, 008. [] I. Iswanto, N. M. Raharja, and A. Subardono, Sistem Peringatan Dini Tanah Longsor Berbasis Atmega8535, in Seminar Nasional Informatika 009 (semnasif 009), 009, pp [3] R. T. A. Sadad and Iswanto, Implementasi Mikrokontroler Sebagai Pengendali Kapasitor Untuk Perbaikan Faktor Daya Otomatis pada Jaringan Listrik, SEMESTA Tek., vol. 3, no., pp. 8 9, 00. [4] I. Iswanto and N. M. Raharja, Sistem monitoring dan peringatan dini tanah longsor, in Simposium Nasional RAPI IX 00, 00, pp [5] A. N. N. Chamim and Iswanto, Implementasi Mikrokontroler Untuk Pengendalian Lampu Dengan Sms, in Prosending Retii 6., 0. [6] I. Ambar Tri Utomo, Ramadani Syahputra, Implementasi Mikrokontroller Sebagai Pengukur Suhu Delapan Ruangan, Pengukur Suhu, vol. 4, no. Pengukur Suhu Delapan Ruangan, pp , 0. [7] R. T. A. Sadad and Iswanto, Peranan Teknologi Solar Cell dalam Peningkatan Daya Saing Usaha Kecil dan Menengah, SEMESTA Tek., vol. 4, no., pp , 0. [8] R. T. A. SADAD, IANTO, and J. A. SADAD, Implementasi Mikrokontroler Sebagai Pengendali Lift Empat Lantai, J. Ilm. SEMESTA Tek., vol. 4, no., pp , 0. [9] IANTO, A. JAMAL, and F. SETIADY, Implementasi Telepon Seluler sebagai Kendali Lampu Jarak Jauh, J. Ilm. Semesta Tek., vol. 4, no., pp. 8 85, 0. [0] IANTO and H. MUHAMMAD, WEATHER MONITORING STATION WITH REMOTE RADIO FREQUENCY WIRELESS COMMUNICATIONS, Int. J. Embed. Syst. Appl., vol., no. 3, pp , 0. [] S. Suripto and Iswanto, DESAIN AND IMPLEMENTATION OF FM RADIO WAVES AS DISTANCE MEASURING AC VOLTAGE, Int. J. Mob. Netw. Commun. Telemat., vol., no. 5, pp. 3 4, 0. [] I. Iswanto and R. D. Setiawan, Power Saver with PIR Sensor, J. Control Instrum., vol. 4, no. 3, pp. 6 34, 03. [3] A. Wahyudianto, Iswanto, and A. N. N. Chamim, ALAT PENGONTROL LAMPU MENGGUNAKAN REMOTE TV UNIVERSAL, in SEMINAR NASIONAL ke 8 Tahun 03, 03, pp. 6. [4] R. an T. A. Sadad, Iswanto, R. I. F. An, and T. A. S. Sadad, Remote Measurement System Ground Shift with GSM, Int. J. Mob. Netw. Commun. Telemat. ( IJMNCT), vol. 3, no. 3, pp. 65 7, 03. [5] H. Muhammad and Iswanto, EGT 0 Design and Application For Position, Int. J. 47

BAB III TEORI PENUNJANG. arsitektur Reduced Instruction Set Computer (RISC). Hampir semua instruksi

BAB III TEORI PENUNJANG. arsitektur Reduced Instruction Set Computer (RISC). Hampir semua instruksi BAB III TEORI PENUNJANG Pada bab tiga penulis menjelaskan tentang teori penunjang kerja praktek yang telah dikerjakan. 3.1 Mikrokontroler ATMega16 AVR merupakan seri mikrokontroler CMOS 8-bit buatan Atmel,

Lebih terperinci

MENGENAL MIKROKONTROLER ATMEGA-16

MENGENAL MIKROKONTROLER ATMEGA-16 MENGENAL MIKROKONTROLER ATMEGA-16 AVR merupakan seri mikrokontroler CMOS 8-bit buatan Atmel, berbasis arsitektur RISC (Reduced Instruction Set Computer). Hampir semua instruksi dieksekusi dalam satu siklus

Lebih terperinci

PRAKTIKUM III Robot Line Follower Sederhana

PRAKTIKUM III Robot Line Follower Sederhana PRAKTIKUM III Robot Line Follower Sederhana A. Tujuan 1. Mahasiswa dapat mengkombinasikan antara pengontrolan motor dengan PWM, dengan sensor proximity dengan ADC. 2. Mahasiswa dapat membuat program robot

Lebih terperinci

Pengenalan Bahasa C. 1. Struktur penulisan program. #include < [library2.h] > #define [nama2] [nilai] ;

Pengenalan Bahasa C. 1. Struktur penulisan program. #include < [library2.h] > #define [nama2] [nilai] ; Pengenalan Bahasa C 1. Struktur penulisan program #include < [library1.h] > #include < [library2.h] > #define [nama1] [nilai] ; #define [nama2] [nilai] ; [global variables] [functions] void main(void)

Lebih terperinci

MICROCONTROLER AVR AT MEGA 8535

MICROCONTROLER AVR AT MEGA 8535 MICROCONTROLER AVR AT MEGA 8535 Dwisnanto Putro, S.T., M.Eng. MIKROKONTROLER AVR Jenis Mikrokontroler AVR dan spesifikasinya Flash adalah suatu jenis Read Only Memory yang biasanya diisi dengan program

Lebih terperinci

DAFTAR ISI. Daftar Pustaka P a g e

DAFTAR ISI. Daftar Pustaka P a g e DAFTAR ISI Halaman I. DASAR TEORI Mikrokontroler ATmega16 1. Pengertian Mikrokontroler... 2 2. Arsitektur ATmega16... 2 3. Konfigurasi Pena (PIN) ATmega16... 4 4. Deskripsi PIN Mikrokontroler ATmega16...

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

Sistem Minimum Mikrokontroler. TTH2D3 Mikroprosesor

Sistem Minimum Mikrokontroler. TTH2D3 Mikroprosesor Sistem Minimum Mikrokontroler TTH2D3 Mikroprosesor MIKROKONTROLER AVR Mikrokontroler AVR merupakan salah satu jenis arsitektur mikrokontroler yang menjadi andalan Atmel. Arsitektur ini dirancang memiliki

Lebih terperinci

MENGENAL MIKROKONTROLER AVR ATMega16

MENGENAL MIKROKONTROLER AVR ATMega16 MENGENAL MIKROKONTROLER AVR ATMega16 Mokh. Sholihul Hadi m_sholihul_hadi@yahoo.com Lisensi Dokumen: Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan

Lebih terperinci

BAB II KONSEP DASAR PERANCANGAN

BAB II KONSEP DASAR PERANCANGAN BAB II KONSEP DASAR PERANCANGAN Pada bab ini akan dijelaskan konsep dasar sistem keamanan rumah nirkabel berbasis mikrokontroler menggunakan modul Xbee Pro. Konsep dasar sistem ini terdiri dari gambaran

Lebih terperinci

MICROCONTROLER AVR AT MEGA 8535

MICROCONTROLER AVR AT MEGA 8535 MICROCONTROLER AVR AT MEGA 8535 Dwisnanto Putro, S.T., M.Eng. MIKROKONTROLER AVR Mikrokontroler AVR merupakan salah satu jenis arsitektur mikrokontroler yang menjadi andalan Atmel. Arsitektur ini dirancang

Lebih terperinci

BAB 3 PERANCANGAN ALAT. Rangkaian Catu daya (Power Supply Adaptor) ini terdiri dari satu keluaran, yaitu 5

BAB 3 PERANCANGAN ALAT. Rangkaian Catu daya (Power Supply Adaptor) ini terdiri dari satu keluaran, yaitu 5 BAB 3 PERANCANGAN ALAT 3.1. Perancangan Rangkaian Catu Daya Rangkaian ini berfungsi untuk mensupplay tegangan ke seluruh rangkaian yang ada. Rangkaian Catu daya (Power Supply Adaptor) ini terdiri dari

Lebih terperinci

BAB III PERANCANGAN DAN REALISASI SISTEM

BAB III PERANCANGAN DAN REALISASI SISTEM BAB III PERANCANGAN DAN REALISASI SISTEM 3. Perancangan Perangkat Keras Setelah mempelajari teori yang menunjang dalam merealisasikan alat maka langkah berikutnya adalah membuat suatu rancangan perangkat

Lebih terperinci

BAB III METODE PENELITIAN

BAB III METODE PENELITIAN BAB III METODE PENELITIAN 3.1 Perancangan Perangkat Keras 3.1.1 Blok Diagram Diagram blok pengembangan breastpump elektrik berbasis mikrokontroler ATMega8535 dilengkapi dengan pengatur waktu dan tekanan

Lebih terperinci

TUGAS MATAKULIAH APLIKASI KOMPUTER DALAM SISTEM TENAGA LISTRIK FINAL REPORT : Pengendalian Motor DC menggunakan Komputer

TUGAS MATAKULIAH APLIKASI KOMPUTER DALAM SISTEM TENAGA LISTRIK FINAL REPORT : Pengendalian Motor DC menggunakan Komputer TUGAS MATAKULIAH APLIKASI KOMPUTER DALAM SISTEM TENAGA LISTRIK FINAL REPORT : Pengendalian Motor DC menggunakan Komputer disusun oleh : MERIZKY ALFAN ADHI HIDAYAT AZZA LAZUARDI JA FAR JUNAIDI 31780 31924

Lebih terperinci

BAB III PERANCANGAN SISTEM. dari pembuatan alat yang meliputi perancangan hardware dan perancangan

BAB III PERANCANGAN SISTEM. dari pembuatan alat yang meliputi perancangan hardware dan perancangan BAB III PERANCANGAN SISTEM Pada bab ini penulis akan membahas perancangan yang merupakan proses dari pembuatan alat yang meliputi perancangan hardware dan perancangan software. Dimana perancangan software

Lebih terperinci

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM BAB III PERANCANGAN SISTEM Pada bab ini akan dibahas mengenai perancangan dan realisasi dari perangkat keras maupun perangkat lunak dari setiap modul yang dipakai pada skripsi ini. 3.1. Perancangan dan

Lebih terperinci

BAB III PERANCANGAN DAN REALISASI ALAT

BAB III PERANCANGAN DAN REALISASI ALAT BAB III PERANCANGAN DAN REALISASI ALAT Pada bab ini akan dijelaskan perancangan skripsi yang dibuat yang terdiri dari perancangan perangkat keras dan perancangan perangkat lunak. Perancangan perangkat

Lebih terperinci

Pulsa = Frekuensi * 60/20 ; atau Pulsa = frekuensi*30;

Pulsa = Frekuensi * 60/20 ; atau Pulsa = frekuensi*30; JUDUL : Penghitung Kecepatan Motor DC dengan Display LCD 16X2 Berbasis Mikrokontroler ATMega16 TUJUAN : - Menghitung nilai kecepatan motor dc dengan satuan rpm - Menampilkan nilai rpm ke tampilan LCD -

Lebih terperinci

Sistem Mikrokontroler FE UDINUS

Sistem Mikrokontroler FE UDINUS Minggu ke 2 8 Maret 2013 Sistem Mikrokontroler FE UDINUS 2 Jenis jenis mikrokontroler Jenis-jenis Mikrokontroller Secara teknis, hanya ada 2 macam mikrokontroller. Pembagian ini didasarkan pada kompleksitas

Lebih terperinci

MODUL 8 Analog Digital Converter (ADC)

MODUL 8 Analog Digital Converter (ADC) MODUL 8 Analog Digital Converter (ADC) AVR ATMega16 merupakan tipe AVR yang telah dilengkapi dengan 8 saluran ADC internal dengan resolusi 10 bit. Dalam mode operasinya, ADC dapatdi konfigurasi, baik single

Lebih terperinci

PEMBUATAN RANGKAIAN LAMPU OTOMATIS DENGAN KONTROL JAM MENGGUNAKAN MIKROKONTROLLER ATMEGA 8535

PEMBUATAN RANGKAIAN LAMPU OTOMATIS DENGAN KONTROL JAM MENGGUNAKAN MIKROKONTROLLER ATMEGA 8535 PEMBUATAN RANGKAIAN LAMPU OTOMATIS DENGAN KONTROL JAM MENGGUNAKAN MIKROKONTROLLER ATMEGA 855 Disusun oleh : Nama : Hotman panjaitan NPM : 6409576 Jurusan : Teknik Elektro Dosen Pembimbing : Erma Triawati

Lebih terperinci

I. Pendahuluan. II. Tujuan. III. Gambaran Disain. MODUL 6 Meter Cahaya Digital

I. Pendahuluan. II. Tujuan. III. Gambaran Disain. MODUL 6 Meter Cahaya Digital MODUL 6 Meter Cahaya Digital I. Pendahuluan Pada praktikum ini, anda akan mencoba memanfaatkan fasilitas masukan analog pada mikrokontroler AVR ATmega8535. ATmega8535 mempunyai ADC (Analog to Digital Converter)

Lebih terperinci

BAB III PERANCANGAN ALAT

BAB III PERANCANGAN ALAT BAB III PERANCANGAN ALAT Pada bab ini akan dijelaskan mengenai perencanaan pembuatan alat telemetri suhu tubuh.perencanaan dilakukan dengan menentukan spesfikasi system secara umum,membuat system blok

Lebih terperinci

Perancangan PENGKODEAN NRZ-L DAN MANCHESTER BERBASIS MIKROKONTROLER ATMEGA8535. SKRIPSI (Resume)

Perancangan PENGKODEAN NRZ-L DAN MANCHESTER BERBASIS MIKROKONTROLER ATMEGA8535. SKRIPSI (Resume) Perancangan PENGKODEAN NRZ-L DAN MANCHESTER BERBASIS MIKROKONTROLER ATMEGA8535 SKRIPSI (Resume) Untuk Memenuhi Sebagai Persyaratan Mencapai derajat Sarjana S-1 Program Studi Teknik Elektro Disusun oleh:

Lebih terperinci

BAB III TEORI PENUNJANG. Microcontroller adalah sebuah sistem fungsional dalam sebuah chip. Di

BAB III TEORI PENUNJANG. Microcontroller adalah sebuah sistem fungsional dalam sebuah chip. Di BAB III TEORI PENUNJANG 3.1. Microcontroller ATmega8 Microcontroller adalah sebuah sistem fungsional dalam sebuah chip. Di dalamnya terkandung sebuah inti proccesor, memori (sejumlah kecil RAM, memori

Lebih terperinci

Dasar Pemrograman Mikrokontroler dengan Bahasa C

Dasar Pemrograman Mikrokontroler dengan Bahasa C Dasar Pemrograman Mikrokontroler dengan Bahasa C Pokok Bahasan: 1. Penggunaan Fungsi (Using Functions) 2. Penanaman bahasa rakitan di dalam Program 'C' Tujuan Belajar: Setelah mempelajari dalam bab ini,

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1 Water Flow Sensor G1/2 Water Flow Sensor ini terdiri terbuat dari plastik dimana didalamnya terdapat rotor dan sensor Hall Effect. Saat air mengalir melewati rotor, rotor akan

Lebih terperinci

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

I. Pendahuluan. II. Tujuan. III. Gambaran Disain. MODUL 7 Monitoring Suhu dan Cahaya ke PC

I. Pendahuluan. II. Tujuan. III. Gambaran Disain. MODUL 7 Monitoring Suhu dan Cahaya ke PC MODUL 7 Monitoring Suhu dan Cahaya ke PC I. Pendahuluan Pada praktikum ini, anda akan mencoba memanfaatkan fasilitas komunikasi serial pada mikrokontroler AVR ATmega8535. Modul praktikum sebelumnya adalah

Lebih terperinci

BAB III PERANCANGAN DAN REALISASI PERANGKAT KERAS DAN PERANGKAT LUNAK SISTEM. Dari diagram sistem dapat diuraikan metode kerja sistem secara global.

BAB III PERANCANGAN DAN REALISASI PERANGKAT KERAS DAN PERANGKAT LUNAK SISTEM. Dari diagram sistem dapat diuraikan metode kerja sistem secara global. BAB III PERANCANGAN DAN REALISASI PERANGKAT KERAS DAN PERANGKAT LUNAK SISTEM 3.1 Perancangan Perangkat Keras 3.1.1 Blok Diagram Dari diagram sistem dapat diuraikan metode kerja sistem secara global. Gambar

Lebih terperinci

III. METODOLOGI PENELITIAN. Penelitian dan perancangan tugas akhir ini telah dimulai sejak bulan Juli 2009

III. METODOLOGI PENELITIAN. Penelitian dan perancangan tugas akhir ini telah dimulai sejak bulan Juli 2009 III. METODOLOGI PENELITIAN A. Waktu dan Tempat Penelitian Penelitian dan perancangan tugas akhir ini telah dimulai sejak bulan Juli 2009 dilakukan di Laboratorium Konversi Energi Elektrik dan Laboratorium

Lebih terperinci

Standar Operasional Prosedur Alat

Standar Operasional Prosedur Alat LAMPIRAN Standar Operasional Prosedur Alat 1. Letakkan sampel/objek yang akan dibersihkan pada keranjang didalam chamber 2. Pastikan chamber telah terisi oleh air sebelum alat dihidupkan. Isi air secukupnya

Lebih terperinci

BAB III METODOLOGI PENELITIAN

BAB III METODOLOGI PENELITIAN BAB III METODOLOGI PENELITIAN 3. 1. Blok Diagram Hot Plate Program LCD TOMBOL SUHU MIKROKON TROLER DRIVER HEATER HEATER START/ RESET AVR ATMega 8535 Gambar 3.1. Blok Diagram Hot Plate Fungsi masing-masing

Lebih terperinci

A. MIKROKONTROLLER Sebenarnya apakah yang disebut dengan mikrokontroler? Sebuah kontroler digunakan untuk mengontrol suatu proses atau aspek-aspek

A. MIKROKONTROLLER Sebenarnya apakah yang disebut dengan mikrokontroler? Sebuah kontroler digunakan untuk mengontrol suatu proses atau aspek-aspek A. MIKROKONTROLLER Sebenarnya apakah yang disebut dengan mikrokontroler? Sebuah kontroler digunakan untuk mengontrol suatu proses atau aspek-aspek dari lingkungan. Satu contoh aplikasi dari mikrokontroler

Lebih terperinci

BAB 2 LANDASAN TEORI. Mikrokontroler AVR (Alf and Vegard s RISC Processor) dari Atmel ini

BAB 2 LANDASAN TEORI. Mikrokontroler AVR (Alf and Vegard s RISC Processor) dari Atmel ini BAB 2 LANDASAN TEORI 2.1 Mikrokontroller ATMega 8535 Mikrokontroler AVR (Alf and Vegard s RISC Processor) dari Atmel ini menggunakan arsitektur RISC (Reduced Instruction Set Computing) yang artinya proses

Lebih terperinci

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA BAB II TINJAUAN PUSTAKA 1.1 Penelitian Terdahulu Sebagai bahan pertimbangan dalam penelitian ini akan dicantumkan beberapa hasil penelitian terdahulu : Penelitian yang dilakukan oleh Universitas Islam

Lebih terperinci

Listing Program. // Declare your global variables here

Listing Program. // Declare your global variables here Listing Program #include // standart input/output library #include // delay library #include // Alphanumeric LCD functions #include // adc mode avcc 10bit #define ADC_VREF_TYPE

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1 Teori Dasar Mikrokontroller ATMega8535 Perkembangan teknologi telah maju dengan pesat dalam perkembangan dunia elektronika, khususnya dunia mikroelektronika. Penemuan silicon

Lebih terperinci

Praktikum Mikrokontroler. untuk D4 Lanjut Jenjang. Disiapkan oleh: Hary Oktavianto

Praktikum Mikrokontroler. untuk D4 Lanjut Jenjang. Disiapkan oleh: Hary Oktavianto Praktikum Mikrokontroler untuk D4 Lanjut Jenjang Disiapkan oleh: Hary Oktavianto Politeknik Elektronika Negeri Surabaya 2010 Aturan Praktikum Agar praktikum dapat berjalan dengan lancar dan tertib, praktikan

Lebih terperinci

BAB II DASAR TEORI 2.1. Mikrokontroler AVR ATmega32

BAB II DASAR TEORI 2.1. Mikrokontroler AVR ATmega32 BAB II DASAR TEORI Pada bab ini akan menerangkan beberapa teori dasar yang mendukung terciptanya skripsi ini. Teori-teori tersebut antara lain mikrokontroler AVR ATmega32, RTC (Real Time Clock) DS1307,

Lebih terperinci

BAB III LANDASAN TEORI. digunakan seperti MCS51 adalah pada AVR tidak perlu menggunakan oscillator

BAB III LANDASAN TEORI. digunakan seperti MCS51 adalah pada AVR tidak perlu menggunakan oscillator BAB III LANDASAN TEORI 3.1 Microcontroller Atmega 8 AVR merupakan salah satu jenis mikrokontroler yang di dalamnya terdapat berbagai macam fungsi. Perbedaannya pada mikro yang pada umumnya digunakan seperti

Lebih terperinci

BAB III PERANCANGAN DAN PEMBUATAN SISTEM. perangkat keras maupun perangkat lunak yang meliputi:

BAB III PERANCANGAN DAN PEMBUATAN SISTEM. perangkat keras maupun perangkat lunak yang meliputi: 48 BAB III PERANCANGAN DAN PEMBUATAN SISTEM Pada bab ini akan membahas tentang cara perencanaan dan pembuatan perangkat keras maupun perangkat lunak yang meliputi: 3.1 Konstruksi Fisik Pendulum Terbalik

Lebih terperinci

LAMPIRAN. #include <mega16.h> //menambahkan library atmega16 #include <delay.h> //menambahkan library delay #define ADC_VREF_TYPE 0x40

LAMPIRAN. #include <mega16.h> //menambahkan library atmega16 #include <delay.h> //menambahkan library delay #define ADC_VREF_TYPE 0x40 LAMPIRAN #include //menambahkan library atmega16 #include //menambahkan library delay #define ADC_VREF_TYPE 0x40 // Fungsi untuk mengaktifkan dan membaca nilai adc unsigned int read_adc(unsigned

Lebih terperinci

BAB 3 PERANCANGAN SISTEM. pada sistem pengendali lampu telah dijelaskan pada bab 2. Pada bab ini akan dijelaskan

BAB 3 PERANCANGAN SISTEM. pada sistem pengendali lampu telah dijelaskan pada bab 2. Pada bab ini akan dijelaskan BAB 3 PERANCANGAN SISTEM Konsep dasar mengendalikan lampu dan komponen komponen yang digunakan pada sistem pengendali lampu telah dijelaskan pada bab 2. Pada bab ini akan dijelaskan perancangan sistem

Lebih terperinci

PERANCANGAN ALAT PEMBERI MAKAN IKAN OTOMATIS DAN PEMANTAU KEADAAN AKUARIUM BERBASIS MIKROKONTROLER ATMEGA8535

PERANCANGAN ALAT PEMBERI MAKAN IKAN OTOMATIS DAN PEMANTAU KEADAAN AKUARIUM BERBASIS MIKROKONTROLER ATMEGA8535 SINGUDA ENSIKOM VOL. NO. /April 0 PERANCANGAN ALAT PEMBERI MAKAN IKAN OTOMATIS DAN PEMANTAU KEADAAN AKUARIUM BERBASIS MIKROKONTROLER ATMEGA Recky Suharmon, T. Ahri Bahriun Konsentrasi Teknik Komputer,

Lebih terperinci

Workshop MIKROKONTROLER ATMEGA16. DI SMA Muhammadiyah BANTUL

Workshop MIKROKONTROLER ATMEGA16. DI SMA Muhammadiyah BANTUL Workshop MIKROKONTROLER ATMEGA16 DI SMA Muhammadiyah BANTUL Jurusan Teknik Elektro Fakultas Teknik Universitas Muhammadiyah Yogyakarta 2013 1 MIKROKONTROLER ATMEGA16 Apa itu Mikrokontroler? Komputer hadir

Lebih terperinci

Laboratorium MIKROKONTROLER 1 AVR ATmega8535

Laboratorium MIKROKONTROLER 1 AVR ATmega8535 Laporan Praktikum Laboratorium MIKROKONTROLER 1 AVR ATmega8535 Proyek 05 Keypad Disusun oleh: Kelompok EK-2A / 06 06 09 - Bayu Triatmono - Hanfil Lutfia Anisa NIM NIM 3.32.13.0.06 3.32.13.0.09 Dosen: Dr.

Lebih terperinci

BAB III PERENCANAAN DAN PEMBUATAN ALAT

BAB III PERENCANAAN DAN PEMBUATAN ALAT BAB III PERENCANAAN DAN PEMBUATAN ALAT 3.1. Gambaran Umum Merupakan alat elektronika yang memiliki peranan penting dalam memudahkan pengendalian peralatan elektronik di rumah, kantor dan tempat lainnya.

Lebih terperinci

BAB III DESKRIPSI DAN PERANCANGAN SISTEM

BAB III DESKRIPSI DAN PERANCANGAN SISTEM BAB III DESKRIPSI DAN PERANCANGAN SISTEM 3.1. DESKRIPSI KERJA SISTEM Gambar 3.1. Blok diagram sistem Satelit-satelit GPS akan mengirimkan sinyal-sinyal secara kontinyu setiap detiknya. GPS receiver akan

Lebih terperinci

MIKROKONTROLER ATMEGA BERBASIS CODEVISION AVR (ADC DAN APLIKASI TERMOMETER) dins D E P O K I N S T R U M E N T S

MIKROKONTROLER ATMEGA BERBASIS CODEVISION AVR (ADC DAN APLIKASI TERMOMETER) dins D E P O K I N S T R U M E N T S MIKROKONTROLER ATMEGA BERBASIS CODEVISION AVR (ADC DAN APLIKASI TERMOMETER) dins D E P O K I N S T R U M E N T S ADC Konsep Dasar ADC ADC = Analog to Digital Converter Pengubah sinyal analog menjadi sinyal

Lebih terperinci

BAB II TINJAUAN PUSTAKA. Atmel AVR adalah jenis mikrokontroler yang paling sering dipakai dalam

BAB II TINJAUAN PUSTAKA. Atmel AVR adalah jenis mikrokontroler yang paling sering dipakai dalam BAB II TINJAUAN PUSTAKA 2.1 Mikrokontroler ATMega 8535 Atmel AVR adalah jenis mikrokontroler yang paling sering dipakai dalam bidang elektronika dan instrumentasi. Mikrokontroler AVR ini memiliki arsitektur

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 III PERANCANGAN DAN PEMBUATAN PERANGKAT KERAS

BAB III PERANCANGAN DAN PEMBUATAN PERANGKAT KERAS BAB III PERANCANGAN DAN PEMBUATAN PERANGKAT KERAS 3.1. Pendahuluan Perangkat pengolah sinyal yang dikembangkan pada tugas sarjana ini dirancang dengan tiga kanal masukan. Pada perangkat pengolah sinyal

Lebih terperinci

Tabel Data Pengujian 5x Perubahan Posisi. Kanan (V) Kiri (V)

Tabel Data Pengujian 5x Perubahan Posisi. Kanan (V) Kiri (V) LAMPIRAN Tabel Data Pengujian 5x Perubahan Posisi 1. Motor 2 tak Kawasaki Ninja 2011 Waktu (menit) Tengah Kanan Kiri Atas Bawah Ratarata 3 8,60 8,62 8,60 8,63 8,62 8,614 6 8,60 8,52 8,54 8,66 8,65 8,594

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1. Sistem Minimum AVR USB Sistem minimum ATMega 8535 yang didesain sesederhana mungkin yang memudahkan dalam belajar mikrokontroller AVR tipe 8535, dilengkapi internal downloader

Lebih terperinci

SKEMATIK RANGKAIAN A V R 12V. Out. Gnd. Kontak Motor. Accu 12V. Klakson ISP CONNECTOR PA0 PB0 PB1 PA2 PA4 MOSI MISO PA6. 10uF SCK RST. 10uF. 47uF.

SKEMATIK RANGKAIAN A V R 12V. Out. Gnd. Kontak Motor. Accu 12V. Klakson ISP CONNECTOR PA0 PB0 PB1 PA2 PA4 MOSI MISO PA6. 10uF SCK RST. 10uF. 47uF. SKEMATIK RANGKAIAN 5V 4 U L N 0 0 3 8 15 13 5V NOR CLOSED NOR OPEN 1V Klakson IGNITION COIL Accu ISP CONNECTOR 5 4 3 1 PB0 PB1 A V R PA0 PA D B 9 M A L E 3 7 4 5 1uF 16 1 1uF 3 4 1uF 5 7 8 14 M A X 3 15

Lebih terperinci

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM BAB III PERANCANGAN SISTEM Pada bab ini akan dijelaskan mengenai perancangan dari perangkat keras, serta perangkat lunak dari alat akuisisi data termokopel 8 kanal. 3.1. Gambaran Sistem Alat yang direalisasikan

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Mikrokontroler Atmega8535 Mikrokontroler adalah IC yang dapat diprogram berulang kali, baik ditulis atau dihapus (Agus Bejo, 2007). Biasanya digunakan untuk pengontrolan otomatis

Lebih terperinci

BAB IV CARA KERJA DAN PERANCANGAN SISTEM. ketiga juri diarea pertandingan menekan keypad pada alat pencatat score, setelah

BAB IV CARA KERJA DAN PERANCANGAN SISTEM. ketiga juri diarea pertandingan menekan keypad pada alat pencatat score, setelah BAB IV CARA KERJA DAN PERANCANGAN SISTEM 4.1 Diagram Blok Sistem Blok diagram dibawah ini menjelaskan bahwa ketika juri dari salah satu bahkan ketiga juri diarea pertandingan menekan keypad pada alat pencatat

Lebih terperinci

JEMBATAN TIMBANG UNTUK PENGGUNA KURSI RODA

JEMBATAN TIMBANG UNTUK PENGGUNA KURSI RODA 45 JEMBATAN TIMBANG UNTUK PENGGUNA KURSI RODA Elisabeth Widyarini 1), Ferry A.V. Toar 2), Lanny Agustine 2) E-mail: eli_wm04@yahoo.com ABSTRAK Perkembangan teknologi bertujuan untuk memberikan kemudahan

Lebih terperinci

BAB III LANDASAN TEORI. Kinerja tinggi, rendah daya Atmel AVR 8-bit Microcontroller Instruksi Powerfull - Kebanyakan Single-jam Siklus Eksekusi

BAB III LANDASAN TEORI. Kinerja tinggi, rendah daya Atmel AVR 8-bit Microcontroller Instruksi Powerfull - Kebanyakan Single-jam Siklus Eksekusi BAB III LANDASAN TEORI 3.1 Microcontroller ATMega32 Fitur Kinerja tinggi, rendah daya Atmel AVR 8-bit Microcontroller Advanced RISC Arsitektur - 131 Instruksi Powerfull - Kebanyakan Single-jam Siklus Eksekusi

Lebih terperinci

Interfacing. Materi 2: AVR Architecture. Disusun Oleh: I Nyoman Kusuma Wardana

Interfacing. Materi 2: AVR Architecture. Disusun Oleh: I Nyoman Kusuma Wardana Interfacing Materi 2: AVR Architecture Disusun Oleh: I Nyoman Kusuma Wardana Outline Keluarga Mikrokontroler AVR Arsitektur internal AVR RISC Von Neumann dan Harvard Architecture Atmega16 Workshop Kusuma

Lebih terperinci

BAB 3 PERANCANGAN ALAT. Sensor Utrasonik. Relay. Relay

BAB 3 PERANCANGAN ALAT. Sensor Utrasonik. Relay. Relay BAB 3 PERANCANGAN ALAT 3.1 Diagram Blok Berikut ini adalah diagram blok sistem rancang bangun alat pengontrol volume air dan aerator pada kolam budidaya udang menggunakan mikrokontroler. Sensor Utrasonik

Lebih terperinci

PELATIHAN: Pemrograman Mikrokontroler Tipe AVR bagi Guru-guru SMK

PELATIHAN: Pemrograman Mikrokontroler Tipe AVR bagi Guru-guru SMK PELATIHAN: Pemrograman Mikrokontroler Tipe AVR bagi Guru-guru SMK Disusun oleh: Bekti Wulandari, M.Pd Fakultas Teknik UNIVERSITAS NEGERI YOGYAKARTA 2015 Mikrokontroler AVR ATmega MATERI 1 PENGENALAN MIKROKONTROLER

Lebih terperinci

MIKROKONTROLER Yoyo Somantri dan Egi Jul Kurnia

MIKROKONTROLER Yoyo Somantri dan Egi Jul Kurnia MIKROKONTROLER Yoyo Somantri dan Egi Jul Kurnia Mikrokontroler Mikrokontroler adalah sistem komputer yang dikemas dalam sebuah IC. IC tersebut mengandung semua komponen pembentuk komputer seperti CPU,

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1. Karbon Monoksida (CO) Karbon monoksida merupakan gas yang tidak berwarna, tidak berbau, tidak berasa, tidak mudah larut dalam air, tidak menyebabkan iritasi, beracun dan berbahaya

Lebih terperinci

BAB III RANCANG BANGUN SISTEM KARAKTERISASI LED. Rancangan sistem karakterisasi LED diperlihatkan pada blok diagram Gambar

BAB III RANCANG BANGUN SISTEM KARAKTERISASI LED. Rancangan sistem karakterisasi LED diperlihatkan pada blok diagram Gambar BAB III RANCANG BANGUN SISTEM KARAKTERISASI LED 3.1. Rancang Bangun Perangkat Keras Rancangan sistem karakterisasi LED diperlihatkan pada blok diagram Gambar 3.1. Sistem ini terdiri dari komputer, antarmuka

Lebih terperinci

BAB IV ANALISIS DATA DAN PEMBAHASAN

BAB IV ANALISIS DATA DAN PEMBAHASAN 34 BAB IV ANALISIS DATA DAN PEMBAHASAN Dalam bab IV ini akan dibahas tentang analisis data dan pembahasan berdasarkan perencanaan dari sistem yang dibuat. Rancangan alat indikator alarm ini digunakan untuk

Lebih terperinci

BAB IV PEMBAHASAN. waktu tertentu. Dimana alat tersebut dapat dioperasikan melalui komputer serta

BAB IV PEMBAHASAN. waktu tertentu. Dimana alat tersebut dapat dioperasikan melalui komputer serta 41 BAB IV PEMBAHASAN 4.1 Proses Kerja Sistem Pencacah Nuklir Sistem Pencacah Nuklir adalah sebuah alat yang digunakan untuk mencacah intensitas radiasi yang ditangkap oleh detektor nuklir dalam selang

Lebih terperinci

Gambar 2.1 Mikrokontroler ATMega 8535 (sumber :Mikrokontroler Belajar AVR Mulai dari Nol)

Gambar 2.1 Mikrokontroler ATMega 8535 (sumber :Mikrokontroler Belajar AVR Mulai dari Nol) BAB II TINJAUAN PUSTAKA 2.1 Mikrokontroler Mikrokontroler merupakan keseluruhan sistem komputer yang dikemas menjadi sebuah chip di mana di dalamnya sudah terdapat Mikroprosesor, I/O Pendukung, Memori

Lebih terperinci

Mikroprosesor Z80 Suryanto Sutikno

Mikroprosesor Z80 Suryanto Sutikno Mikroprosesor Z80 Suryanto Sutikno A. Pendahuluan Mikrokontroler merupakan lompatan teknologi mikroprosesor dan mikrokomputer. Mikrokontroler diciptakan tidak semata-mata hanya memenuhi kebutuhan kalangan

Lebih terperinci

Pengenalan CodeVisionAVR

Pengenalan CodeVisionAVR Pengenalan CodeVisionAVR Hendawan Soebhakti Oktober 2009 Sub Pokok Bahasan Pengenalan CodeVision Menampilkan Data Ke Port Output Membaca Data Dari Port Input 2 CodeVisionAVR C Compiler CodeVisionAVR C

Lebih terperinci

SISTEM PERINGATAN DINI TANAH LONGSOR BERBASIS ATMEGA8535

SISTEM PERINGATAN DINI TANAH LONGSOR BERBASIS ATMEGA8535 Seminar Nasional Informatika 00 (semnasif 00) ISSN: - UPN Veteran Yogyakarta, Mei 00 SISTEM PERINGATAN DINI TANAH LONGSOR BERBASIS ATMEGA Iswanto ), Nia Maharani Raharja ), Alif Subardono ) Diploma Teknik

Lebih terperinci

BAB II KONSEP DASAR SISTEM MONITORING TEKANAN BAN

BAB II KONSEP DASAR SISTEM MONITORING TEKANAN BAN BAB II KONSEP DASAR SISTEM MONITORING TEKANAN BAN Konsep dasar sistem monitoring tekanan ban pada sepeda motor secara nirkabel ini terdiri dari modul sensor yang terpasang pada tutup pentil ban sepeda

Lebih terperinci

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM BAB III PERANCANGAN SISTEM Pada Bab III ini akan diuraikan mengenai perancangan perangkat keras dan perangkat lunak yang digunakan untuk membangun sistem keamanan rumah nirkabel berbasis mikrokontroler

Lebih terperinci

JAM DIGITAL 2.2 REGISTER TCNT, TIMSK, OCR, DAN TIFR 1. PENDAHULUAN 2. STUDI PUSTAKA 2.1 CLOCK DAN PRESCALER 3. METODOLOGI 3.

JAM DIGITAL 2.2 REGISTER TCNT, TIMSK, OCR, DAN TIFR 1. PENDAHULUAN 2. STUDI PUSTAKA 2.1 CLOCK DAN PRESCALER 3. METODOLOGI 3. JAM DIGITAL Freddy Isman (13213501) Fuad Ismail (13214121) EL3014- Sistem Mikroprosesor Sekolah Teknik Elektro dan Informatika ITB Abstrak Kali ini, kami membuat sebuah sistem jam digital menggunakan mikrokontroler

Lebih terperinci

BAB III METODE PENELITIAN. Tujuan dari tugas akhir ini yaitu akan membuat sebuah mobile Robot

BAB III METODE PENELITIAN. Tujuan dari tugas akhir ini yaitu akan membuat sebuah mobile Robot BAB III METODE PENELITIAN 3.1. Model Pengembangan Tujuan dari tugas akhir ini yaitu akan membuat sebuah mobile Robot yang mampu membantu manusia dalam mendeteksi kebocoran gas. Robot ini berperan sebagai

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1. Motor DC dan Motor Servo 2.1.1. Motor DC Motor DC berfungsi mengubah tenaga listrik menjadi tenaga gerak (mekanik). Berdasarkan hukum Lorenz bahwa jika suatu kawat listrik diberi

Lebih terperinci

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM BAB III PERANCANGAN SISTEM 3.1 Rancangan Perangkat Keras 3.1.1 Blok Diagram Sistem Blok diagram dari sistem AVR standalone programmer adalah sebagai berikut : Tombol Memori Eksternal Input I2C PC SPI AVR

Lebih terperinci

II. TINJAUAN PUSTAKA. menjadi sumber tegangan arus searah yang bersifat variable. Pengubah daya DC-

II. TINJAUAN PUSTAKA. menjadi sumber tegangan arus searah yang bersifat variable. Pengubah daya DC- II. TINJAUAN PUSTAKA A. Pengenalan DC Chopper Chopper adalah suatu alat yang mengubah sumber tegangan arus searah tetap menjadi sumber tegangan arus searah yang bersifat variable. Pengubah daya DC- DC

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Water Flow Sensor Yf-S201 Sensor aliran air ini terbuat dari palstik dimana didalamnya terdapat rotor dan sensor hall effect.saat mengalir melewati rotor, rotor akan berputar.

Lebih terperinci

BAB III METODE PENELITIAN DAN PERANCANGAN SISTEM. secara otomatis. Sistem ini dibuat untuk mempermudah user dalam memilih

BAB III METODE PENELITIAN DAN PERANCANGAN SISTEM. secara otomatis. Sistem ini dibuat untuk mempermudah user dalam memilih BAB III METODE PENELITIAN DAN PERANCANGAN SISTEM 3.1 Model Penelitian Pada perancangan tugas akhir ini menggunakan metode pemilihan locker secara otomatis. Sistem ini dibuat untuk mempermudah user dalam

Lebih terperinci

OHMMETER DIGITAL BERBASIS MICROCONTROLLER

OHMMETER DIGITAL BERBASIS MICROCONTROLLER OHMMETER DIGITAL BERBASIS MICROCONTROLLER DISUSUN OLEH : ZULVA TRI DIANTI (7308.030.055) ZENDY KURNIA WIDARTO (7308.030.056) DOSEN : EPYK SUNARNO, SST,MT JURUSAN TEKNIK ELEKTRO INDUSTRI POLITEKNIK ELEKTRONIKA

Lebih terperinci

DAFTAR PUSTAKA. Universitas Sumatera Utara

DAFTAR PUSTAKA. Universitas Sumatera Utara DAFTAR PUSTAKA Andrianto, Heri. 2008. Pemrograman Mikrokontroler AVR ATmega16 Menggunakan Bahasa C. Bandung: Penerbit Informatika. Bejo, Agus. 2007. C & AVR Rahasia Kemudahan Bahasa C Dalam Mikrokontroler

Lebih terperinci

BAB III MIKROKONTROLER

BAB III MIKROKONTROLER BAB III MIKROKONTROLER Mikrokontroler merupakan sebuah sistem yang seluruh atau sebagian besar elemennya dikemas dalam satu chip IC, sehingga sering disebut single chip microcomputer. Mikrokontroler merupakan

Lebih terperinci

SISTEM MONITORING DAN PERINGATAN DINI TANAH LONGSOR

SISTEM MONITORING DAN PERINGATAN DINI TANAH LONGSOR Simposium Nasional RAPI IX 00 ISSN: - SISTEM MONITORING DAN PERINGATAN DINI TANAH LONGSOR Iswanto, Nia Maharani Raharja Jurusan Teknik Elektro, Fakultas Teknik, Universitas Muhammadiyah Yogyakarta Jl.

Lebih terperinci

BAB III PERANCANGAN ALAT DAN PROGRAM MIKROKONTROLER. program pada software Code Vision AVR dan penanaman listing program pada

BAB III PERANCANGAN ALAT DAN PROGRAM MIKROKONTROLER. program pada software Code Vision AVR dan penanaman listing program pada BAB III PERANCANGAN ALAT DAN PROGRAM MIKROKONTROLER Pada tahap perancangan ini dibagi menjadi 2 tahap perancangan. Tahap pertama adalah perancangan perangkat keras (hardware), yang meliputi rangkaian rangkaian

Lebih terperinci

INSTRUKSI. TTH2D3 Mikroprosesor

INSTRUKSI. TTH2D3 Mikroprosesor INSTRUKSI TTH2D3 Mikroprosesor AT Mega 32 pin diagram Port B Port A Port D Port C ATMega32 Pin out & Descriptions Mega32/Mega16 (XCK/T0) PB0 PA0 (ADC0) (T1) PB1 PA1 (ADC1) (INT2/AIN0) PB2 PA2 (ADC2) (OC0/AIN1)

Lebih terperinci

BAB IV HASIL DAN UJI COBA

BAB IV HASIL DAN UJI COBA BAB IV HASIL DAN UJI COBA IV.1. Software Instalasi merupakan hal yang sangat penting karena merupakan proses penginputan data dari komputer ke dalam mikrokontroler. Sebelum melakukan instalasi, hubungkan

Lebih terperinci

LAMPIRAN A. Gambar A. Layout alat tongkat tunanetra. Ubiversitas Sumatera Utara

LAMPIRAN A. Gambar A. Layout alat tongkat tunanetra. Ubiversitas Sumatera Utara LAMPIRAN A Pada gambar A. di bawah ini menjelaskan tentang layout atau susunan komponen yang mencakup semuanya alat tongkat tunanetra selanjutnya dapat di lihat pada gambar sebagai berikut : Gambar A.

Lebih terperinci

BAB III PERANCANGAN. Mikrokontroler ATMEGA Telepon Selular User. Gambar 3.1 Diagram Blok Sistem

BAB III PERANCANGAN. Mikrokontroler ATMEGA Telepon Selular User. Gambar 3.1 Diagram Blok Sistem BAB III PERANCANGAN 3.1 Prnsip Kerja Sistem Sistem yang akan dibangun, secara garis besar terdiri dari sub-sub sistem yang dikelompokan ke dalam blok-blok seperti terlihat pada blok diagram pada gambar

Lebih terperinci

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM BAB III PERANCANGAN SISTEM Pada bab ini akan dijelaskan langkah-langkah yang akan digunakan didalam menyelesaikan pembuatan alat elektrostimulator.perencanaan tersebut meliputi dua bagian yaitu perencanaan

Lebih terperinci

BAB 4 HASIL DAN PEMBAHASAN

BAB 4 HASIL DAN PEMBAHASAN BAB 4 HASIL DAN PEMBAHASAN Tahap pengujian sistem dilakukan dengan tujuan adalah untuk mengetahui hasil dari perancangan yang telah dibuat pada Bab 3. Pengujian sistem ini terdiri dari beberapa tahapan,

Lebih terperinci

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM BAB III PERANCANGAN SISTEM Pada bab ini membahas perencanaan dan pembuatan dari alat yang akan dibuat yaitu Perencanaan dan Pembuatan Pengendali Suhu Ruangan Berdasarkan Jumlah Orang ini memiliki 4 tahapan

Lebih terperinci

BAB IV HASIL DAN PEMBAHASAN. Setelah pembuatan modul maka perlu dilakukan pendataan melalui proses

BAB IV HASIL DAN PEMBAHASAN. Setelah pembuatan modul maka perlu dilakukan pendataan melalui proses BAB IV HASIL DAN PEMBAHASAN 4.1 Pengujian Dan Pengukuran Setelah pembuatan modul maka perlu dilakukan pendataan melalui proses pengujian dan pengukuran. Tujuan dari pengujian dan pengukuran yaitu mengetahui

Lebih terperinci

Analisa Kinerja Sensor Suhu NTC dan LM35 Dalam Sistem Pendeteksian Suhu Ruangan Berbasis Mikrokontroler AVR ATmega 16

Analisa Kinerja Sensor Suhu NTC dan LM35 Dalam Sistem Pendeteksian Suhu Ruangan Berbasis Mikrokontroler AVR ATmega 16 Analisa Kinerja Sensor Suhu NTC dan LM35 Dalam Sistem Pendeteksian Suhu Ruangan Berbasis Mikrokontroler AVR ATmega 16 Yunidar 1 *, Alfisyahrin 2 dan Yuli Rahmad 3 1 Program Studi Teknik Elektro Universitas

Lebih terperinci

BAB III ANALISIS MASALAH DAN RANCANGAN ALAT

BAB III ANALISIS MASALAH DAN RANCANGAN ALAT BAB III ANALISIS MASALAH DAN RANCANGAN ALAT III.1. Analisa Masalah Rotating Display adalah alat untuk menampilkan informasi berupa tulisan bergerak dengan menggunakan motor DC. Hal ini berkaitan dengan

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1 Mikrokontroller ATMEGA 8535 Mikrokontroller merupakan sebuah single chip yang didalamnya telah dilengkapi dengan CPU (Central Processing Unit), RAM (Random Acces Memory), ROM

Lebih terperinci

ABSTRAK. Hendra Manase Jl. Babakan Jeruk Gg. Barokah No. 25, 40164,

ABSTRAK. Hendra Manase Jl. Babakan Jeruk Gg. Barokah No. 25, 40164, APLIKASI MIKROKONTROLER AVR ATMEGA 16 UNTUK MENGATUR KECEPATAN MOTOR DC SECARA NIRKABEL MELALUI GELOMBANG RADIO Hendra Manase Jl. Babakan Jeruk Gg. Barokah No. 25, 40164, 085222266776 Email: hendramanase@yahoo.co.id

Lebih terperinci