jump to navigation

Pembuatan Scrolling Text Pada Dot Matrix [1] February 2, 2009

Posted by ayoenx in Mikrokontroler.
trackback

Scrolling text pada dot matrix ini menggunakan IC 74HC595 sebagai shift register untuk mengatur kolom ( Driver kolom ).PortB di set sebagai output yang terhubung pada 74HC595. PortB.0 sebagai data yang dikeluarkan, PortB.1 sebagai clock dan PortB.2 diset sebagai latch atau data kebalikan dari data yang dikeluarkan clock pada PortB.1. Data dari PortB.0 akan dikeluarkan secara paralel namun bergantian (shift register) pada pin output 74HC595 yang berjumlah 8 pin sehingga dapat menghidupkan 8 buah kolom pada dot matrix secara bergantian. trik untuk menyalakan kolom diatur dengan delay yang sangat cepat sehingga terlihat kolom dot matrix itu menyala berbarengan, padahal data dikeluarkan secara bergantian namun data tersebut berganti dengan sangat cepat karena telah diatur delay. Karakter pada dot matrix diatur pada driver baris. Data pada driver baris disimpan mengguanakan array  dan data dikeluarkan melalui portA pada atmega8535.PortA di set sebagai driver baris yang mengeluarkan logika 0 “low”. PortA tersebut terhubung dengan rangkaian penguat (transistor 2N3906) yang mengubah logika 0 ke logika 1 “high”dikarenakan driver kolom dot matrix yang di set 0 “low” agar dapat menyalakan dot matrix. Oleh karena itu data output pada driver baris menggunakan tanda “~” agar data yang keluar adalah data kebalikan dari data yang ada pada array ( PORTA=~fonts[c]; ).

Berikut ini adalah contoh coding untuk menyalakan dot matrix yang datanya langsung mengambil dari array, bila data yang ada pada array dirubah maka tampilan dot matrix itu juga akan berubah.

———————————————————————————————–

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

#include <stdio.h>
#include <string.h>
//#include “font5x8.h”

void main(void)
{

int i=0;
int j=0;
int n;
int z;
int y;
int c;
//char fonts[5]={0x7E, 0x11, 0x11, 0x11, 0x7E};

char fonts[] = {
0x7F, 0x49, 0x49, 0x49, 0x41,0x00,// E
0x46, 0x49, 0x49, 0x49, 0x31,0x00,// S
0x7F, 0x09, 0x19, 0x29, 0x46,0x00,// R
0x3E, 0x41, 0x41, 0x51, 0x32,0x00,// G
0x00, 0x00, 0x00, 0x00, 0x00,0x00,// spase
0x00, 0x41, 0x7F, 0x41, 0x00,0x00,// I
0x46, 0x49, 0x49, 0x49, 0x31,0x00,// S
0x00, 0x00, 0x00, 0x00, 0x00,0x00,// spase
0x3E, 0x41, 0x41, 0x41, 0x22,0x00,// C
0x3E, 0x41, 0x41, 0x41, 0x3E,0x00,// O
0x3E, 0x41, 0x41, 0x41, 0x3E,0x00,// O
0x7F, 0x40, 0x40, 0x40, 0x40,0x00,// L
0x00, 0x30, 0x30, 0x00, 0x00, 0x00,// .
0x00, 0x30, 0x30, 0x00, 0x00, 0x00// .
};

DDRB=0xFF;
DDRA=0xFF;
PORTA=0xFF;
PORTB=0xFF;

// USART 9600
UCSRA=0x00;
UCSRB=0xD8;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x47;
while(1)
{
for(n=0; n<167; n++)         // jumlah karakter yg mau tampil
{
y=n*1;     //y=faktor geser
z=0;

while(z<2) //speed
{
z=z+1;                  //scroll

// baris aktif low
// kolom aktif high

// CETAK DOT MATRIK
for(i=0;i<81;i++)  // i=jumlah kolom dot matrix
{

c=i+y;
c=c-81;      // biar mulainya dari ujung kanan

// printf(“i:%d”,i);
// printf(” y:%d”,y);
// printf(” c1:%d”,c);

if(c<0)
{
PORTA=0xff;  // biar ketika awal, sebelah kiri ujung awal kosong
}

if(c>83)           // Pemotongan Ekor
{
c=c-84;
PORTA=0xff;
}
else
{
PORTA=~fonts[c];
}
//  printf(” c2:%d”,c);
//  printf(“\n\r”);
// KOLOM,nyala jika 0
if(i==0)
PORTB.0=0;
else
PORTB.0=1;

// Generate clock
PORTB.1=0;    //Clock
PORTB.2=1;    //Clock
PORTB.1=1;    //Clock
PORTB.2=0;    //Clock
delay_us(200);
} //end looping for shift register

};  //end while setelah 300

if(n==166)
{
n=0;
}

}   //end for
};     //end while
}      // end void main

———————————————————————————————–

Berikut ini adalah rangkaian skematik dari dot matrixnya.

schematic-4-dot-matrix1

dot matrix pada coding tersebut akan mengeluarkan karakter ” ESRG IS COOL..” ( lihat coding pada array char fonts) yang berjalan dari kiri ke kanan pada pada 4 buah dot matrix.

Comments»

1. suaradjus - February 3, 2009

mas kalo bisa tu schematic di perbesar donk
thank’s banet ya

2. Admin - April 27, 2009

tinggal di save aja jpg nya,,terus di perbesarr,,

3. Yudi - August 16, 2009

permisi…
mas, bisa minta tolong ga???
saya mo bikin scrolling text message dot matrix dengan AT89S51,
tolong donk dimuat schematic-nya kalo driver dot matrix-nya pake 74LS245 ama ULN2803 trus dot matrix-nya 16 biji.
ama skalian sample source code-nya ya mas…
Thank’s Banget Pokoke…

4. alex - September 7, 2009

mas, sekalian saya juga request tolong bikinin teh, sama pesen baso sekalian ya, … oh ya tolong anterin sekalian kerumah. tengkiu k’bangetan deh pokoknya.

5. Jhony - September 14, 2009

mas tau ngga cara pakai RUNNING TEXT yang ada di http://www.elektro
saya dah ada schema nya yang pake at89c2051 menggunakan PC
atas respon nya Terima kasih

6. ade - November 1, 2009

mas kalo dibuat variasi gmn…jd ngga running aja bisa naik turun hurupnya..tolong ya mas…

7. joko - November 6, 2009

mas saya mao buat rangkaian dotmatrix dengan 10 karakter yang bisa animasinya berupa kiri kanan dan blink. tolong skematik dan source codenya dunk…makasi y

8. Rus Sulistyono - November 11, 2009

Salam kenal,
Untuk membuat jam digital dengan led dot matrix caranya bagaimana ya?

9. alil - January 27, 2010

Assalam,

Kok program interface untuk PC untuk merubah, melihat dan menghapus text ndak dicantumkan?
Maaf mas, klo bisa diposting juga supaya belajarnya ndak setengah-setengah.

10. Wahyu - January 27, 2010

Ass

Program diatas sebenernya hanya menampilkan karakter pada dot matrix yang diambil dari library karakter yang telah dicantumkan dalam source code.
Kalo untuk interface ke PC dengan menu mengisi,merubah,melihat dan menghapus text haruslah menambah fungsi pada source code untuk interface komunikasi serial. Dan juga ditambah dengan manajemen memory (dataflash,eeprom,ram) pada mikro karena data yang akan diisi,dirubah,dihapus dll pasti memerlukan tempat untuk penyimpanan.

Thanks

11. astonix - February 8, 2010

Assalamu’alaikum

Makasih mas tutorialnya, izin copy-paste yah :).
Btw, Klo jumlah LED dot matrixnya 11 buah IC drivernya dibikin berapa?

Masukan mas, itu koneksi jalur dari pin 7 IC2 ke pin D1 Dot marix belum nyambung…. mungkin lupa nyambungin jalurnya yah 🙂

Wassalam

ayoenx - February 24, 2010

Assalamu’alaikum

buat mas Astonix jalur IC2 di pin 7 sebenernnya sudah nyambung tapi dalam gambar tidak dihubungkan dengan wire. Pin tersebut telah nyambung karena dengan penamaannya pin 7 IC pin 7 = D1 terhubung dengan dot matrix yang telah diberi nama D1 juga.
mohon maaf atas segala keterbatasannya…..:)

Thanks
wass

12. ketu - February 24, 2010

ao ms! dari tutorial di atas sudah saya coba tetapi kok yan g tampil malahan g karuan sama sekali g tampil huruf.
aq wm tanya yang pean pk tu dot matrik buatan sendiri atau beli??

thanks!

ayoenx - February 24, 2010

coba dicheck rangkaiannya dulu, apakah sudah sama dengan rangkaian yang ada pada gambar. apakah led nya sudah ada yang nyala?…
dot matrixnya kami beli yang super bright 5×7 ukuran kecil kira2 0,7″.

ketu - March 10, 2010

sudah mbak mas! tapi led yang mengyala itu tidak membentuk huruf sama sekali. smua telah saya samakan tetapi tetap saja. mas mabk bisa minta soft copy programnya biar nanti tkcoba ke mikro q langsung tambah flow chartnya klo g merepotkan.
saya pk atmega 8 clock 11 mega. tolong di kirim ke email saya
azil_man@yahoo.co.id

13. ketu - March 17, 2010

tanya lagi! saya sudah mencoba ternyata huruf yang bisa di tmpilkan terbatas hanya sampai beberapa kata saja. la kalau ingin menampilkan beberapa suku kata yang panjang bagaimana ya???

tolong bantuannya

14. wenda - March 20, 2010

salam kenal mas, mo tanya punya tabel buat font chartx ga? coz aq mo bikin juga tanks

15. rudi - August 4, 2010

mas bisa bantuin saya gak…
saya minta program yg pakai bascom dong…
saya masing pemula banget nih… sementara masih coba-coba pakai bascom. makasih ya….

ayoenx - September 22, 2010

kalo pake bascom saya belum pernah, kalo mau pake codevision aja pake bahasa C….

16. sigit - September 21, 2010

kalo di PC nya pake proram apa buat nulis carakternya..

ayoenx - September 22, 2010

kalo dari PC ngisi nya pake hyperterminal berbasis komunikasi serial aja…dari mikro pasang kabel tx dan rx ke serial(db9) di PC…terus nanti interaktifnya di hyperterminal…

17. Bagas - November 2, 2010

koq eror ya pas di compile

ayoenx - November 3, 2010

eksepsi eror nya gimana mas….

u4u4n - November 11, 2010

ini error nya

348 line(s) compiled
1 error(s)
7 warning(s)

missing ‘}’

18. u4u4n - November 11, 2010

kenapa ya, padahal udah tak sweeping nggak ada yang salah ek

ayoenx - November 12, 2010

kalo copy paste langsung dari blog ini pasti ada error nya sebab symbol kutip 2 ( ” )nya itu beda, coba kutip 2 nya (“) di editor codevision nya di delete dulu langsung ditambahkan lagi…..

Thanks

19. u4u4n - November 13, 2010

ternyata error nya di {0x7E}, coding untuk data Array fonts nggak tau kenapa setelah x nya ditulis ulang jadi bisa…

kemungkinan x nya lain kali..

20. NewBie - December 14, 2010

mas error di compile ni error nya :

int printf(char flash *fmtstr,…);

terus keterangan yg dibawahnya kyk gini
Error: C:\cvavr2\inc\stdio.h(25), included from: led.c: functions with variable number of parameters not supported for chips with AVR8L core.. apa yg salah mas…???

ayoenx - December 15, 2010

biasanya kalo scriptnya copas langsung dari blog ke codevision itu, karakter kutip 2 ( ” ) itu berbeda, coba dicek lagi scriptnya, kalo ada tanda kutip 2 (“), coba di ganti di codevision kutip 2 (“) nya….

thanks

21. Rangga - December 17, 2010

Untuk source kode diatas, kompile nya pake software apaan yg bagus?? aku pake AVR studio ga bisa, pake WIN AVR juga gagal.. apa ada yg salah diatas..??

ayoenx - December 17, 2010

Editor bahasa C sekaligus Compiler nya itu kita pake codeVisionAVR, Downloader ke mikro nya kita pake Ponyprog bila downloader via socket paralel ( Port untuk Printer DB-25 ), kalo pake downloader nya pake usb kita pake AVRDOPER.

Thanks

Rangga - December 24, 2010

Wah, thanks Bos Ayung.. Thanks juga dah accept di FB. Googling codeVisionAVR dulu nih..
Soalnya kita yg punya cuman winAVR ama AVR Studio. Syukur2 kalo dikasih link download codeVisionAVRnya he he he he…

22. webe - February 7, 2011

Saya mo bikin scrolling text message dot matrix dengan AT89S51,pake 74hc595 dan matrix 5×7 jumlahnya 15 pcs, tp saya blm bisa buat programnya? ada yg bisa bantu gk? saya cuma butuh programnya aja, silahkan menawarkan harga pembuatan program, klo cocok, mgkn sy ambil. trims

luthfan - November 28, 2012

saya bisa bantu ni email saya : luthfan_55091@yahoo.co.id

23. adibakeke - March 24, 2011

saya ada source led dot matrix dengan bascom
kunjungi

hp.08174732660

ahmadsarozi - July 2, 2012

mas bisa gk minta source nya dalam bahasa c

24. san - April 18, 2011

mas kalau mau memperbanyak tampilan textnya apanya yg di rubah ya, terima kasih banyak ilmunya ya…

25. adhi - April 19, 2011

mas saya mau nanya, saya kan baru belaja mikro pakai atmega 8535L. menggunakan CodeVision AVR mau coba bikin dot matrik seperti yang diatas,cuma saya masih binggung setinggan awal sebelum bikin program. cz saya dah coba bikin program diatas tp kok g jalan.

26. randy - May 14, 2011

misi gan…saya tertarik bgt buat led berjalan dengan dot marix ini..tpi masih awam…tlong kirimin list programnya gan yang langsung dot.C ..
makasih banyak ya gan..ini lalamat e-mail saya randysfc@gmail.com
makasih bnyak gan atas peerhatiannya…

27. Ian Ega Pramani - May 27, 2011

mas untuk memasukan input data yang akan ditampilkan ke dalam dot matrix melalui keyboard PC punya listing programnya gak mas? terutama program interupt pada keyboard PC nya
makasih

28. berry - September 17, 2011

mas ayung untuk dislay yg diatas apa bisa ditambah dot matrix lagi?
maklum pemula…!!!!

29. yitno - September 30, 2011

untuk compiler code diatas pake apa ya…biar jadi hex…maklum lagi belajar.

30. tyo - October 27, 2011

mas bisa minta sourcecodenya gk?udah nyoba tapi gk bisa padahal udah saya samakan……makasih sebelumnya nh email sy. tyoblacklight@yahoo.co.id

31. tyo - October 29, 2011

mas sy udah nyoba tapi kokgak bisa nampilin karakternya…….semua udah saya samakan…..kalo boleh minta source kodenya mas thanks ….kirim email az tyoblacklight@yahoo.co.id

32. Harry - November 14, 2011

mas, saya udah nyoba, tapi hasilny ngaco, tolong kirimin ke email saya source code nya mas harry.guswanto@yahoo.com

33. Itha_masyhta (@Itha_masyhta) - January 21, 2012

bagaimana jika menggunakan atmega 16 mas ?

34. Tarmizi - February 11, 2012

slam kenal….mau tanya kalau ….langkah pertama qt simpan smpai 3 kali, ttpai sblum qta smpan itu ada settingan port A sbgai input port B sbagai output atau sperti apa ????

klau masih ada warning } ( // end void main) apakah prgramnya ttap bisa digunakan atau tidak??

35. Goenadi - February 17, 2012

mas…kalo pake mikrokontroller nya Basic Stamp 2 bisa gak sih..kalo ada source programnya yah…thank’s banget yah..

36. azisrizki - February 23, 2012

pertama slm knl dl mas,boleh nggak saya minta soucecodenya.krn sy ingin belajar,cuman saya masìh awam.kl boleh tlg kirim ke email= azisrizki1881@gmail.com sebelumnya sy ucapkan bnyk terima kasih.

37. Rangga - March 12, 2012

Horeeeee……
Dengan source code dan schematic seperti diatas…(sedikit modifikasi) saya berhasil merakit text berjalan dgn nama konter saya sendiri.
Big thanks to brother ayunk…

38. maxrouph - March 14, 2012

maaf, saya juga pengen coba buat text berjalan ini pak.. minta sourcecodenya juga pak….. ifuraixame@gmail.com
terima kasih banyak

39. tasya - March 26, 2012

maaf apa saya juga bisa minta sourcecodenya?
strawnanaberryjuice@gmail.com

terimakasih sebelumnya

40. mauliza - April 15, 2012

pak…
itu download programnya pakai apa..?

41. inu - May 24, 2012

maaf mas…boleh minta sourcecodenya?
inu_rahmat@yahoo.com
biar lebih lega mas….makasih mas…

42. arta - May 25, 2012

ms,kok di compile ada yang eror ya trutama di array..
kalo bs dikirim ya source code programnya,aku pke mikro atmega 8535.
kiirm ke emali saya : arta_oenyil@yahoo.co.id

43. arta - May 29, 2012

kok ada yang eror ya pas di compile..
}; pada araynya ya…
trus kalo ditambah jumlah dotmatriknya gimana ya programnya..?
tlong bantuannya ya,pake tugas kuliah..
kirim ke emal : arta_oenyil@yahoo.co.id

44. ihsan - July 31, 2012

sya kompil kok erar ya….kayaknya ada yang kurang pas..
nah agar lebih pas, tolong dong sy di emailkan kode dan schema…
saya pake proteus….selamat sukses dan trims

45. jajang - March 6, 2013

mas saya coba ko programnya ada yang error ya,,, bisa kirim ke email saya mas
jajang.elektro.untirta@gmail.com

46. Coki - April 11, 2014

Programmya kok eror maan cuma pamers,,,
cuma pamer ya??? orang pelit biasanya k

47. Coki - April 11, 2014

Programmya kok eror mas,,,
cuma pamer ya??? orang pelit biasanya kan cuma pamer,,,

ayoenx - May 24, 2014

Mohon maaf, coba error sblah mananya?

48. najwan - May 29, 2014

met siang mas mhn pencerahan utk nilai kolom 81 sama nilai jmlah kar 167 cara ngitungnya gmana ya? kan dot matrixnya 4 bh jadi kolomnha 20 (dot matrix 7×5) terus karakter 14 karakter (ESRG IS COOL termsk space)x 6 byte=84.mohom maaf kl ada salah maklum lgi bljr program…..trims-najwan

49. eko_rudiawan - August 17, 2014

Kami menjual spare part running text, moving sign atau led display dengan harga grosir termurah se-Indonesia. Silahkan kunjungi web kami di http://juraganrunningtext.com/

Kami juga menyajikan tutorial pembuatan running text yang mudah dan murah tanpa program yang rumit.

50. Nuril M - November 7, 2014

mas. minta tolong buat bikin skematik bikin display dotmatrix 5×7 (2 digit aja) pake 74hc595 sama ULN 2803. mohon bantuannya yaa 🙂

51. jimanisme - August 24, 2015

terlalu ribet gan, padahal ada yang lebih simpel. terlalu banyak variabel yang di oper sana sini.

bagi para master memang gampang mencerna, tapi bagi pemula akan sulit untuk memahami proses2 program.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: