Showing posts sorted by date for query arduino-fungsi. Sort by relevance Show all posts
Showing posts sorted by date for query arduino-fungsi. Sort by relevance Show all posts

Monday 14 October 2013

INTERUPSI INTERNAL DENGAN MODE FALLING


Pada Kesempatan kali ini, saya akan memposting bagaimana cara menginterupsi, khususnya mode interupsi falling. Pada percobaan kali ini kita akan menggunakan dua buah switch yang akan di hubungan dengan pin interupsi 0 (INT0) dan pin interupsi 1 (INT1). Penekanan switch akan menimbulkan program menginterupsi program utama (yang berada pada fungsi loop), dan memaksa secara terus menerus program interupsi yang telah di inisialisasikan dari program.

Langkah-langkahnya adalah :

  1. Rangkailah rangkaian di bawah ini dengan menggunakan ISIS 7.
  2. Tuliskan sintaks program di bawah ini dengan menggunakan IDE, compile dan upload sintaks tersebut ke sistem minimum arduino.

  3. Saat kondisi salah satu switch di tekan / OFF .
  4. Saat kondisi kedua switch di tekan / ON. 
Interupsi ini terjadi ketika, saat inputan dalam kondisi HIGHmenuju ke LOW. Perubahan kondisi tersebut ( HIGH menuju LOW) di sebut Interupsi Falling. Dapat kita lihat pada pin 2 dan pin 3 telah bernilai 1 karena dalam kondisi Pull Up, sebelum switch di tekan. Dan pada saat Switch di tekan terjadilah perubahan nilai dari 1 ke 0 (Falling) di karenakan Switch terhubung dengan ground. Saat terjadinya peristiwa falling program akan mengeksekusi program interupsi tersebut. Dan setalah program menginterupsi, maka program akan melanjutkan program utama kembali (Count Loop) secara terus menerus.

    Monday 7 October 2013

    ANALOG COMPARATOR



    Hap Hap... Hap Hap... Tangkap.. Tangkap... Hahai de'.  Pada kesmpatan ini ane ingin share bagaimana cara membuat komparator dengan inputan analog pada mikrokontroler. Pada percobaan kali ini 2 inputan analog akan di hubungkan di AIN) (pin 6) dan AIN1 (pin 7). Sedangkan outputnya akan di tampilkan pada LCD. Simak langkah-langkah di bawah ini :

    1. Rangkailah rangkaian di bawah ini menggunakan ISIS 7 :
    2. Tuliskan sintaks di bawah ini menggunakan program arduino (IDE) lalu compile dan upload sintaks tersebut ke sistem minimum arduino.
    3. Jika anda belum memahami sintaks di atas, coba pahami penjelasanya di bawah ini :

     Prinsip kerja komparator adalah pembanding. Dan pada percobaan ini fungsi komparator adalah membandingkan sinyal analog dengan tegangan referensi ke dalam bentuk nilai besaran. Nilai konversi itu yang akan di bandingkan antara satu dengan lainnya. Jika kita memutar potensiometer pada R2 dan R3, apa yang terjadi jika tegangan pada AIN0 lebih besar dari pada AIN1 ? ada yang bisa jawab? Jawabannya adalah "HIGH", mengapa bisa begitu? karena, nilai tegangan pada pin 6 lebih besar dari pada pin 7.

    Cukup sekian post-an kali ini, semoga bermanfaat bagi sobat semua. Jangan lupa CENDOL-NYA ya.. & komen positifnya, guna memperbaiki post-post an yang mendatang.

    TERIMA KASIH....

    Sunday 29 September 2013

    PEMONGRAMAN DIGITAL INPUT MENGGUNAKAN FUNGSI ARDUINO PADA BUZZER



    Wow, ketemu lagi nih dengan saya. Pada kesempatan kali ini saya akan membahas langkah-langkah menggunakan buzzer dengan memakai program IDE fungsi arduno. Tanpa panjang lebar yuk kita simak langkah-langkahnya sebagai berikut :
    1. Rangkailah rankaian di bawah ini dengan menggunakan ISIS 7 :
    2. Tuliskan sintaks di bawah ini dengan mengunakan program IDE. jangan lupa untuk meng-kompilasi dan menguploadnya ke arduno pada simulasi ISIS 7 :
    Fungsi tiap baris sintaks di atas adalah Fungsi setup adalah sebagai penginilialisasi input dan output, pin A0 berfungsi sebagai inputdan A0 juga bernilai 1 ketika tombol tidak di tekan karena A0adalah switch.  Sedangkan pin 12 berfungsi sebagai output. Fungsi looping if dan elseadalah pengulangan nilai output yang ditampilkan, ketika syaratnya sudah terpenuhi. Seperti pada kondisi if syarat yang harus terpenuhi adalah A0 harus bernilai 0 ( ketika switch di tekan), maka outputnya akan HIGH atau MENYALA pada pin 12. Sebaliknya, pada kondisi else syarat yang harus terpenuhi adalah A0 harus bernilai 0 atau LOW, maka ouputnya  akan LOW atau MATI pada pin 12.

    Apabila pin A0 bernilai HIGH yang terjadi adalah buzzer tidak akan bernilai 1 atau HIGH. Dikarenakan karena pada kondisi A0 bernilai HIGH merupakan kondisi else yang output pada pin 12akan mengeluarkan nilai 0 atau LOW, hal itu yang menyebabkan buzzer tidak berbunyi.  

    PEMOGRAMAN DIGITAL OUTPUT MENGGUNAKAN KONFIGURASI REGISTER



    Gimana kabarnya para sobat setia pembaca blog ini? sehat dan tentu baik-baik saja kan,  harapan saya sih. pada kesempatan kali ini saya akan meng-share penggunaan " KONFIGURASI REGISTER". Sebelumnya ada yang tahu bagaimana cara register itu sendiri? cara kerja register bisa di katan hanya menggeser ouput. Maksudnya adalah ketika inputan bernilai 1 atau HIGH maka ouputnya akan bernilai 1 atau HIGH juga pada pin 8 jika inputnya menggunakan PORTB, setelah selang 1 sekon maka outpunya akan bergeser ke pin 9, sementara pin 8 menjadi mati dan seterusnya hingga sampai ke pin 13. Hal ini dapat terjadi jika sobat semua menggunakan program yang berfungsi seperti di atas.

    Baiklah sobat sekalian, pada kesempatan kali ini saya tidak akan membahas tentang program menggeser seperti di atas. Tapi, saya akan membahas cara memprogram Arduino sehingga dapat menginput dan mengoutput sebuah program. Ayo simak langkah demi langkah membuat program ini.

    1. Langkah-langkah pada percobaan ini sama dengan cara "PEMOGRAMAN DIGITAL OUTPUT MENGGUNAKAN FUNGSI ARDUINO" yang telah saya share beberapa waktu yang lalu pada blog ini. Bedanya adalah pada sintaksnya saja.
    2. Maka sobat semua harus mengganti sintaks tersebut menjadi seperti di bawah ini :
    3. Amati output pada LED yang telah di pasang. maka hasilnya akan seperti tabel di bawah ini:
    Mengapa hasilnya bisa sama dengan percobaan yang sebelumnya yaitu "PEMOGRAMAN DIGITAL OUTPUT MENGGUNAKAN FUNGSI ARDUINO" ? ada yang mungkin tahu jawabannya? baiklah, saya akan mencoba menjelaskan mengapa progra tersebut memiliki output yang sama seperti pada pemograman sebelumnya. 

    Maksud dari sintaks setup DDR3 0x3F adalah angka 3 dan F merupakan bilangan hexa, oleh karena itu, maka kita ubah dulu menjadi binersehingga menjadi 0011 1111, dan cara membaca pinnya adalah dari kanan-kiri saja. Hingga mencapai pin 13 yang merupakan Output. Dan pada sintaks looping PORTB 0x07 yang maksudnya merupakan pengulangan berkali-kali untuk menampilkan keluaran. Nilai Yang di sini adalah 07 yang kita harus konversi menjadi biner sehingga menjadi 0000 0111 dan cara membaca juga sama dari kanan ke kiri hingga mencapai pin 13. Sehingga jika inputan bernilai 1 maka outputnya akan mengeluarkan nilai 1 atau ONpada pin 8, 9, dan 10 semenara pin 11, 12, dan 13 akan tetap mati.
     
    Dan apa sih perbedaan program ini dengan program yang menggunakan fungsi arduino? perbedaannya adalah program ini dilihat dari sintaksnya aja sudah lebih sedikit dan simple di bandingkan dengan  program fungsi arduino. Baiklah mungkin hanya itu saja membahas tentang program  ini. Sampai jumpa lagi di post saya berikutnya...

    TERIMA KASIH