Anda di halaman 1dari 28

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011

Praktek 1 Digital I/O


Tujuan :
Setelah menyelesaikan praktikum ini, yang anda peroleh adalah : 1. Mengakses perangkat digital I/O 2. Memprogram digital I/O seperti Running led dengan berbagai macam cara 3. Mengaplikasi fungsi digital I/O pada mikrokontroler AVR

PROSEDUR PERCOBAAN
Prosedur Umum

1. Secara keseluruhan beberapa percobaan dibawah ini menggunakan wizard sehingga kode digenerate secara otomatis. 2. Atur semua kode program yang ada kemudian diletakkan sesuai pada bagian-bagian kode hasil generate wizard. 3. Pastikan hasil compile tidak menghasilkan error dengan menekan F9. 4. Selanjutnya download program tersebut ke MS-16 via USB dengan menekan Shift-F9 dan tekan tombol Program the chip. 5. Amati dan analisa hasilnya kemudian catat hasil tersebut sebagai laporan sementara.
Prosedur Khusus

Port I/O pada mikrokontroler AVR dapat dikonfigurasi sebagai input atau ouput dengan cara merubah isi Data Direction Register (DDRx). Pada bit DDRx menentukan arah pin pada port I/O yang akan digunakan nantinya. jika diinginkan Port D dikonfigurasi sebagai output maka DDRC harus di-set sebagai 0xFFh. Dan jika difungsikan sebagai input maka nilainya pada DDRC adalah 0x00h Contoh :

Untuk contoh kasus ini DDRC = 0 apabila konfigurasi hardware input (push button) terhubung pada VCC (bukan pada ground). Setiap pin I/O mikrokontroler AVR memiliki internal pull-up. Misalnya Port C terkonfigurasi sebagai input dimana sisi hardware input (push button) terhubung dengan ground (bukan VCC), maka internal pull-up harus diaktifkan.
taufiq[at]eepis[minus]its[dot]edu Page 1

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011


Contoh :

Percobaan ke :
1. Push Button - BarLED dan LCD

taufiq[at]eepis[minus]its[dot]edu

Page 2

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011


2. LED menyala berjalan (metode matematis)

taufiq[at]eepis[minus]its[dot]edu

Page 3

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011


3. LED menyala berjalan (metode geser bit)

4. Running Led (Look Up Table Method)

taufiq[at]eepis[minus]its[dot]edu

Page 4

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011


TUGAS
Buat laporan resmi berdasarkan hasil pengamatan. Modifikasi dari percobaan 1 dan salah satu dari percobaan 2, 3 atau 4 untuk di integrasikan. Running LED akan aktif jika ada penekanan push button dan nilainya ditampilkan di LCD Kemudian jelaskan setiap baris terhadap syntax dari semua percobaan diatas kemudian tarik kesimpulan.

taufiq[at]eepis[minus]its[dot]edu

Page 5

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011

Praktek 2 TIMER 8-bit dan 16-bit


Tujuan :
Setelah menyelesaikan praktikum ini, yang anda peroleh adalah : 1. Mengakses Timer dengan mode normal, compare match interrupt dan CTC 2. Memprogram timer dengan ketiga mode tersebut 3. Mengaplikasi fungsi timer pada mikrokontroler AVR

PROSEDUR PERCOBAAN
Prosedur Umum

1. Secara keseluruhan beberapa percobaan dibawah ini menggunakan wizard sehingga kode digenerate secara otomatis. 2. Atur semua kode program yang ada kemudian diletakkan sesuai pada bagian-bagian kode hasil generate wizard. 3. Pastikan hasil compile tidak menghasilkan error dengan menekan F9. 4. Selanjutnya download program tersebut ke MS-16 via USB dengan menekan Shift-F9 dan tekan tombol Program the chip. 5. Amati dan analisa hasilnya kemudian catat hasil tersebut sebagai laporan sementara.
Prosedur Khusus

Rumusan waktu maksimum dari suatu timer adalah sebagai berikut.

Dimana :

Fclk = nilai frekuensi kristal yang digunakan. = nilai bit timer yang digunakan, bisa 8-bit atau 16-bit. jika 8-bit maka = 255 jika 16-bit maka = 65535

N = Prescaller, faktor pembagi mulai 8, 64, 128, 256 1024. Gunakan rumus berikut ini untuk menentukan Timer Value berdasarkan Interval Timer yang diinginkan :

taufiq[at]eepis[minus]its[dot]edu

Page 6

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011


Percobaan ke :
1. Men-Generate delay 1 detik pada TIMER1 menggunakan mode normal

taufiq[at]eepis[minus]its[dot]edu

Page 7

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011


2. Men-Generate delay 1 detik pada TIMER0 menggunakan mode match compare output

dengan cara yang sama seperti percobaan 1, buat interval waktu sebesar 100S didapatkan nilai Compare = 76H

taufiq[at]eepis[minus]its[dot]edu

Page 8

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011


3. Men-Generate delay 1 detik pada TIMER1 menggunakan mode CTC (Clear Timer on Compare Match Interrupt)

Mekanisme berikut ini adalah membuat delay 1 detik pada timer 1. Agar memperoleh waktu yang lebih presisi, didapatkan nilai Compare A = 2A30H

taufiq[at]eepis[minus]its[dot]edu

Page 9

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011


TUGAS
Buat laporan resmi berdasarkan hasil pengamatan. Hitung waktu setiap nilai heksa yang dihasilkan untuk diisikan pada kolom Timer Value, Compare dan CompA berdasarkan rumus yang ada (detilkan strategi cara menghitung) Kemudian jelaskan setiap baris terhadap syntax dari semua percobaan diatas kemudian tarik kesimpulan.

taufiq[at]eepis[minus]its[dot]edu

Page 10

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011


Praktek 3 Analog Digital Converter (ADC) Tujuan :
Setelah menyelesaikan praktikum ini, yang anda peroleh adalah : 1. Mengakses ADC dengan resolusi 8-bit 2. Memprogram ADC dengan masukan sensor berupa potensiometer, LDR, LM35 dan MIC 3. Mengaplikasi fungsi ADC dengan masukan sensor pada mikrokontroler AVR

PROSEDUR PERCOBAAN
Prosedur Umum

1. Secara keseluruhan beberapa percobaan dibawah ini menggunakan wizard sehingga kode digenerate secara otomatis. 2. Atur semua kode program yang ada kemudian diletakkan sesuai pada bagian-bagian kode hasil generate wizard. 3. Pastikan hasil compile tidak menghasilkan error dengan menekan F9. 4. Selanjutnya download program tersebut ke MS-16 via USB dengan menekan Shift-F9 dan tekan tombol Program the chip. 5. Amati dan analisa hasilnya kemudian catat hasil tersebut sebagai laporan sementara.
Prosedur Khusus

Pada praktikum ini, praktikan akan mencoba memanfaatkan fasilitas masukan analog pada mikrokontroler AVR ATmega16. ATmega16 mempunyai ADC (Analog to Digital Converter) internal 10-bit sebanyak 8 kanal. Modul I/O yang digunakan pada praktikum ini mempunyai 3 masukan sensor yang terhubung pada masukan analog ATMega16. Masukan Sensor tersebut adalah sebagai berikut : 1. Potensiometer 2. LDR (Light Dependent Resistor) 3. LM35 (Analog Temperature Sensor) 4. MIC (Microfon)

Skematik referensi tegangan yang bisa diterima oleh AVR untuk percobaan ini adalah sebagai berikut :

taufiq[at]eepis[minus]its[dot]edu

Page 11

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011


Berikut ini skematik hardware dari masukan sensor pada modul I/O (IF-01) yang dihubungkan minimum system (MS-16) 1. Potensiometer 2. LDR (Light Dependent Resistor)

3. LM35 (Analog Temperature Sensor)

4. MIC (Microfon)

taufiq[at]eepis[minus]its[dot]edu

Page 12

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011


Percobaan ke :
1. ADC 8-bit dengan Potensiometer Output BarLED dan LCD

taufiq[at]eepis[minus]its[dot]edu

Page 13

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011


Hasil yang didapatkan, perubahan nilai 0 - 255 pada barled dan di LCD harus mengeluarkan nilai 0 5 VoltDC. Tetapi nilai tersebut mengeluarkan nilai 3f. Hal ini dikarenakan tipe variable vin_potensio adalah float dan ditampilkan oleh fungsi sprintf berupa float dengan presisi 3 digit dibelakang koma. Untuk mengatasi hal itu perlu dilakukan setting terhadap fitur (s)printf, caranya sebagai berikut: 1. pilih menu Project >> Configure atau pilih icon 2. selanjutnya muncul dialog configure project

3. pilih tabulasi C Compiler, (s)printf Features ubah ke float, width, precision

taufiq[at]eepis[minus]its[dot]edu

Page 14

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011


TUGAS
Buat laporan resmi berdasarkan hasil pengamatan. 1. Ubah pembacaan ADC pada sensor secara bergantian sesuai urutan berikut ini dengan mengubah nilai masukan x ADC pada fungsi read_adc(x) : a. Potensiometer ADC6 i. Konversi rumus dg resolusi ADC 8-bit menjadi 0-5 volt dc b. LDR ADC1 i. Perhatikan nilai output ADC ketika permukaan LDR ditutup dan dibuka berdasarkan rangkaian c. LM35 ADC0 i. Perhatikan nilai output ADC ketika permukaan LM35 lebih panas ataupun lebih dingin d. Microfon ADC2 i. Perhatikan nilai output ADC ketikan diberi suara, misalnya ada 3 orang memberikan suara masukan A 2. Modifikasi Akses ADC yang terhubung pad Potensiometer, LDR dan LM35 yang ditampilkan secara bersamaan (simultan) dan ditampilkan pada LCD dan barled (potensiometer saja)

taufiq[at]eepis[minus]its[dot]edu

Page 15

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011

Praktek 4 COUNTER dan EXTERNAL INTERRUPT


Tujuan :
Setelah menyelesaikan praktikum ini, yang anda peroleh adalah : 1. dapat mengimplementasikan fungsi masukan yang berupa signal counter dan signal interrupt eksternal pada mikrokontroler AVR 2. dapat mengimplementasikan fungsi kontrol LCD untuk menampilkan nilai signal counter pada fungsi timer/counter.

PROSEDUR PERCOBAAN
Prosedur Umum

1. Secara keseluruhan beberapa percobaan dibawah ini menggunakan wizard sehingga kode digenerate secara otomatis. 2. Atur semua kode program yang ada kemudian diletakkan sesuai pada bagian-bagian kode hasil generate wizard. 3. Pastikan hasil compile tidak menghasilkan error dengan menekan F9. 4. Selanjutnya download program tersebut ke MS-16 via USB dengan menekan Shift-F9 dan tekan tombol Program the chip. 5. Amati dan analisa hasilnya kemudian catat hasil tersebut sebagai laporan sementara.
Prosedur Khusus

Masukan Sensor tersebut adalah sebagai berikut : 1. Optocoupler 2. Eksternal interrupt Push-Button dan Eksternal signal Push-Button Berikut ini skematik hardware dari masukan sensor pada modul I/O (IF-01) yang dihubungkan minimum system (MS-16) 1. Eksternal Interrupt [INT0 dan INT1] serta Signal Clock [T0] 2. Optocoupler

taufiq[at]eepis[minus]its[dot]edu

Page 16

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011


Percobaan ke :
1. Mengakses Timer0 sebagai Counter, penerima External Signal

Mengaktifkan fungsi T0 pada timer untuk menerima signal eksternal disimulasikan menggunakan Push-Button yang terhubung dengan T0. Serta diimplementasikan pada masukan sensor optocoupler yang sama-sama terhubung pada T0.

Tambahkan program dalam fungsi void main di bagian while

PORTD = ~TCNT0;
Tetapi untuk mengakses optocoupler dengan LCD tidak bisa diakses bersamaan harus memilih jumper 3 sesuai ilustrasi berikut ini.

taufiq[at]eepis[minus]its[dot]edu

Page 17

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011


2. Mengakses External Interrupt

Mengaktifkan External Interrupt untuk menerima signal eksternal menggunakan Push-Button yang terhubung dengan INT0 [PORTD.2] dan INT1 [PORTD.3].

Tambahkan program berikut ini di dalam fungsi ISR EXT_INT0 dan ISR EXT_INT1

Sisipkan program berikut ini pada bagian void main sebelum while(1) command

Jangan lupa untuk LCD bisa diakses maka jumper 3 harus dihubungakan pada 2-3.
taufiq[at]eepis[minus]its[dot]edu Page 18

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011


TUGAS
Buat laporan resmi berdasarkan hasil pengamatan Buat program untuk mengakses motor DC dimana skematik motor DC sebagai berikut :

Untuk menggerakkan motor cuplikan programnya sebagai berikut

Letakkan cuplikan program akses motor DC diatas pada ISR EXT_INT0 dan ISR EXT_INT1 dengan mode masing-masing falling edge dan rise edge.

taufiq[at]eepis[minus]its[dot]edu

Page 19

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011

Praktek 5 USART (Monitoring Suhu dg LM35)


Tujuan :
Setelah menyelesaikan praktikum ini, yang anda peroleh adalah : 1. dapat mengimplementasikan fungsi USART dan ADC secara bersamaan pada mikrokontroler AVR 2. dapat mengimplementasikan fungsi USART untuk melakukan komunikasi serial RS-232. 3. dapat mengimplementasikan fungsi LM35 sebagai sensor temperature analog untuk memberikan pengukuran temperature dan dikirimkan via USART ke komputer.

PROSEDUR PERCOBAAN
Prosedur Umum

1. Secara keseluruhan beberapa percobaan dibawah ini menggunakan wizard sehingga kode digenerate secara otomatis. 2. Atur semua kode program yang ada kemudian diletakkan sesuai pada bagian-bagian kode hasil generate wizard. 3. Pastikan hasil compile tidak menghasilkan error dengan menekan F9. 4. Selanjutnya download program tersebut ke MS-16 via USB dengan menekan Shift-F9 dan tekan tombol Program the chip. 5. Amati dan analisa hasilnya kemudian catat hasil tersebut sebagai laporan sementara.
Prosedur Khusus

Modul komunikasi pada AVR MS-16 EEPIS 2011 memiliki emulasi hardware komunikasi serial yaitu : 1. 2-unit RS-232 2. 1-unit RS-485 Untuk kontrol komunikasi yang diinginkan dikendalikan oleh IC MUX 4052

taufiq[at]eepis[minus]its[dot]edu

Page 20

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011


Yang kemudian diemulasikan menjadi 2-unit USART RS-232 yaitu sebagai berikut :

Untuk emulasi menjadi 1-unit USART RS-485 yaitu sebagai berikut :

taufiq[at]eepis[minus]its[dot]edu

Page 21

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011


Kontrol agar bisa mengakses masing emulasi adalah sebagai berikut : 1. Port RS-232 yang ke-1 (USART1 RS232-1)

2. Port RS-232 yang ke-2 (USART2 RS232-2)

3. Port RS-485

Dan pastikan jumper J1 dan J2 berada posisi 1-2

Masukan Sensor pada LM35 dan referensi tegangan pada setting ADC sebagai berikut : 1. Skematik referensi tegangan setting ADC

2. Skematik sensor LM35

taufiq[at]eepis[minus]its[dot]edu

Page 22

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011


Percobaan ke :
1. Monitoring Suhu via USART dan LCD

Hubungkan kabel db-9 dari PC com serial ke mikrokontroler via port RS-232 (USART2)

taufiq[at]eepis[minus]its[dot]edu

Page 23

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011

taufiq[at]eepis[minus]its[dot]edu

Page 24

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011


TUGASs
Buat laporan resmi berdasarkan hasil pengamatan 1. Buat pemetaan hasil dengan aturan sebagai berikut : Ouput volt Rule dengan sprint saja*) Ouput suhu dengan printf saja*) Ouput volt dan suhu dengan Sprintf dan printf *) Komentar Hasil Pengamatan

Tanpa \r atau \n Dengan \r Dengan \n Dengan \r dan \n


Bandingkan dan amati kedua output tersebut dan berikan hasil pengamatan anda *) data hasil pengamatan setiap output minimal yang di-capture minimal 2 data via software terminal PC 2. Tampilkan data di PC (via terminal) dengan output sebagai berikut :

Volt=-.---V Suhu=--.---C Volt=-.---V Suhu=--.---C Volt=-.---V Suhu=--.---C


. . . . . . . dst

Volt=-.---V Suhu=--.---C
taufiq[at]eepis[minus]its[dot]edu Page 25

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011

Praktek 6 PWM (Pengendalian Intensitas Cahaya LED)


Tujuan :
Setelah menyelesaikan praktikum ini, yang anda peroleh adalah : 1. dapat mengimplementasikan fungsi PWM di TIMER2 pada mikrokontroler AVR 2. dapat mengendalikan intensitas cahaya LED baik manual maupun otomatis dengan teknik pemrograman bahasa C.

PROSEDUR PERCOBAAN
Prosedur Umum

1. Secara keseluruhan beberapa percobaan dibawah ini menggunakan wizard sehingga kode digenerate secara otomatis. 2. Atur semua kode program yang ada kemudian diletakkan sesuai pada bagian-bagian kode hasil generate wizard. 3. Pastikan hasil compile tidak menghasilkan error dengan menekan F9. 4. Selanjutnya download program tersebut ke MS-16 via USB dengan menekan Shift-F9 dan tekan tombol Program the chip. 5. Amati dan analisa hasilnya kemudian catat hasil tersebut sebagai laporan sementara.
Prosedur Khusus

Pin out PWM pada AVR ATMega16:

taufiq[at]eepis[minus]its[dot]edu

Page 26

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011


Percobaan ke :
1. Pengaturan Intensitas Cahaya LED menggunakan tombol pushbutton dengan Output LCD

taufiq[at]eepis[minus]its[dot]edu

Page 27

Modul Praktikum Mikrokontroler AVR 3 Elka A-D3 2011

TUGAS
Buat laporan resmi berdasarkan hasil pengamatan 1. Amati dan perhatikan nilai output OCR2 di LCD, berapa nilai OCR 2 intesitas maksimun? 2. Ubah setting output compare PWM menjadi non-inverting, perhatikan nilainya dan pengamatan intensitas LED, berapa start nilai OCR2 saat mulai padam? 3. Dari hasil pengamatan tugas point 1, Buat program otomatis mengendalikan itensitas cahaya LED dengan mengatur nilai OCR2, otomatis on-off-on-..dst tanpa menggunakan tombol

taufiq[at]eepis[minus]its[dot]edu

Page 28