MateriKu

Blog Kumpulan Materi Soal Laporan

Breaking

Saturday, May 13, 2017

Laporan Antarmuka Mikrokontroler Dengan Toggle Switch

 TUJUAN
  • Mengetahui dan memahami cara mengantarmukakan mikrokontroler dengan rangkaian input saklar toggle.
  • Mengetahui dan memahami bagaimana memrogram mikrokontroler untuk membaca data input dari saklar toggle.
SAKLAR TOGGLE
Saklar toggle adalah salah satu saklar elektrik yang digerakkan secara manual oleh batang mekanik. Saklar toggle tersedia dalam berbagai bentuk dan ukuran, serta digunakan dalam berbagai aplikasi. Dalam modul I/O yang dipakai dalam praktikum, saklar toggle yang digunakan diberi rangkaian tambahan berupa rangkaian LED untuk melihat secara langsung logika yang ada pada saklar. Rangkaian LED sama dengan rangkaian dalam Modul I. Kedelapan rangkaian saklar  tersebut dihubungkan ke sebuah soket jumper bernama INPUT.

PERINTAH DASAR MEMBACA DATA
  • Sebelum membaca data, perlu dibuat deklarasi variabel untuk data yang dimasukkan. Data bisa bertipe char. Deklarasi variabel diletakkan di variabel lokal pada main program.
void main (void)
{
//Declare your local variables here
unsigned char data_in;
  • Untuk membaca data byte ke PORTX (X=A, B, C, D) digunakan statement
                                                data_in = PINX;
contoh:  data_in = PINB;
  • Untuk membaca data bit ke PORTX.Y (X=A, B, C, D dan Y=0, 1, 2 , 3, 4, 5, 6, 7) digunakan statement
                                                data_in = PINX.Y;
contoh: data_in = PINB.1;

ALAT DAN BAHAN YANG DIGUNAKAN
  • 1 set PC/Laptop yang sudah berisi program Code Vision dan Khazama
  • 1 buah catu daya DC +5V
  • 1 buah multimeter
  • 1 buah ISP Downloader AVR
  • 1 buah sistem minimum AVR
  • 1 buah I/O
  • 1 buah kabel printer USB
  • 2 buah kabel pita hitam

 PROSEDUR
1.      Hubungkan soket jumper PORTB pada minimum system dengan soket jumper OUTPUT pada I/O dan soket jumper PORTC pada minimum system dengan soket jumper INPUT pada I/O
2.      Buka program Code Vision AVR
3.      Buatlah project baru dengan inisialisasi PORTB sebagai output (DDRB = FFH) dan output value = 0 (PORTB=00H), dan  PORTC sebagai input (DDRC = 00H) dan resistor pullup dihubungkan  (PORTC=FFH) sehingga pada program bagian inisialisasi PORTB dan PORTC terlihat sebagai berikut:
PORTB=0x00;
DDRB=0xff;                  //portb sebagai output, 0b11111111, nilai awal 0
PORTC=0xff;
DDRC=0x00;                // portc sebagai input, 0b00000000, pull up
4.      Tambahkan deklarasi variabel lokal dalam program utama
unsigned char data_in;
5.      Tuliskan dalam program utama sebagai berikut:
// Program Saklar1
data_in=PINC; //baca saklar di PORTC
     PORTB=data_in;     //tampilkan logika saklar ke LED di PORTB
6.      Pindahkan saklar sesuai tabel 2.1 dibawah, amati dan catat nyala LED. 
7.      Ulangi langkah 3-4 untuk program berikut:
//Program Saklar2
            data_in = PINC.0;        // baca saklar bit ke 0
     PORTB.7 = data_in;            // tampilkan logika saklar pada LED bit ke 7
8.      Pindah saklar sesuai tabel 3.1 dibawah, Amati dan catat nyala LED.
9.      Buat program untuk masing–masing algoritma berikut dengan menggunakan if :
a)      Jika switch bit 0 berlogika 1 maka LED bit 4 menyala.
b)      Jika switch bit 1 berlogika 1 maka LED bit 7 menyala.
10.  Buat satu program untuk masing–masing algoritma berikut dengan menggu­na­kan if-else.
a)      Jika switch bit 0 berlogika 1 maka LED bit 4 menyala.
b)      Jika switch bit 1 berlogika 1 maka LED bit 7 menyala.
c)       Jika switch bit 2 berlogika 1 maka LED menyala dengan konfigurasi
ON-OFF-ON-OFF-ON-OFF-ON-OFF (bit7-bit0).
d)      Jika switch bit 3 berlogika 1 maka LED menyala dengan konfigurasi
OFF-ON-OFF-ON-OFF-ON-OFF-ON (bit7-bit0).
e)      Jika switch bit 4 berlogika 1 maka LED menyala semua.
f)        JIka switch bit 5 berlogika 1 maka LED mati semua.
g)      Jika switch bit 6 berlogika 1 maka LED menyala berurutan mulai dari bit0 ke bit7 lalu kembali lagi ke bit0 dengan delay 1 detik
h)      Jika switch bit 7 berlogika 1 maka LED akan menyala dengan nilai sama dengan dua digit terakhir NIM anda.

DATA HASIL PERCOBAAN
1.      Tabel 2.1
No.
Saklar
LED

7    6    5    4    3    2    1    0
7    6    5    4    3    2    1    0
1
0    0    0    0    0    0    0    1

2
0    0    0    0    0    0    1    1

3
0    0    0    0    0    1    0    1

4
0    0    0    0    1    0    0    1

5
0    0    0    1    0    0    0    1

6
0    0    1    0    0    0    0    1

7
0    1    0    0    0    0    0    1

8
1     0    0    0    0    0    0    1

9
1    1    1    1    1    1    1    1


2.      Tabel 3.1
No.
Saklar
LED

7    6    5    4    3    2    1    0
7    6    5    4    3    2    1    0
1
0    0    0    0    0    0    0    1

2
0    0    0    0    0    0    1    1

3
0    0    0    0    0    1    0    0

4
0    0    0    0    1    0    0    1

5
0    0    0    1    0    0    0    0

6
0    0    1    0    0    0    0    1

7
0    1    0    0    0    0    0    0

3.      Source code program pada percobaan langkah 9
4.      Source code program pada percobaan langkah 10

File CV AVR dan Simulasi Proteus
Project File CVAVR | Mirror
Project Sim Proteus | Mirror

ANALISA DATA
1.      Analisa Program Saklar1 dan Saklar2
2.      Instruksi apa yang digunakan untuk membaca data input?

3.      Apakah perbedaan program yang menggunakan if dan if-else?

1 comment:

  1. A motivating discussion is definitely worth comment.
    I believe that you should write more on this issue, it might not be a taboo subject but generally
    folks don't discuss these topics. To the next!
    Many thanks!!

    ReplyDelete