Skip to main content

Rangkaian LCD 16x2 Mikrokontroller AVR ATmega

Malam yang dingin ditambah dengan suasana ruangan be AC.
ni ada rangkaian LCD 16x2 yang sudah umum dipakai dalam pembuatan project-project kecil maupun dalam membuat robot.
langsung aja perhatikan rangkaian berikut ini


rangkaian diatas berasal dari

konfigurasi pin yang diberikan langsung dari Code Vision AVR pada saat melakukan inisialisasi dengan menggunakan wizart. disana tertulis pin yang harus di hubungkan dan yg tidak digunakan.
ada penambahan untuk Pin sebagai masukan power dan sebagai kontras juga ada yang sebagai back light itu terdapat pada PIN 1,2,3 dan 15,16 pada LDC.
perhatikan tampilan dari Code Vision AVR saat inisialisasi wizart dijalankan.

terlihat pin-pinnya persis seperti rangkaian yang saya buat diatas.

komponen yang mungkin gak kelihatan diatas adalah:
Potensio sebagai pengatur kontras pada PIN3 LCD =20K
Dioda=IN4001
selebihnya adalah rangkaian umum minimum system.

note:
1. Setelah inisialisasi selesai, pilih generate, Save file and exit (udah pada tau kan?)
2. tambahkan #include untuk pemanfaatan delay.

cara mrogramnya ni....saya urai biar ngerti
cukup tambahakan
1. lcd_clear(); sebelum while(1) tepat diatas while(1)
2. lcd_gotoxy(0,0); sebagai penentu kolom dimulainya karakter yaitu pada kolom 0 dan baris 0.
3. lcd_putsf(¨saya berhasil¨); untuk menampilkan tulisan saya berhasil

Download
[1] Program Test LCD

[2] Datasheet ATmega16

selamat mencoba......semoga berhasil seperti anak pulau ini....salam anak pulau....:-)


Related Article
[1] minimum system mikrokontroller atmega16
[2] minimum system microcontroller atmega
[3] HQRP Smart Battery Charger for Canon EOS Kiss F, EOS Kiss X2, EOS Kiss X3 Digital Camera plus LCD Screen Protector

Comments

  1. duh bahasa apa toh.... :-t

    mas, kalo robot yang menggunakan switch itu maksudnya gmn?

    ReplyDelete
  2. bahasa C bro....tp yang jelas bukan C murni cozz dah di modifikasi oleh code vision biar lebih gampang.

    mungkin maksud kamu pake tombol ya? kalo pake tombol ya untuk ngatur-ngatur konstanta PID atau ngatur program lah....ntar kan nampil di LCD. atau maksudnya buat mode?
    wah.....jd ribet ni....gak ngerti maksud pertanyaan ni....

    ReplyDelete
  3. mas kenapa pin data 0-3 ga dihubungkn ke port?. klo pin data 0 - 7 saya gabung menjadi 1port gmn mas?.

    ReplyDelete
  4. karena konfigurasi di library code vision saat menggunakan code wizart ya seperti itu. kalo kamu pakai MCS51 biasanya kepakai semua.

    tapi kalo mau repot ya gak apa2 dibuat satu port tp jangan pakai wizart. harus inisialisasi sendiri. saya pernah nyoba bareng temen pakai WINAVR. kalau mau library lain juga banyak di internet.

    ReplyDelete
  5. oo jadi ga ada bedanya mas.. yauda mending pake cara sperti diatas ae. hehe. tengs :)

    ReplyDelete
  6. TERIMA KASIH ATAS INFORMASINYA SAUDARAKU

    ReplyDelete
  7. ko..ga da schematic dan broad buat download si bang..
    biar tambah lengkap gitu.

    ReplyDelete
  8. oalah....perlu ya...ntar deh di posting. sekarang mau lanjut rotating LED dulu sampai kelar. mungkin 1 postingan lagi biar pada gak penasaran sama rotating LED. he he he sabar ya...

    ReplyDelete
  9. rekan mungkin ada yg prnh menggunakan lcd 16x2 non backlight datavision phico d-094v-0 9904 p123-1 tolong d share ya soalnya sy bli lcd tu tp ga mau nyala?apa rangkaian n datasheetnya berbeda?

    ReplyDelete
  10. kemungkinan konfigurasinya berbeda. boleh minta datasheetnya? saya mau baca. link jug agak apa2

    ReplyDelete
  11. mas.., ko lcd saya g bisa tampil…, padahal ud buat di proteus ud bisa tam[il..,

    dan ud troubleshoot jg tidak ada yang jalur putus atau salah…,

    mohon bantuannya mas..,
    trimakasih

    ReplyDelete
  12. mungkin kontrasnya coba di puter2 seperti rangkaian diatas dan wizartnya pakai itu aja.
    saya juga pernah kejadian gitu gak nampil. tapi mungkin beda kondisi. saya menggunakan kabel sambungan padahal gak ada yang putus tapi tetep gak nyala. ternyata karena konektor. coba deh cek konektor dan solderan pada LCD kamu. mungkin aja ada jalur yang putus soalnya LCD kan double layer.

    ReplyDelete
  13. maz.... mau tanya tentang masalah program interface...
    misalnya kita mau menampilkan sesor ke LCD. semisal sensor pertaama membaca garis putih n di LCD menapilkan "1". seperti itu lah.. itu gmn programnya mz... makasih... ^^

    ReplyDelete
  14. wah...gak mungkin dijelasin di komen. sebenrnya gampang....intinya cukup tampilkan logo atau karakter "1" atau "0" di LCD dengan menggeser kolom saja untuk tiap sensor.

    geser kolom pada intruksi lcd_gotoxy(1,0);

    maka dia akan berada pada kolom ke 1 baris ke 0

    ReplyDelete
  15. mas.,
    kalo mau ngecek adc pada atmega8 dengan display led gimna??
    jadi nanti ada masukan Vdc analog dikonversi ama adc dan tampilannya LED.,
    thanks b4

    ReplyDelete
  16. seting aja menggunakan wizart dan pilih chip ATmega8 dan xtall yang digunakan.

    kemudian pada tab ADC. centang enable ADC dan centang use 8 bit. gunakan AREFF pada pada combobox pilihannya.

    atur salahsatu port menjadi output semua. misal PORTD.
    pada atmega 8 ADC terletak pada PORTC. sehingga PORTC jangan digunakan lagi ya.......


    buat program didalam dalam while 1 seperti berikut.

    while(1)
    {
    PORTD=read_adc(0); // langsung nampil pasa PORTD
    delay_ms(100); //boleh digunakan boleh tidak
    }

    sekian, salam anak pulau :)

    ReplyDelete
  17. mas, numpang tanya tentang lCD, sy tlh buat program yang ada 3 input yang dimasukkan ke ADC kemudian salah 1 ADC jika telah memasuki range tertentu akan mengeksekusi perintah, program sudah jalan, yang jadi masalah ada 3 syarat perintah a,b,c ketika perintah c yang dijalankan ternyata perintah a dan b juga ikut tampil di LCD. mohon bantuannya mas.
    sorce code dan simulasi proteusnya sy sertakan di bawah. thanks.

    http://www.ziddu.com/download/20112819/teslcd.rar.html

    ReplyDelete
  18. udah saya modifikasi proteus dan program. untuk mengeluarkan angka di variable "a" maksudnya kan?

    ambil disini download

    untuk membuat kondisi agar tidak terdeteksi sebagai kondisi lain juga maka harus buat se detail mungkin. lihat di downloatan ntar.

    kasusnya
    jika angka<2
    jika angka<3
    jika angka<10

    maka semua kondisi tersebut diatas jika nilai angka berupa nilai "1" maka semuanya benar semuanya berar berada dibawah 2,3 dan 10. yakan?

    lihat aja contoh dan simulasi nya di file downloatan link diatas. proteus juga udah saya ganti potensio nya agar saat saat running juga bisa di ganti nilainya. salam anak pulau.

    ReplyDelete
  19. thanks mas inzar salfikar.
    sy kira kalau pake staement 1<a<3 kondisi yg lainnya g bakal ngikut, ternyata harus detail. thanks mas.
    oy ini biar tampilan variabel "a" nya bisa konstan tampil di lcd gmn mas? soalnya ini msh kadang agak berkedip lama

    ReplyDelete
  20. program dalam

    while (1)
    {

    lcd_clear();

    gak boleh ada clear. sehingga waktu terdeteksi kondisi pertama akan menunda 300 ms dan kemudian di clear lagi.

    pindahin lcd_clear() ke atas while(1)

    kalo ada sisa tulisan karena gak di clear maka untuk menghindarinya tambahkan spasi di akhir dari angka yang muncul untuk menghindari tersisanya tulisan.

    misal:

    245 -- tampilan awal
    berikutnya harusnya 10 tapi malah tampil
    105 karena 5 tadi masih tertinggal di LCD. so....kalo ditambahin spasi 2 kali setelah angka maka akan menghapus nilai dibelakangnnya.

    kalo perubahannya linear cukup 1 kali aja spasinya. selamat mencoba dan ber experimen.

    salam anak pulau. sambil kelaparan tetep harus bisa ngucapin slogan. wkwkwkw. buka puasa di aceh lebih lama 1 jam dibanding surabaya. wkwkwkwk

    ReplyDelete
  21. ok mas sy edit dulu codenya :D

    salam anak pulau jg :D (surabaya kan termasuk pulau jawa heheehe ;p)

    ReplyDelete
  22. beda dong...ini beneran pulau WEH....kalo di peta gak keliatan...paling kalo skala gede keliatannya cuma titik doang.

    ReplyDelete
  23. mas bro mw tanya lagi nih.

    1. variabel "a" kan sy jadiin float dan sudah sy kasih spasi tpi masih ada nyempil angka "0" pada angka yg terkecil. gmn y mas ngilangin nol nya yg ketinggalan?

    2. berhubung prgram yg masnya edit sdh berhasil maka sy buat lgi 1 syrata tp dgn variabel "b" tipe datanya integer, trus sy masukin ke code yg tadi dan ternyata nyempil angka "00" dibelakang koma, gmn caranya buat ngilangin angka "00" dibelakang koma, sy pake perintah "itoa" mlh error mas.

    maaf ngerepotin lagi ^_^

    ReplyDelete
  24. 1. kalo float pasti muncul nol dong di belakang.
    coba tulis gini %.f mungkin bisa. ane lupa2 ingat.

    2. kalo saya pake sprintf biasa. itoa gak pernah make. baru tau pas liat program kamu kemarin wkwkwkwkwkwk......

    ReplyDelete
  25. wah berarti sy buat code sendiri wkkwkww

    ReplyDelete
  26. mas mbak, skematiknya agak susah di liat jalur wire nya. mohon diperbaiki. saran aja sih.

    ReplyDelete
  27. gak susah kok. krn itu mengugnakan NET liat aja nama yang sama. setiap nama yang sama pada kakinya itu adalah terhubung.
    malah kalau di kasi jalur ntar jadi semak.wkwkwkkw
    trims infonya.

    ReplyDelete
  28. mas, boleh minta rangkaian konfigurasi LCD 16x2 dengan atmega 8535

    ReplyDelete
  29. di contek aja gambar pada postingan ini ya....udah bener kok itu. saya pake codevision buat mrogramnya.

    ReplyDelete

Post a Comment

Popular posts from this blog

PCB Jam Digital 7 Segmen Mengunakan ATmega8 (PCB,SCH dan Firmware Download)

akhirnya tercapai juga ni......
mau upload yang satu ini. langsung ke TKP aja. semoga bermanfaat.



rangkaian skematicnya seperti berikut ini


rangkaian diatas menggunakan NET sehingga dengan hanya mengganti nama pada tiap PIN komponen maka dengan mudah langsung terhubung secara otomatis. terlihat lebih rapi kan..........? jika kita menggunakan kabel semuanya. mungkin yg liatnya udah pusing duluan. tp jangan panik.......... disini saya sertakan link download PCB dan skematic diatas.
Download..... PCB jam digital ATmega8Skematik Jam Digital ATmega8Firmware jam digital ATmega8Main Program jam digital ATmega8 (sudah OK)Sub rutin program jam digital ATmega8Project file programListing komponencara gabung program karkulasi.c dan program utamaHasil rangkaian Jam digital ATmega8 Semua file download diatas terutama pada main program dan sub rutin harus di gabungkan untuk dapat di kompilasi menjadi file [dot]HEX,  atau bisa langsung gunakan file firmware dan diisi ke mikrokontroller ATmega8. terima…

Minimum System ATmega8535/16/32 PCB Menggunakan Software Eagle

perhatkan screen shot berikut ini, mungkin dah pada tau kalo ngeliat ni rangkaian. soalnya sangat - sangat simple and sangat mudah untuk dibuat apalagi kalau menggunakan cara membuat PCB seperti yang telah saya jelaskan pada posting sebelum - sebelumnya.


gambar diatas merupakan PCBminimum system ATmega8535 / ATmega16 / ATmega32. kenapa demikian?
karena konfigurasi pin dari jenis Microcontroller diatas adalah sama, hanya dibedakan pada memorinya saja.
perhatikan juga tata letak komponennya yang hanya sedikit he he he...

untuk posisi port udah tersusun rapi dikaenakan konfigurasi pin mikrokontroller ini sudah berurutan jadi gak susah - susah deh...
untuk lebih jelasnya bisa langsung lihat data sheetnya aja oke? berikut juga saya sertakan PCB nya menggunakan eagle versi 5.0.0

download
[1] ATmega8535
[2] ATmega16
[3] ATmega32
[4] Minimum system Mikrokontroller ATmega8535/16/32

ada pertanyaan? silahkan....
ada permintaan? monggo......
salam anak pulau aje ye......:-)

Related Article
[1] Mini…

Perbaiki Baterai Lithium Polymer (li-po)

kalo ngetik ni key word seperti diatas tu....bakalan nyasar kesini...
nah......

gak usah banyak basa-basi deh.
malam ini ada masalah besar yang terjadi pada baterai line tracer kesayanganku, sebuah Lithium Polymer di nyatakan rusak oleh chargernya sendiri... begitu tega dia mengkhianati pasangannya... ngaur aja ni....

tu....kasus ini udah buat saya rugi sampe Rp. 180 Rb untuk sebuah harga baterai Lithium Polymer yang memiliki tegangan 7,4 dimana terdapat 2 buah cell baterai didalamnya.

ada beberapa hal yang perlu diperhatikan kalau pakai baterai Li-po ini.

pada baterai
1. baterai akan rusak jika tegangan di tiap cellnya dibawah 3,5 Volt. normalnya 3.7.

2. mengisi ulang baterai hanya bisa dilakukan dengan charger khusus yang telah diatur khusus menjaga tegangan tetap stabil, jika menggunakan charger biasa maka baterai dalam jangka waktu panjang akan menggelembung.

pada charger (yang murahan ni....)
1. tegangan input charger menggunakan 12 DC
2. led merah akan menyala jika power input charger…