MODUL I
MIKROKONTROLLER ATMEGA128
DAFTAR ISI
3. Dasar Teori
1. Tujuan [kembali]
2. ADC 10 bit sebanyak 8 saluran.
3. 2 buah Timer/Counter 8 bit dan 2 buah Timer/Counter 16 bit.
4. Dua buah PWM 8 bit.
5. Watchdog Timer dengan osilator internal.
6. Internal SRAM sebesar 4 kbyte.
7. Memori flash sebesar 128 kBytes.
8. Interupsi Eksternal.
9. Port antarmuka SPI.
10. EEPROM sebesar 4 kbyte.
11. Real time counter.
12. 2 buah Port USART untuk komunikasi serial.
13. Enam kanal PWM.
14. Tegangan operasi sekitar 4,5 V sampai dengan 5,5V
a. Merangkai dan menguji output pada mikrokontroller ATMEGA 128
b. Merangkai dan menguji input pada mikrokontroller ATMEGA 128
c. Merangkai dan menguji I/O pada mikrokontroller ATMEGA 128
2. Alat dan Bahan [kembali]
a. ATMEGA 128
Mikrokontroller ATMEGA 128 merupakan mikrokontroller keluarga AVR yang mempunyai kapasitas flash memori 128KB. AVR (Alf and Vegard’s Risc Processor) merupakan seri mikrokontroler CMOS 8-bit buatan ATEMEL inc, berdasarkan arsitektur RISC (Reduced Instruction Set Computer). Secara umum, AVR dapat terbagi menjadi 4 kelas, yaitu keluarga ATtiny, keluarga AT90Sxx, keluarga AT-Mega, dan AT86RFxx. Pada dasarnya yang membedakan masing-masing kelas adalah memori, peripheral, dan fungsinya. Dari segi arsitektur dan instruksi yang digunakan, bisa dikatakan hampir sama. Semua jenis AVR dilengkapi dengan flash memori sebagai memori program. Kapasitas dari flash memori ini berbeda antara chip yang satu dengan chip yang lain. Tergantung dari jenis IC yang digunakan. Untuk flash memori yang paling kecil adalah 1 kbytes (ATtiny11, ATtiny12, dan ATtiny15) dan paling besar adalah 128 kbytes (AT-Mega128). Berikut ini adalah spesifikasi Mikrokontroler AVR ATMega-128 dan konfigurasi pin ATMEGA 128.
1. Saluran I/O sebanyak 56 buah, yaitu Port A, Port B, Port C, Port D, Port E, Port F dan Port G.2. ADC 10 bit sebanyak 8 saluran.
3. 2 buah Timer/Counter 8 bit dan 2 buah Timer/Counter 16 bit.
4. Dua buah PWM 8 bit.
5. Watchdog Timer dengan osilator internal.
6. Internal SRAM sebesar 4 kbyte.
7. Memori flash sebesar 128 kBytes.
8. Interupsi Eksternal.
9. Port antarmuka SPI.
10. EEPROM sebesar 4 kbyte.
11. Real time counter.
12. 2 buah Port USART untuk komunikasi serial.
13. Enam kanal PWM.
14. Tegangan operasi sekitar 4,5 V sampai dengan 5,5V
b. LED
LED adalah suaatu semikonduktor yang memancarkan cahaya, LED mempunyai kecenderungan polarisasi. LED mempunyai kutub positif dan negatif (p-n) dan hanya akan menyala bila diberikan arus maju. Ini dikarenakan LED terbuat dari bahan semikonduktor yang hanya akan mengizinkan arus listrik mengalir ke satu arah dan tidak ke arah sebaliknya. Bila LED diberikan arus terbalik, hanya akan ada sedikit arus yang melewati LED. Ini menyebabkan LED tidak akan mengeluarkan emisi cahaya.
c. Buzzer
Buzzer adalah sebuah komponen elektronika yang berfungsi untuk mengubah getaran listrik menjadi getaran suara. Pada dasarnya prinsip kerja buzzer hampir sama dengan loud speaker, jadi buzzer juga terdiri dari kumparan yang terpasang pada diafragma dan kemudian kumparan tersebut dialiri arus sehingga menjadi elektromagnet, kumparan tadi akan tertarik ke dalam atau keluar, tergantung dari arah arus dan polaritas magnetnya, karena kumparan dipasang pada diafragma maka setiap gerakan kumparan akan menggerakkan diafragma secara bolak-balik sehingga membuat udara bergetar yang akan menghasilkan suara. Buzzer biasa digunakan sebagai indikator bahwa proses telah selesai atau terjadi suatu kesalahan pada sebuah alat (alarm).
d. Keypad
Penyusun tombol pada keypad dapat dibuat dari bermacam-macam bahan/komponen, seperti switch metal, switch karbon, dan resistif/kapasitif (touch panel). Penggunaan bahan tersebut disesuaikan dengan kebutuhan akan sensifitas, aksi penekanan, dan kebutuhan akan suatu tombol khusus. Bahan switch metal pada keypad digunakan untuk kebutuhan keypad atau tombol-tombol dengan arus yang besar. Keypad dengan bahan carbon dipakai untuk kebutuhan tombol-tombol dengan arus kecil. Biasanya itu digunakan untuk alat-alat digital yang hanya memilikitegangan 0 dan 5v. Penerapan bahan banyak kita jumpai seperti pada keypad remot tv, remot ac, joy stick, serta masih banyak lainnya.
4. Prosedur Percobaan [kembali]
1. Pastikan semua supply dalam keadaan off
2. Hubungkan jumper seperti rangkaian dibawah
3. Buatlah listing program yang telah ada pada modul
4. periksakan rangkaian kepada asisten yang mengawas
5. Hidupkan semua supply
6. Upload program dari laptop ke modul
7. Tekan tombol Reset
8. Amati percobaan, jika tidak sesuai perbaiki rangkaian atau program
9. Jika sesuai, maka selesai dan demokan pada asisten yang mengawas
10.Jelaskan prinsip kerja + program dan hubungan keduanya kepada asisten
11.Demokan ke pembimbing praktikum
12.Matikan supply
2. Hubungkan jumper seperti rangkaian dibawah
3. Buatlah listing program yang telah ada pada modul
4. periksakan rangkaian kepada asisten yang mengawas
5. Hidupkan semua supply
6. Upload program dari laptop ke modul
7. Tekan tombol Reset
8. Amati percobaan, jika tidak sesuai perbaiki rangkaian atau program
9. Jika sesuai, maka selesai dan demokan pada asisten yang mengawas
10.Jelaskan prinsip kerja + program dan hubungan keduanya kepada asisten
11.Demokan ke pembimbing praktikum
12.Matikan supply
5. Hardware [kembali]

6. Rangkaian Simulasi [kembali]
Pada rangkaian ini keypad didesain untuk dapat menghidupkan LED dan buzzer melalui mikroprosesor ATMega 128. Pada percobaan kali ini akan disimulasikan dalam 3 kondisi. Pertama, jika tombol 1 pada keypad ditekan maka LED mati dan buzzer akan hidup. Kemudian jika tombol 2 pada keypad ditekan maka LED hidup dan buzzer mati.Dan jika tombol 3 pada keypad ditekan maka LED dan buzzer akan aktif secara bersamaan.
#include <mega128.h> //deklarasi penggunaan ATMega 128
#include <delay.h> //deklarasi penggunaan fungsi delay
unsigned char key;
unsigned char keypad() //deklarasi keypad
{
PORTD=0b11111100; //deklarasi tombol pada keypad
if(PIND.5==0) return ('1');
if(PIND.6==0) return ('2');
if(PIND.7==0) return ('3');
PORTD=0b11111010; //deklarasi tombol pada keypad
if(PIND.5==0) return ('4');
if(PIND.6==0) return ('5');
if(PIND.7==0) return ('6');
PORTD=0b11110110; //deklarasi tombol pada keypad
if(PIND.5==0) return ('7');
if(PIND.6==0) return ('8');
if(PIND.7==0) return ('9');
PORTD=0b11101110; //deklarasi tombol pada keypad
if(PIND.5==0) return ('*');
if(PIND.6==0) return ('0');
if(PIND.7==0) return ('#');
}
void main(void) //fungsi utama
{
PORTD=0x00;DDRD=0x00; //deklarasi input
PORTA=0x00;DDRA=0xff; //deklarasi output
PORTB=0x00;DDRB=0xff; //deklarasi output
while(1) //fungsi while
{
key=keypad(); //inisialisasi keypad
if (key==1) //kondisi jika tombol 1 keypad ditekan
{
PORTA=0x00; //LED off
PORTB=0x01; //buzzer on
delay_ms(1000); //waktu delay (1 s)
}
if (key==2) //kondisi jika tombol 1 keypad ditekan
{
PORTA=0x01; //LED on
PORTB=0x00; //buzzer off
delay_ms(1000); //waktu delay (1 s)
}
if (key==3) //kondisi jika tombol 1 keypad ditekan
{
PORTA=0x01; //LED on
PORTB=0x01; //buzzer off
delay_ms(1000); //waktu delay (1 s)
}
}
}
9. Video Simulasi [kembali]
10. Download Link [kembali]
http://www.mediafire.com/file/nz0uecmp5od822h/modul1.rar
Tidak ada komentar:
Posting Komentar