Cara Menyambung LCD ke Mikrokontroler

Mungkin ini hal sepele. Bagi anda yang sudah lama  bergelut dg mikrokontroler. Tapi masih banyak juga yang perlu penjelasan detail. Kami masih sering mendapat pertanyaan bagimana menghubungkan LCD ke pin mikrokontroler.

Pertama, kita pahami dulu LCD, yang dibahas tipe LCD karakter, yaitu yang menampilkan karakter/huruf saja. Ada sih LCD grafik yang dapat menampilkan grafik atau gambar. LCD karakter (alphanumeric LCD) ada beberapa tipe, berdasar jumlah baris dan kolom. Semakin banyak kolom dan baris maka semakin banyak karakter yang dapat ditampilkan.

Umumnya yang dipakai adalah ukuran 16×2, 16 kolom dan 2 baris.

LCD 16×2

Sebuah LCD, hampir semua ukuran, terdapat 16 kaki/pin. Seperti apa saja ?
[gambar pin]
Keterangannya :

No pinKeterangan
1GND
2VCC
3VEE
4RS
5RW
6E
7D0
8D1
9D2
10D3
11D4
12D5
13D6
14D7
15A
16K

Pin nomor 1 konek ke GND dan 2 terhubung dengan tegangan 5 V, ini untuk supply tegangan LCD. Pin 3 (VEE) untuk mengatur kontras, biasanya dihubungkan dengan trimpot, atau langsung ke ground juga boleh (kontras maksimal). Pin RS, RW dan E merupakan jalur control, dihubungkan dengan kaki mikrokontroler.

Pin nomor 7 s/d 14 (D0 s/d D7) adalah jalur data, tetapi yang dipakai hanya D4 s/d D7. Kenapa ? Biar irit port dan BASCOM-AVR maupun CVAVR  cocok untuk data 4 bit. Jadi D0 s/d D3 tidak disambung, D4 s/d D7 disambungkan ke pin mikrokontroler. Trus nomor 15 itu Anoda dan 16 Katoda, untuk power backlight, sifatnya optional. Jika backlight mau dihidupkan maka Anoda dihubungkan dengan +5V dan Katoda ke Gnd. Jadi pin 15 (A) nyambung ke pin 2 (Vcc) dan pin 16 (K) sambungin ke pin 1 (Gnd).

Gimana nyambungnya ? Continue reading

Posted in Mikrokontroler AVR | Tagged , , , , , | Leave a comment

6 Sensor Ultrasonik + ARDUINO , Apa Jadinya ???

Pas kemarin ‘nemu’ sensor ultrasonic, saya berpikir, buat apa ya baiknya. Total ada 6 sensor ultrasoniik gan ! Trus tidak lama setelah itu nemu Arduino. Ya udah deh, jodohin aja, pakai konsep multigame (1 Arduino jodohan sama 6 sensor ultrasonic) hehe…
Baik, sekarang kita akan membuat aplikasi mikrokontroler Arduino lagi. Pengukur jarak 6 sensor ultrasonic. Arduino-nya pakai Arduino UNO. Untuk ‘mata’ nya kita pasang SRF04, sensor ultrasonic. Hasilnya nanti dikirim serial ke komputer.
Rangkaiannya :

Rangkaian 6 Sensor Ultrasonik dg Arduino

Programnya :
/*—————————————————–
‘     APLIKASI 6 Ch Ultrasonik
‘     ULTRASONIC RANGE METER
‘     TRIG –> Pin 8
‘     ECHO –> Pin 9
‘     Hasilnya tampilkan ke LCD
‘     www.inkubator-teknologi.com
‘————————*/
#include <LiquidCrystal.h>
unsigned int jarak, timer,S1,S2,S3,S4,S5,S6;

void setup(){
  Serial.begin(9600);    
  pinMode(2, OUTPUT);
  pinMode(3, INPUT);
  pinMode(4, OUTPUT);
  pinMode(5, INPUT);
  pinMode(6, OUTPUT);
  pinMode(7, INPUT);  
  pinMode(8, OUTPUT);
  pinMode(9, INPUT);  
  pinMode(10, OUTPUT);
  pinMode(11, INPUT);  
  pinMode(12, OUTPUT);
  pinMode(13, INPUT);
}
Continue reading

Posted in Arduino | Tagged , , , , , | Leave a comment

Palang Pintu Kereta Api Otomatis dg ATmega8

Lama ya kita tidak ngoprek ATmega8. Kali ini aplikasi mikrokontroler akan menggunakan AVR ATmega8 sebagai ‘otaknya’. Kita akan membuat sistem palang pintu kereta api otomatis. Kalau biasanya kan dijaga petugas KAI, kalau ada kereta mau lewat , bapak petugas langsung menutup palang pintu sampai kereta bener2 lewat dan kemudian membukanya kembali.

Eh, penjaga palang pintu itu tugasnya luar biasa ya. Menjaga keselamatan pengguna jalan, termasuk kita. Dan tidak mengenal hari libur (paling gentian shift ). Lebaran juga tetap masuk, dan harus tetap terjaga. Lha kalau pas ngantuk gimana ? Kalau pas capek gimana ?  Kalau pas lupa/lengah ? Nah untuk itu kita akan membuat sistem palang pintu kereta secara otomatis.

Selain untuk mengurangi ‘human error’ alat ini dapat juga dipasang di palang pintu yang tidak ber-penjaga. Dengan alat ini ketika ada kereta datang maka palang pintu secara otomatis akan menutup dan membuka sendiri, tanpa petugas jaga.

Sistem Palang Pintu Kereta Api Otomatis

Prinsip dasarnya sederhana. Kita pasang 4 sensor untuk mendeteksi kereta yang lewat. dapat memakai Infrared + Phototransistor. Pada contoh simulasi ini nanti kita pakai LDR, karena yang paling mudah disimulasikan .

Sensor 1 dan Sensor 2 untuk mendeteksi kereta dari arah kiri. Sensor 3 dan 4 dari arah kanan. Sensor 1 dan 2 juga dipakai untuk mendeteksi benda/objek yang lewat, apakah kereta api atau yang lain. Kan bisa jadi hewan ya, semacam kerbau atau sapi numpang lewat, ngenai sensor, bisa2 palang pintu nutup otomatis deh…
Continue reading

Posted in Mikrokontroler AVR | Tagged , , , | 5 Comments

‘ULTRASONIC DISTANCE METER’ TAMPILAN 7 SEGMENT

Beberapa waktu lalu kita telah posting aplikasi mikrokontroler dengan sensor ultrasonic. Aplikasi dasar sih, yaitu mengukur jarak dengan sensor ultrasonic. Tampilan LCD, dengan sensor ultrasonic SRF04. Bisa lihat lagi disini.

Kesempatan kali ini kita ganti ya, display bukan LCD lagi tapi memakai 7 Segment. Kalau sensornya masih sama, SRF04. Mikrokontrolernya pakai AVR ATmega8535, diganti yang lain juga boleh kok. Skematik mikrokontroler dengan sensor ultrasonic seperti ini :

Rangkaian ULtrasonik Tampilan 7 Segment

Rangkaian ULtrasonik Tampilan 7 Segment

Program kita buat dengan CodevisionAVR (CVAVR) dengan Chip : ATmega8535 dan Clock : 16 MHz.

#include <mega8535.h>
#include <delay.h>
Continue reading

Posted in Mikrokontroler AVR | Tagged , , , , , | 5 Comments

Counter Up – Down dengan AVR

Ada banyak model counter, walaupun secara fungsi utama sama, menghitung . Ya menghitung pulsa yang masuk ke mikrokontroler. Beda tiap counter biasanya pada tampilan/display, ada yang pakai LCD ada juga tampilan 7 segment.

Ini kali kita bikin counter yang dapat menghitung ‘up’ dan menghitung ‘down’. Counter dengan mikrokontroler AVR ATmega8535.

Programnya kita tulis dengan BASCOM – AVR :

$regfile = “m8535.dat”
$crystal = 16000000

Portd = &HFF
Ddrd = &HFF
Portb = &HFF
Ddrb = &HFF
Porta = &HFF
Ddra = &H00

Dim Rat As Word , Pul As Byte , Sat As Byte , Temp As Word
Dim _counter As Word , Flag As Byte , I As Byte

_counter = 0
Gosub Convert
Do
If Pina.0 = 0 Then
Flag = 1
_counter = 0
Elseif Pina.1 = 0 Then
Flag = 2
_counter = 999
End If
If Flag = 1 Then
Incr _counter
Gosub Convert
Elseif Flag = 2 Then
Decr _counter
Gosub Convert
End If
Gosub Disp
For I = 0 To 150
Gosub Disp
Next
Loop
‘—————- Continue reading

Posted in Mikrokontroler AVR | Tagged , , , , | Leave a comment