Kamis, 17 Oktober 2013

Tujuan :
  1. Mampu membuat program untuk penggunaan fitur interupsi eksternal .
  2. Memahami perbedaan mode interupsi eksternal (falling , rising , any change) .

Peralatan :
  1. Komputer                  : 1 set
  2. Arduino UNO           : 1 pcs
  3. Project Board            : 1 pcs
  4. Kabel Jumper            : 1 pcs
  5. Switch pushbutton      : 2 pcs
  6. LCD                          : 1 pcs
  7. Potensiometer 10k     : 1 pcs

Percobaan :

4.1 Interupsi eksternal dengan mode falling

          Pada percobaan kali ini akan dibuat program untuk memahami penggunaan interupsi eksternal dengan mode falling . Dua buah swicth akan dihubungkan pada pin interupsi eksternal 0 (INT0) dan interupsi esternal 1 (INT1) . Penekanan switch akan menginterupsi program utama (yang berada pada fungsi loop) dan memaksa untuk menjalankan rutin interupsi yang telah dideskripsikan pada program .

Prosedur :

  • rangkailah rangkaian pada gambar 4.1


  • tuliskan sintaks program berikut ini , kemudian lakukan kompilasi dan upload program ke sistem minimum arduino .


Tugas dan pertanyaan :

  1. Biarkan program berjalan sehingga pada LCD nilai count loop increment sampai di atas 5.Kemudian tekan salah satu switch yang terhubung pada INT0 atau INT1 selama 5 detik kemudian lepaskan. Amati teks yang ditampilkan pada LCD.Apakah yang akan terjadi jika switch ditekan ? Apakah yang akan terjadi jika switch di lepas ?
  2. Jelaskan pada saat kapan terjadinya proses interupsi !




4.2 Interupsi eksternal dengan mode Rising

          Dua buah switch akan dihubungkan pada pin INT0 atau INT1 sama seperti percobaan 4.1 . Penekanan switch akan menginterupsi program utama (yang berada pada fungsi loop) dan memaksa untuk menjalankan rutin interupsi yang telah dideskripsikan pada program. Pada percobaan metode interupsi yang digunakan adalah rising .

Prosedur :
  • gantilah sintaks program pada percobaan 4.2 denga sintaks program beriktu ini , kemudian lakukan kompilasi dan upload program ke sistem minimum arduino .



Tugas dan pertanyaan :
  1. Biarkan program berjalan sehingga pada LCD nilai count loop increment sampai diatas 5.Kemudian tekan salah satu switch yan terhubung pada INT0 atau INT1 selam 5 detik kemudian lepaskan. Amati teks yang ditampilkan pada LCD.Apakah yang akan terjadi jika switch ditekan ? Apakah yang akan terjadi jika switch di lepas ?
  2. Jelaskan pada saat kapan terjadinya proses interupsi ?
  3. Kapankah interupsi mode falling terjadi ? kapankah interupsi mode rising terjadi ? jelaskan !





4.3 Interupsi eksternal dengan mode any change

          Pada percobaan mode interupsi yang digunakan adalah any change . Dua buah switch akan dihubungkan pada pin INT0 dan INT1. Penekanan swicth akan membuat program utama pada fungsi loop terhenti dan mengeksekusi rutin interupsi .

Prosedur :
  • gantilah sintaks program pad percobaan 4.2 dengan sintaks program di bawah ini , kemudian lakukan kompilasi dan upload program ke sistem minimum arduino .



Tugas dan pertanyaan :
  1. Biarkan program berjalan sehingga pada LCD nilai count loop increment sampai diatas 5 . Kemudian tekan salah satu switch yang terhubung  pada INT0 atau INT1 selama 5 detik dan kemudian lepaskan. Amati teks yang ditampilkan pada LCD. Apakah yang akan terjadi jika switch ditekan ? Apakah yang akan terjadi jika switch dilepas ?
  2. Jelaskan pada saat kapan terjdainya proses interupsi ?
  3. Kapankah interupsi mode any change terjadi ? jelaskan !


Rabu, 16 Oktober 2013

Tujuan :

  • Mampu membuat program untuk mengakses periperal masukan digital menggunakan fungsi arduino .
  • Mampu membuat program untuk mengakses periperal masukan digital menggunakan konfigurasi register mikrokontroller .
  • Mampu membuat program untuk mengakses periperal keluaran digital menggunakan fungsi arduino .
  • Mampu membuat program untuk mengakses keluaran digital menggunakan konfigurasi register mikrokontroller .
Peralatan :
  • Komputer                        : 1 set
  • Arduino UNO                 : 1 pcs
  • Kabel data USB type B   : 1 pcs
  • Project Board                  : 1 pcs
  • Kabel Jumper                  : 1 set
  • Buzzer 5V                       : 1 pcs
  • Transistor 2N2222          : 1 pcs
  • Resistor 2k2                    : 1 pcs
  • LED                                : 6 pcs
  • Resistor 330 ohm             : 6 pcs
Percobaan :

2.1 Pemrograman digital output menggunakan library arduino 
  • rangkailah rangkaian seperti pada gambar di bawah ini .

  • tuliskan sintaks program di bawah ini pada program arduino IDE . kemudian lakukan kompilasi dan upload program ke sistem minimum arduino

          void setup() {
          pinMode(8, OUTPUT);
          pinMode(9, OUTPUT);
          pinMode(10 ,OUTPUT);
          pinMode(11 ,1);
          pinMode(12 ,1);
          pinMode(13 ,1);

          }

          void loop() {
          digitalWrite(8 ,HIGH);
          digitalWrite(9 ,HIGH);
          digitalWrite(10 ,1);
          digitalWrite(11 ,LOW);
          digitalWrite(12 ,LOW);
          digitalWrite(13 ,0);

          }

  • amati kondisi keenam LED yang terhubung ke arduino
Tugas dan pertanyaan :
  • isilah tabel di bawah ini sesuai dengan hasil pengamatan pda kondisi LED !
Tabel 2.1 kondisi LED pada percobaan 2.1

  • jelaskan fungsi tiap baris dari sintaks program pada percobaan 2.1 !
2.2 Pemrograman digital output menggunakan konfigurasi               register

          Pada praktikum kali ini akan dibuat program yang memiliki fungsi sama dengan percobaan 2.1 . Namun pada percobaan kali ini program yang dibuat akan menggunakan konfigurasi register untuk mengakses pin digital .

Prosedur :

  • gantilah sintaks pada program 2.1 dengan sintaks program berikut ini . kemudian lakukan kompilasi dan upload ke sistem minimum arduino .
          void setup() {
          DDRB=0x3F;

          }

          void loop() {
          PORTB=0x07;

}

  • amati kondisi nyala / mati dari keenam LED yang terhubung ke arduino .
Tugas dan pertanyaan :

  • isilah tabel 2.2 sesuai dengan hasil pengamatan pada kondisi LED !
tabel 2.2 kondisi nyala / mati LED pada percobaan 2.2

  • jelaskan fungsi tiap baris dari sintaks program pada percobaan 2.2 !
  • jelaskan perbedaan penggunaan fungsi arduino dan konfigurasi register pada pengaksesan digital output !
  • menurut anda , program menggunakan konfigurasi register lebih tepat untuk aplikasi yang seperti apa ? jelaskan !


2.3 penggunaan fungsi delay

          Pada percobaan kali ini akan dipraktekkan penggunaan fungsi delay pada program.Program yang akan dibuat bertujuan untuk membuat buzzer menyala dan mati secara bergantian dengan selang waktu tertentu.Konfigurasi nyala dan mati buzzer dengan sela waktu tertentu ini akan membuat suara seperti alarm ataupun sirine .

Prosedur :

  • rangkailah rangkaian seperti gambar di bawah ini .

  • tulislah sintaks program di bawah ini kemudian lakukan kompilasi dan upload pogram .
          void setup() {
          pinMode(12 ,OUTPUT);

          }

          void loop() {
          digitalWrite(12 ,HIGH);
          delay(1000);
          digitalWrite(12 ,LOW);
          delay(1000);

          }
  • Amati suara buzzer .
Tugas dan pertanyaan :

  • jelaskan fungsi tiap baris dari sintaks program pada percobaan 2.3 !
  • gantilah parameter masukan untuk fungsi delay dengan 300 , 1000 , 1500 , 2000 kemudian amati perubahan suara buzzer . Jelaskan fungsi parameter masukan dari fungsi delay !

2.4 Pemrograman digital input menggunakan fungsi arduino

          Pada percobaan kali ini akan dipraktekkan pemrograman untuk mengakses masukan dalam bentuk digital.Program bertujuan untuk menyalakan buzzer ketika tombol ditekan.Untuk melakukan pengaksesan terhadap masukan digital akan digunakan fungsi arduino.

Prosedur :

  • rangkailah rangkaian seperti pada gambar di bawah ini


  • tuliskan sintaks program di bawah ini , kemudian lakukan kompilasi dan upload program .
          void setup() {
          pinMode(A0 ,INPUT);
          digitalWrite(A0 ,HIGH);
          pinMode(12 ,OUTPUT);

          }

          void loop() {
          if(digitalRead(A0)==LOW) {
          digitalWrite(12 ,HIGH);
          }
          else{
          digitalWrite(12 ,LOW);
          }

          }

  • tekanlah switch pushbutton kemudian amati kondisi buzzer .
Tugas dan pertanyaan :

  • jelaskan fungsi tiap baris dari sintaks program pada percobaan 2.4 !

  • perhatikan pada fungsi setup()
          void setup() {
          pinMode(A0 ,INPUT);
          digitalWrite(A0 ,HIGH);
          pinMode(12 ,OUTPUT);
          }

          Setelah pin A0 dikonfigurasikan menjadi input , kemudian pin A0 diperintahkan untuk berlogika HIGH. Apa yang akan terjadi pada pin A0 setelah baris program di atas dieksekusi ? jelaskan !

2.5 Pemrograman digital input menggunakan konfigurasi                 register.

          Pada percobaan kali ini akan di praktekkan pemrograman untuk mengakses masukan dalam bentuk digital sama seperti percobaan 2.4.Pada percobaan kali ini pengaksesan terhadap masukan digital akan menggunakan konfigurasi register .

Prosedur :

  • gantilah sintaks program pada percobaan 2.5 menjadi seperti di bawah ini kemudian lakukan kompilasi dan upload program .
          void setup() {
          DDRC=0x00;
          PORTC=0x01;
          DDRB=0x10;

          }

          void loop() {
          if(bit_is_clear(PINC,0)) {
          PORTB=0x10;
          }
          else{
          PORTB=0x00;
          }
          }
  • tekanlah switch pushbutton kemudian amati kondisi buzzer .
Tugas dan pertanyaan :

  • jelaskan fungsi tiap baris dari sintaks program pada percobaan 2.5 !
  • jelaskan perbedaan penggunaan fungsi arduino dan konfigurasi register untuk penggunaan periperal masukan digital !






Tujuan :

  • mampu membuat program untuk mengakses periperal masukan analog dengan tegangan referensi internal , vcc , dan eksternal.
  • mampu memahami pengaruh nilai tegangan referensi terhadap hasil konversi analog to digital converter (ADC).
  • mampu membuat program untuk mengakses fitur analog komparator pada nikrokontroller.

Peralatan :

  1. Komputer                : 1 set
  2. Arduino UNO         : 1 pcs
  3. Kabel USB type B   : 1 pcs
  4. Project Board          : 1 pcs
  5. Kabel jumper           : 1 pcs
  6. Potensiometer 10k   : 3 pcs
  7. LCD 2x16               : 1 pcs

Percobaan :



3.1 Analog input dengan tegangan referensi internal (1,1 Volt)

          pada percobaan kali ini akan dibuast program untuk mengkonversi nilai tegangan analog dari potensiometer menjadi nilai digital. Data hasil konversi akan ditampilkan pada LCD 2x16. Tegangan referensi ADC yang digunakan adalah tegangan referensi internal yang besarnya 1,1 Volt.

Prosedur :

  • rangkailah rangkaian pada gambar 3.1

  • tuliskan sintaks program di bawah ini , kemudian lakukan kompilasi dan upload program ke sistem minimum arduino .

Tugas dan pertanyaan :

  • putarlah potensiometer sehingga terjadi perubahan tegangan dari 0 sampai 1,5 volt dengan rentan perubahan 0,5 volt. Amati data yang ditampilkan pada LCD , kemudian isilah tabel 3.1


  • jelaskan fungsi tiap baris dari sintaks program pada percobaan 3.1 !



3.2 Analog input dengan tegangan referensi VCC

          pada percobaan kali ini akan dibuat program seperti pada percobaan 3.1.Pada percobaan 3.2 tegangan referensi ADC yang digunakan adalah tegangan VCC pada mikrokontroller.

Prosedur :

  • gantilah sintaks program pada percobaan 3.1 menjadi seperti di bawah ini , kemudian lakukan kompilasi dan upload.

Tugas dan pertanyaan :

  • putarlah potensiometer sehingga terjadi perubahan tegangan dari 0 sampai 5 volt dengan rentan perubahan 1 volt , kemudian amati data yang ditampilkan pada LCD dan isilah tabel 3.2 !

  • jelaskan fungsi tiap baris dari sintaks program pada percobaan 3.1 !


3.3 Analog input dengan tegangan referensi eksternal

          Pada percobaan kali ini akan dibuat program seperti percobaan 3.1 dan percobaan 3.2 . tegangan referensi yang digunakan adalah tegangan referensi eksternal yaitu tegangan pada pin AREF.Pada percobaan kali ini besar tegangan pada pin AREF akan diset sebesar 4 volt.Sehingga dapat dikatakan bahwa besarnya tegangan referensi yang digunakan adalah 4 volt.

Prosedur :

  • rangkailah rangkaian pada gambar 3.2


  • tuliskan sintaks program di bawah ini , kemudian lakukan kompilasi dan upload program ke sistem minimum arduino.

  • putar potensiometer R3 hingga tegangan pada pin AREF terukur 4 volt.

Tugas dan pertanyaan :

  • putarlah potensiometer pin R2 sehingga terjadi perubahan tegangan dari 0-5 volt dengan rentan perubahan 1 volt . Amati data yang ditampilkan pada LCD , kemudian isilah tabel 3.3 .


  • jelaskan fungsi tiap baris dari sintaks program pada percobaan 3.3 !
  • jelaskan pengaruh nilai tegangan referensi pada hasil konversi ADC !


3.4 Analog Comparator

          Pada percobaan 3.4 akan dibuat program untuk mengakses fitur analog komparator pada mikrokontroller . Pada percobaan kali ini dua buah input analog akan dihubungkan ke input pin komparator yaitu AIN0 (pin 6) dan AIN1 (pin 7) .Output analog komparator akan ditampilkan pada LCD .

Prosedur :

  • rangkailah rangkaian pada gambar 3.3

  • tuliskan sintaks program di bawah ini , kemudian lakukan kompilasi dan upload program ke sistem minimum arduino .





Tugas dan pertanyaan :

  • putarlah potensiometer R2 dan R3 , amati teks pada LCD sehingga terjadi perubahan output.Apakah yang terjadi jika tegangan pada pin AIN0 lebih besar daripada tegangan pada pin AIN1 , jelaskan !
  • Apakah yang terjadi jika tegangan pada pin AIN0 lebih kecil dari tegangan pada pin AIN1 , jelaskan !
  • Jelaskan prinsip kerja dari analog komparator pada sistem minimum arduino! apakah prinsip kerja komparator pada mikrokontroller sama dengan prinsip kerja komparator pada op-amp ?
  • jelaskan fungsi tiap baris dari sintaks program pada percobaan 3.4 !

Subscribe to RSS Feed Follow me on Twitter!