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

Sunday 1 December 2013

MENERIMA DATA DARI UART DENGAN SISTEM INTERUPSI

SEMANGAT PAGI sobat Blogger, pada kesempatan ini saya akan berbagi lagi nih, cara MENERIMA DATA DARI UART DENGAN SISTEM INTERUPSI. Cara kerja nya sama seperti SISTEM POOLING yaitu menerima data yang di berikan Arduino IDE kepada LCD penerima, TETAPI pada percobaan ini kita akan menggunakan SISTEM INTERUPSI bukan POOLING. Penerima data akan menggunakan BAUDRATE 9600. AYO SIMAK langkah-langkah di bawah ini :
  1. Seperti biasa, sebelum melakukan percobaannya kita harus membuat rangkaiannya. Rangkaian yang harus di buat seperti di bawah ini.
  2. Mari lakukan coding program dengan menggunakan sintaks program di bawah ini.


  3. Setelah selesai, Ayo buka Serial Monitor pada IDE dengan cara Ctrl + M. Pastikan konfigurasi Serial Monitornya Seperti tampilan di bawah ini.
  4. Contoh data yang dikirim IDE dan yang di terima di LCD penerima
  • Teks Yang DikirimkanArduino
    Teks Yang Di TerimaLCD
    Halo
    Halo
    SayaMakanNasi
    SayaMakanNasi
    Hasmar
    Hasmar

    Husein
    Husein
    Harahap
    Harahap
Adapun penjelasan sintaks pemograman di atas adalah sebagai berikut :
  • #include <LiquidCrystal.h>    //memanggil library untuklcd
    #define FOSC 16000000         //menetapkannilai FOSC bernilai 16000000
    LiquidCrystallcd(2, 3, 4, 5, 6, 7); // inisialisasi pin lcd
    String dataSerial;                    //mendekelarasikandataSerialsebagai string
    voidinitSerial(intbaudrate)
    {
    intubrr = FOSC/16/baudrate-1;
    // Mengisi register UBRR0H dan UBRR0L untukmenentukanbaudrate
    UBRR0H |= ubrr>>8;
    UBRR0L |= ubrr;
    // Mengaktifkansaluran transmitter dan receiver
    UCSR0B |= (1<<RXEN0)|(1<<TXEN0);
    // Menggunakan format data 8 bit
    UCSR0C |= (0<<UCSZ02)|(1<<UCSZ01)|(1<<UCSZ00);
    // Menggunakan 1 stop bit
    UCSR0C |= (0<<USBS0);
    // No Parity
    UCSR0C |= (0<<UPM01)|(0<<UPM00);
    // Mengaktifkan RX interrupt
    UCSR0B |= (1<<RXCIE0);
    }
    // Rutin yang akandijalankanjikaterjadiinterupsi
    ISR(USART_RX_vect){
    char data = UDR0;
    if(data=='\n')
    {
    lcd.clear();                   // tampilanlcd di hapus
    lcd.setCursor(0,0);      //Menampilkan text padabarispertama LCD
    lcd.print("Incoming Data"); //Menampilkan text “Incoming Data” padabarispertama di LCD
    lcd.setCursor(0,1);      //Menampilkan text padabariskedua LCD
    lcd.print(dataSerial);   //Menampilkan data ygdikirimmelalui serial
    dataSerial = "";
    }
    Else
    {         
    if(data!='\r')                 //jika data tidakada
    {
    dataSerial += data;      //Jikatidakada data makatampilkan text “data”
    }
    }
    }
    void setup()                 //settinganawal program
    {
    initSerial(9600);
    lcd.begin(16,2);           // tampilanlcd (kolom , baris)
    lcd.clear();                   // tampilanlcd di hapus
    sei();
    }
    void loop()                  //program looping
    {
    }

    • Perbedaan antara INTERUPSI dengan POOLING adalah Suatu kondisi yang memicu atau memaksa sitem mikrokontroler untuk menghentikan program utama dan memaksa menjalankan interupsi, SEDANGKAN sitem POOLING adalah kondisi arduino menunggu pengiriman data dari komunikasi serial.


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 6 October 2013

ANALOG INPUT DENGAN TEGANGAN REFERANSI EKSTERNAL




            Tuk.. Kitak... Kituk.. Kitak.. Kituk.. Suara Kuda Kereta Kencana.. Wow.. Wow.. Wow... Lagu apaan itu ya? Eh.. udah mulai ngepost aja nih... Em... Kali ini ane mau ngeshare cara mengkonversi potensiometer menjadi nilai digital lagi nih, tapi dengan menggunakan tegangan AREF yang di setting sebesar 4 volt. Sobat mungkin pada gak sabar nih bagaimana caranya, sok atuh simak aja baik-baik.

  1. Rangkaian yang dipakai sama saja dengan rangkian sebelumnya di pos yang lalu, bedanya adalah rangkaian ini di tambah potensio 1 lagi, sehingga total potensio yang di pakai 3. Tetap memakai ISIS 7.
  2. Tuliskan sintaks di bawah dengan menggunakan Program arduino (IDE).
  3. Mari lihat dan amati nilai tegangan yang tertera di LCD. Dan hasil nilai yang keluar di LCD kurang lebih di bawah ini :
  4. Jika belum paham program di atas, mungkin penjelasan di bawah ini dapat membantu anda sedikit memahami program di atas.
Udah di penghujung post-an aja nih. Gak terasa ya rupanya.. O.. Iya Jangan lupa Komen Dan CENDOL-nya ya sobat.. Demi membangun post-an lanjutannya biar lebih mudah di pahami dan menarik baik dalam kata-katanya maupun gambar yang di tampilkan..
TERIMA KASIH..

ANALOG INPUT DENGAN TEGANGAN REFERENSI INTERNAL SEBESAR 1,1 VOLT



Wow... Senang sekali saya hari ini, karena mau share-share sedikit ilmu yang saya miliki ke para pembaca setia blog ini. Pada post-an kali ini kita akan membahas bagaimana cara mengkonversi tegangan pada potensiometer menjadi nilai digital. Data hasil konversi tersebut akan di tampilkan pada layar LCD yang berukuran 2 x 16. Dan memakai tegangan ADC internal sebesar 1,1 volt. Pengen tahu bagaimana caranya? yuk.. simak baik-baik.
  1. Rangkainlah rangkain di bawah ini menggunakan ISIS 7.
  2. Tulislah sintaks di bawah ini menggunakan program arduino, kemudian compile dan upload program tersebut ke sistem minimum arduino.
  3. Putarlah potensiometer dari 0 tegangan sampai 1,5 tegangan (volt) dengan rentang (range) 0,5 volt setiap pengukurannya. Sehingga anda akan mendapatkan data lebih kurang seperti ini :
  4. Adapun penjelasan dari sintaks di atas adalah sebagai berikut :
    Mungkin cukup sekian penjelasan mengenai konversi tegangan potensiometer menjadi nilai digital dengan tegangan 1,1 volt. Jika ada yang belum paham silahkan komen ya.. kalau puas jangan lupa CENDOL-nya..
    Hahahaha...


ANALOG INPUT DENGAN TEGANGAN REFERENSI VCC



    Sik.. Asik.. Asik.. Kenal Dirimu.... Sik.. Asik.. Asik.. Kenal Dirimu.... Sedikit nyanyi buat mencurahkan isi hati hahai... karena saya lagi senang, saya mau share lagi mengenai cara konversi tegangan potensiometer menjadi nilai digital dengan memakai tegangan VCC pada mikrokontroler (Arduino) sebesar 5 volt. Sok atuh di lihat dan di simak baik-baik..

  1. Rangkaian rangkaian di bawah ini dengan memakai ISIS 7, rangkaian ini sama dengan rangkaian pada post sebelumnya.
  2. Tuliskan sintaks di bawah ini menggunakan program arduino (IDE).
  3. Coba amati perubahan nilai pada LCD pada tegangan 0 Volt sampai 5 Volt dengan rentang (range) tegangan 1 Volt tiap pengukuran. Hasilnya pasti, kurang lebih seperti tabel di bawah ini :
  4. Mungkin penjelasan dari sintaks di bawah ini dapat membantu anda dalam memahami pemograman dari sintaks di atas.
    Semoga post-an kali ini dapat bermanfaat buat sobat semua, sebelumnya menutup post-an ini saya akan mencoba berpantun sedikit "Ada kayu di rumah pak tatang, yang bentuknya indah sekali, Jika ada waktu yang panjang, Izinkan kita berjumpa lagi". Ops... Jangan Lupa Cendolnya ya sobat..