Designing LED Matrix Circuit

LED matrix is the number of LEDs arranged in columns and rows. Those LEDs are then used to display images or text that usually displayed with certain animation effects. Therefore, the LED matrix is often referred to as the Running Text or Moving Sign.

Arrange LEDs as matrix

MXLED is a simulator of the circuit matrix of LEDs. With this simulator, we can try to program the LED matrix controllers even without the hardware. MXLED made LED matrix by arranging the LEDs on the vertical lines and horizontal lines. We must provide the number of rows of horizontal lines (we make eight lines). Then, we also make as many vertical lines of columns. Arrangement of vertical lines and horizontal images are as follows:

Vertical and Horizontal Line

Vertical and Horizontal Line

Lines of vertical and horizontal are not connected. Then, at each meeting point between the vertical and horizontal lines, attach a LED by connecting its anode to the horizontal lines and its cathode to the vertical lines. Installation of these LEDs are as shown below:

Installation of LEDs

Installation of LEDs

By installing LEDs as above, the light up LED is the LED where the anode is connected to the horizontal lines which is high (1) and the cathode is connected to the vertical lines which is low (0). There is only one low vertical line at a time, while other line must be kept high. This low vertical line we refer to as the active column. Unlike the vertical lines, horizontal lines consisting of eight lines may has high or low value without having to pay attention to the other horizontal lines.

Horizontal Control

To give the voltage on this horizontal line, we can not directly connect it to port. This is caused by the need for large electrical currents. Therefore, horizontal lines are the powered using a PNP transistor as shown below:

The power supply for the horizontal lines

The power supply for the horizontal lines

Each horizontal line given a transistor like the picture above. In this way, to make the horizontal lines can give the current to the LED, then the base must be low state (0). Meanwhile, if the base was given a high state, then the line could not provide current to the LED.

Vertikal Control

As horisontol lines, vertical lines can not be controlled directly using the port. This is caused by the large amount of current that must be sunk into the ground. Therefore, we can use the NPN transistor to sink current from these vertical lines. Way of installation is as shown below:

Vertical line current sink

Vertical line current sink

Each vertical line is controlled using a transistor as shown above. If the base was given a high condition (1), then the line (column) will be an active line. Conversely, if the base were given the condition of low (0), then the line becomes inactive column.

As already mentioned above, there is only one column that should be active, while the other columns must be inactive. There are many ICs that output works like that. One of the cheapest is the 4017.

Columns control using IC 4017

Columns control using IC 4017

Too bad that this IC only has 10 outputs. Thus, we can only make the controls to 10 columns :(

Relax, we can use other tricks to extend the control capabilities of this 4017. The trick is to make the block columns. The columns are grouped into block of columns. Each block columns consists of 10 columns. The columns in each block columns are numbered from 0 to 9. So, column 0 is the column 0 of block 0, column 10 is the column 0 of block 1, column 21 is column 1 of block 2, and so on.

Each base of the column with the same number are combined into one and is controlled by an output of 4017. For example, the base of the column 0 is connected to the base of the column 10, column 20, column 30, and so on. Then the bases which have become one, controlled by the Q0 of 4017.

Block Columns

Block Columns

From the picture above, we can see that although the base of column 0 and column 10 are controlled concurrently, but the column that can sink current is only the column with the active block. Seen that way of controlling the “column” or “block columns” is the same. If the number of block columns is only a few, then the controlling block of columns can be done directly using the port of the microcontroller. However, if the number of block columns is quite a lot, then the block columns can also be controlled using the other 4017. So, we develop a multilevel 4017, ie 4017 units (control column) and 4017 tens (the controlling block of columns). And if the number of block columns more than 10, then we can make the next level, ie 4017 level in the hundreds.

To cascade 4017 as above, is by connecting the carry output of 4017 units level as the input clock for the 4017 of tens level. And if there is 4017 of hundreds level, then the carry output of 4017 of tens level is used as the input clock for the 4017 of hundreds level. And so on. While the reset input of all of 4017 are combined into one. Thus, the overall control system only requires two lines for columns control, ie the input clock (clock input for 4017 of unit level) and the reset input (composite of all reset of 4017). Thus, the preparation of the LED matrix is exactly the same as the MXLED simulation.

Power Current Calculation

From the explanations above, we can see that there are three kinds of transistors viewed from the position. First is the row controller transistor, second is the column (unit) controller transistor, third is the column block (tens) controller transistor. Of course this calculation assuming that the number of columns are not more than 100 columns.

Calculation of the row controller transistor current

If each LED using a current of I, then the total maximum amount of current through the line control transistor is I x number of columns. For example, if each of our LEDs designed to use 5mA current and the number of columns are 30 columns, then the row controller transistor should be able to drain 5 x 30 = 150mA current.

The next question is, what is the value of collector resistor of the transistor?

To answer these questions, we should see the path of current from the power supply to get to the ground. First, the power supply current enter the PNP transistor through the emitter to the collector. Then passes through the collector resistor, then continues to enter into LED, enter into the collector of column controller, then enter the collector of the block columns controller.

If the power supply used is 5V, how much is the clamp voltage across the resistor? The voltage across the resistor is 5V – V on LED – VCE line controller tansistor – VCE of column controller transistor – VCE of column block controllers transistor. LED clamp voltage is typically about 1.7 V, but there are some types of LEDs which have a clamp voltage of up to 3V. While VCE transistors in saturation state is typically around 0.3 V. We assume that we use a regular LED with a clamp voltage of 1.7 V. Thus, the voltage across the resistor pin is 5 – 1.7 – (3 x 0.3) = 2.4 V.

Once we know the clamp voltage at the collector resistor of the line controller transistor, to calculate the magnitude of the resistor is R = V / I = 2.4 V / 150mA = 16 ohms. Too bad that we might be difficult to obtain this value of 16 ohms. So we can use a slightly lower value, eg 15 ohms, so that the LED current will be slightly higher, or use a little higher, for example 18 ohms, so that the LED current will be slightly lower.

Things should be kept on the LED matrix design like this is, that these calculations is the calculation of the current if the scanning is running. If scanning is not running, then a current of 150mA will be entered on one LED alone :!: And currents of this magnitude would likely destroy the LED. So, we must take precautions so that the current should only flow if scanning process has been running. A little good news is, if we use the MCS-51 as a controller, so when the reset (the scanning process is not running) port is always in a state of high. So, if the base of line controller transistor is connected to the MCS-51 port, so it can be sure that the current will not flow to the LEDs on the reset state. However, you must ensure that the program will not hang. Because if the program hangs and stops the scanning process, then it means disaster for your LED matrix. And if you are not sure that your program can run smoothly, then you can reduce the LED current so that even if the scanning process is not running, current flows are still small enough to be able to be borne by one LED.

To calculate the base resistor value of the line controller transistor, we only consider the transistor to work as a transistor switch, which is so current that flows is the saturation current. With the calculation of the collector current of 150mA, then we can use the C9012 transistor that has a current gain of about 150. We can take a value of 100 to make it more secure. With the gain of 100 and the collector current of 150mA, then the base current should be about 1.5 mA. Clamp voltage at the base resistor is approximately 5V – VBE, where VBE is about 0.7 V. Thus, the clamp voltage at the base resistor is about 4.3 V. Thus, the base resistor value is 4.3 V / 1.5 mA = 2K8. And again that this value is not available values. So we could slightly reduce the value to the nearest number of available, namely 2k7.

Calculation of the column controller transistor current

Column controller will sink as much current number of rows in that column. And we have determined that the number is eight lines. If we have determined that the LED current is 5mA, then the maximum current to be sunk by the column controller transistor is 8 x 5mA, which is 40mA. With the value of this, we simply use the C9013 transistor to control the column. The Gain of C9013 transistor is also about 150. And as before, we take saver value to 100 only. With the gain of 100 and the collector current of 40mA, then the base current in the column controller transistor is 0.4 mA.

Clamp voltage at the base resistor of the column controller transistor is the output voltage of 4017 minus 2x the VBE voltage. If we use a 5V power supply, then the output voltage of 4017 is approximately 4.8 V. Thus, the clamp voltage at the base resitor is about 4.8 – 2 x 0.7 = 3.4 V. Thus, the base resistor value of the column controller transistor is 3.4 V / 0.4 mA = 8K5. And again, this value is not available values. So, just use the 8K2.

Calculation of the block columns controller transistor current

The block columns controller transistor will sink as much current in the column controller transistor x 10, which is 10 x 40mA = 400mA. From the datasheet, C9013 has a maximum collector current of 500mA. So, we can still use the C9013 to controll block columns.

Clamp voltage at the base resistor of the block columns controller transistor is the voltage used to control this transistor reduced by 1x VBE. If we also use 4017 to control the block column, then the clamp voltage across the base resistor of the block columns controller transistor is approximately 4.8 – 0.7 = 4.1 V. Thus, the value of the base resistor of the block columns controller transistor is 4.1 V / 4mA = 1K.

That’s it. Happy trying :!:

Did you enjoy this post? Why not leave a comment below and continue the conversation, or subscribe to my feed and get articles like this delivered automatically to your feed reader.
Please notice that comment or question submitted should match the topic. Otherwise, we will delete that comment or question :!:

190 Comments
  1. brarti transistor untuk kolom jumlhnya sbanyak jumlah kolom ya mas….?

    • @yitno: ya iyalah, masa ya iya dong :P transistor pengendali kolom sesuai dg jumlah kolom, transistor pengendali blok kolom sesuai dg jumlah blok kolom, dan transistor pengendali baris sesuai dg jumlah baris :!:

  2. good simple dan mudah di pahami ………….ilmu digital memang pasti kalo gak tinggi ya rendah . gak mau setengah setengah xixixixi

    • Sebenernya masih ada kemungkinan ke 3 ko, yaitu HiZ :P

  3. mo nanya klo dot matriks ny pake port serial gmn n terhubung lwt PC (komputer) n bisa diubah lewat program delphi gmn bs gx……tq

    • Klo mau dikendalikan lewat port paralel, itu gampang karena pengendalian baris bisa dilakukan melalui port data. Sedangkan pengendalian kolom yang hanya membutuhkan reset dan clock bisa dilakukan melalui port control. Akan tetapi klo mau lewat port serial, tentu saja kita membutuhkan komponen tambahan yg akan menangani komunikasi serial. Dan saya sarankan, komponen tambahan itu sebaiknya pake mikrokontroler saja. Jadi, PC (program delphi) berkomunikasi dg mikrokontroler. Dan mikrokontroler itu yg harus menangani proses menampilkan datanya. Lihat Menampilkan gambar pada LED matriks menggunakan simulator dan Teks Berjalan pada Matriks LED. Walopun kedua link tersebut tidak membahas komunikasi serial, tetepi link tersebut membahas pengendalian matriks led mennggunakan mikrokontroler.

  4. Makasih… info yg sangat bermanfaat…
    kebetulan saya lagi belajar Mikrokontroller, terutama soal perancangan Led Matrix…

    Oh ya,saya sering hunting buku2 mikrokontroller di Gramedia, tp rasanya belum pernah nemu buku karya mas Sulhan..?
    Nyari dimana ya..?

    • @Acuy: lebih gampang klo cari lewat toko buku online. coba aja search pake kata kunci judul buku ditambah namaku, Insya 4JJI ketemu toko-toko buku online yg jual. Atau coba langsung pesen di web site penerbit

  5. klo proses memprogram nyala LED (dot matrixnya)ke mikrokontroler gmn y?n proses menampilkan datanya atau mengirimkan data nyala dari PC ke dot matrix gmn y?……tq

    • @teknik: Coba baca dulu buku saya. Di situ dijelaskan bagaimana teknik menampilkan data ke seven segment dg cara yg mudah. Kemudian baca Menggunakan MXLED.EXE untuk simulasi matriks LED. Di situ dijelaskan perbedaan antara seven segment dengan matriks LED. Sedangkan bagaimana berkomunikasi antara mikrokontroler dg PC penjelasannya jg ada di buku tersebut.

  6. ASKUM & LAM KNAL mas, membuat text berjalan/running text dgn IC 4017 bisa gak dan di butuhkan komponen apa saja?

    • @huda: Rangcangan Matriks LED pada artikel ini adalah rancangan hardware yg cara kerjanya sama dengan simulator MXLED. Komponen apa saja yg dibutuhkan? ya jelas LED, transistor PNP maupun NPN, IC4017, dan resistor. Berapa jumlahnya masing2? ya tinggal dihitung aja berdasarkan penjelasan di atas :!:
      Trus bagaimana membuat running text dg hardware tersebut, ya tinggal liat aja pada artikel Teks Berjalan pada Matriks LED.

  7. Mas salam kenal, mau tanya mas punya gak skema rangkaian otomatis dengan menggunakan LDR. kalo ada kiranya berkenan mengirimkannya ke Email saya…
    Terimakasih

  8. Salam kenal mas… maaf baru kasih komentar, terima kasih atas program simulasinya yang sangat baik bagi pemula, saya sedang belajar matrix Led menggunakan mikro kontroler at89s51 menggunakan simulator, sedangkan secara hardware belum. Tapi sebelum ke matrix led saya mau belajar PWM runing led tolong mas pentunjuk softwarenya ? terima kasih sebelumnya…

    • @I Gede: PWM running LED? gimana tuh maksudnya? apa running LED yg intensitas cahayanya bisa diatur? klo gitu maksudnya, kita harus melakukan scanning pada port yang ada LEDnya. Kecepatan scanning tergantung berapa tingkat intensitas yg diinginkan dan kecepatan perubahan nyala LED. Misal, ada 10 tingkat intensitas, terus kecepatan maximal perubahan nyala LED adalah 10x/detik, maka kecepatan scanning minimal adalah 100Hz. Data nyala LED disimpan pada buffer yg jumlahnya sebanyak jumlah intensitas (misalnya 10 byte). Setiap kita mengganti bentuk nyala LED, kita harus mengisi seluruh buffer. Sebagai contoh, kita akan menyalakan semua LED (8 LED) tetapi dengan intensitas masing2 adalah 10%, 20%, 30%, 50%, 70%, 80%, 90%, 100%, maka kita harus mengisi ke 10 buffer tersebut seperti berikut (1=nyala 0=padam):

      NoBuf   Data
        0   11111111
        1   01111111
        2   00111111
        3   00011111
        4   00011111
        5   00001111
        6   00001111
        7   00000111
        8   00000011
        9   00000001
      

      Kemudian data2 pada buffer tersebut harus dikirimkan ke port dengan kecepatan 100Hz. Perhatikan bahwa LED yg menyala 10% hanya menyala 1x, yg menyala 20% menyala 2x, dan seterusnya.

    • ya betul mas.. led yang intensitasnya bisa diatur yang dimaksud,terima kasih mas petunjuknya, saya sudah terbayang tinggal dicoba aja, mudah-muadah berhasil

  9. makasih bgt mas
    pas bgt lagi ada tugas ngebuat dot matriks buat port parallel
    kapan2 nanya y mas hho

  10. Mas mau tanya punya skema downloader at89s51 via USB ?

    • @IGede: Downloader pake usb itu harus menggunakan mikrokontroler jg, dan mikrokontroler yg digunakan biasanya ATMega8. Jd, klo mo bikin downloader usb, maka kita harus punya downloader untuk ATMega8 dulu. Saranku sih klo memang butuh downloader yg pake usb, mendingan beli yg uda jadi aja, banyak ko beli lewat internet. Ato klo mo sabar nunggu, beli ke aku jg bisa. Tp nggak janji kapan bisanya :D

    • berapa harganya mas?

    • wex, klo aku yg jual sih pasti murah, sayangnya aku ga bisa janji kapan jualnya :P mendingan beli ya mahal aja, dijamin sekarang sudah ada, mungkin sekitar 100-150rb. ato kalo yang lebay bahkan bisa lebih mahal lagi :D

    • mas sulhan, sudah bisa jual usb downloader untuk mcs51 ?

    • I Gede Sapta, sebenernya banyak sekali alternatif untuk mendapatkan downloader usb, misalnya, gunakan SDownldr.exe yg ada sebagai bundle dari Micro.exe yg menggunakan port paralel. Nah, untuk bisa menggunakannya melalui usb, beli saja usb to lpt yang banyak dijual di toko2 komputer

  11. salam kenal mas, makasih bnyak atas infonya, saya dapet tugas bikin modul dot matrix 8×4 dengan port paralel, tp saya msih bingung karna masih belajar,tolong dong mas gmana gmbar rangkaiannya, and cra menghubungkan pada port parallelnya, makasih banyak mas

    • Matriks 8×4? lha gampang banget kan? buat aja dg cara seperti dijelaskan di atas. trus pengendali baris yg jumlahnya 8 langsung dihubungkan dg port data yg jg 8, sedangkan pengendali kolom yg jumlahnya 4 dikendalikan dg port control yg jumlahnya cuma 3. Nah, krn pengendali kolom kurang 1, maka kita tidak bisa menggunakan port control untuk mengendalikan kolom secara langsung. Dan kita tetep bisa menggunakan 4017 seperti penjelasan di atas. Kemudian kita menggunakan port control untuk mengendalikan reset dan clock dari 4017 tersebut. Sebenernya pertanyaan ini sudah terjawab pada komentar di atas.

  12. budiono……………maz saat saya jalan can program Micro V7 kenapa ya muncul kotak dialog “simulatorIn.dll”not found…mohon diberi penjelasan dan jalan keluarnya maz………

    • coba daftarkan file2 dll yg tidak dikenali dg cara regsvr32 “nama file dll”

  13. Tanya lagi mas, dalam praktek rangkaian led matrik butuh
    pengendali kolom,baris dan matrik .Saya mengamati listing program runingtex pada deklarasi terdapat colomR equ r0 port
    ctrl equ p1 portData equ p0 yg saya tanyakan p0 apa untuk pengendali kolom p1 untuk pengendali baris terus untuk pengendali matrik port apa?

    • Mengendalikan matriks itu ya mengendalikan kolom dan baris. Jd hanya disediakan pengendali kolom dan pengendali baris. Pengendalian baris melalui PortData, dan pengendalian kolom melalui PortCtrl. Perhatikan bahwa ResetCol dan NextCol ditempatkan pada PortCtrl. ResetCol dihubungkan dg Reset 4017 dan NextCol dihubungkan dg Clock 4017.

  14. mas bisa nggak membuat led matrix dengan menggunakan ic eprom seri 39sf020a kalau bisa gimana skemanya dan cara memprogamnya???? tolong mas di balas….

    • @soleh: Maksudnya eprom untuk mengendalikan matriks led tanpa mikrokontroler? tentu saja bisa. Akan tetapi itu tidak lebih mudah jg tidak lebih murah jika dibandingkan dg yg menggunakan mikrokontroler. Pertama, untuk mengendalikan eprom dibutuhkan counter. Sedangkan untuk menjalankan counter dibutuhkan sumber clock. Jd jumlah chip justru lebih banyak jika tanpa mirkokontroler. Kedua, proses mengisi datanya ke eprom untuk bisa menghasilkan gambar yg sesuai jg jauh lebih sulit ketimbang proses pembuatan program pengendalian mikrokontroler.

    • makasih mas atas informasinya,o ya mas harga mikrokontroller yang paling murah seri berapa sih

    • @soleh: waduh, ko tanya harga ke aku sih, mangnya aku jualan mikrokontroler :P biasanya harga2 gitu sih tergantung yg jual, ga selalu sama. tp AT89S51/AT89S52 itu sudah tergolong sangat murah. sekitar 12-15rb aja.

    • mas lha software programnya gimana mas,,,download dimana?????

    • oy mas AT89S51 kock ada dua sih. satu yang kakinya sedikit satunya lagi yang kakinya banyak..pakainya yang mana mas????

    • download programnya dimana? ya ampun, usaha dikit kenapa sih? lah tinggal klik di kategori mikrokontroler terus lihat-lihat disitu artikel yang mana yang mau dilihat, atay lihat semua juga boleh.Untuk AT89S51 memang ada beberapa pilihan kemasan, ada PDIP (bukan partainya Megawati ya)–40 pin, PLCC–44 pin, dan TQFP–44 pin. Tapi untuk eksperimen sih biasanya paling mudah pakai PDIP. Nah, kalau yang jumlahnya 20 pin PDIP, itu pasti bukan AT89S51 tp AT89C2051 atau AT89S2051. Tentang mau pakai x51 atau x2051 itu ya tergantung kebutuhan, berapa jumlah port yang dibutuhkan, juga berapa besar kode programnya. Lebih jelasnya, lihat sendiri datasheetnya.

    • pak sulhan aku dah dpt mikron nya tapi yang AT89C51 bisa gak buat led matrix atau seven segment????kalau bisa downloadernya gimana terus mrogamnya pakai softwarenya pak sulhan bisa gak??

  15. mas sulhan saya bikin 7 segmen dari led yang tiap segmennya itu terdiri dari 29 buah led ,pertanyaannya :untuk di gabungkan ke suatu rangkaian jam digital apakah harus menaikan daya led atau merubah rangkaian tersebut mas?…..makasih atas infonya…biar tidak keliru tolong rumusnya

    • @kamal: menaikan daya led? maksod loh? klo menurutku sih setiap segment itu harus dikendalikan oleh transistor. Nah, basis dr transistor ini yg dikendalikan oleh port mikro.

  16. boleh minta rangkaian display matriks & perintah dari mikrokontroler Atmega 89S51 untuk menjalankan lampu led tersebut ,,,, klo nya bisa kirim ya gan k email saya

    • @surya: Atmega kok 89S51 sih? itu bukan at mega, itu keluarga MCS-51 :P Dan kebetulan, contoh-contoh tentang matriks led di website ini menggunakan MCS-51, tinggal ambil saja source-nya di linknya. Baca perlahan dari atas hingga bawah, pasti ketemu linknya. Ambil sendiri ya, ga usah aku kirim-kirimkan lewat email.

  17. pak kalo transistornya di ganti fet gmn cara rangkainya…

    • @rozani: ya kurang lebih fet dg bjt kan sama. jd kurang lebih ya tinggal ganti aja. b-c-e diganti g-d-s

  18. mas…,
    buku yang membahas matrix led yang mana? terbitan th 2006 atau 2008? thx,

    • @ Dido
      Kedua buku, baik terbitan 2006 maupun 2008 itu sama, hanya beda cover. Buku tidak membahas LED matrix, hanya dibahas di sini. Meski demikian, dasar pengetahuan LED matrix, yaitu 7 segment, dibahas di buku.

  19. top markotop bos.ijin copy link

  20. BOS………….MATUR SUWUN ILMU YANG TELAH DI SHARE…..
    SAYA SUDAH BERHASIL COBA DAN BISA DIMODIF…..

    SALAM

  21. Bagus.
    Tapi kalo pake IC shift register juga bisa kan mas?

    • Pake shift register tentu saja bisa, tp bukan cara yg cerdas, kenapa?

      Pertama, shift register itu akan menggeser apa saja yg ada padanya. Jd, kita harus menginisialisasi isinya terlebih dahulu

      Kedua, jika ada 100 kolom, bisa dihitung berapa banyak IC yg digunakan. Sementara dg menggunakan 4017 kita cuma butuh 2. Penghematan baik dr sisi jumlah komponen maupun kerumitan PCB

  22. Skema yang pakai 4017 mana mas sulhan…?

    • @muslih: lha itu di atas kan uda ada. Tentu saja skema yg ditunjukkan bukan skema yg lengkap, tp untuk mendapatkan skema lengkapnya kan seharusnya sudah cukup hanya ditunjukkan begitu saja. jika diperlukan, muslih bisa lihat datasheet 4017

    • Ya makasih mas sulhan, yang mau saya tanyakan kalau driver baris itu langsung dari keluaran AT89S51 bisa gak ya mas?

    • Ya makasih mas sulhan, rencana saya mau pakai 74HC164, berhubung ada yang lebih simpel pakai 4017 aja, jadi setiap blok kolom di pasang 1 transistor lagi ya, terus yang untuk kendali baris itu bisa langsung dari keluaran AT89S51 ya mas?

    • untuk driver baris kan pake transistor seperti pada Pengendali horisontal

  23. kalau misal led matrik 8*100 itu menggunakan 2 IC 4017 untuk mengendalikan kolom, untuk mengendalikan blok kolom berarti harus ada 1 lagi IC 4017 begitu mas maksudnya gambar gambar diatas?

    • betul sekali muslih. 1 blok kolom terdiri dari 10 kolom. jika ada 10 blok kolom berarti ada 100 kolom

    • kalau menggunakan 32 kolom penyambungannya blok kolom 0= 0-10-20-30, blok kolom 1= 1-11-21-31, blok kolom 2= 2-12-22, blok kolom 3= 3-13-23, blok kolom 4= 4-14-24, blok kolom 5= 5-15-25, blok kolom 6= 6-16-26, blok kolom 7= 7-17-27, blok kolom 8= 8-18-28, blok kolom 9= 9-19-29.
      Apakah begitu mas cara penyambungannya?

    • kalau 32 kolom itu gimana mas penyusunan blok kolomnya?

    • Gini muslih, jadi, setiap kolom itu dikendalikan oleh sebuah 4017 yang keluarannya ada 10 buah dengan nomor 0 hingga 9. Blok kolom 0 adalah kolom 00 hingga kolom 09, blok kolom 1 adalah kolom 10 hingga 19, blok kolom 2 adalah kolom 20 hingga 29, gitu seterusnya. Oleh karena itu, setiap kolom dg nomor satuan sama, dikendalikan secara bersamaan oleh sebuah keluaran dari 4017 yg memiliki nomor sama. Jadi, kolom 0, 10, 20, 30, dst dikendalikan oleh keluaran 0 dari 4017 tingkat pertama. Coba perhatikan baik2 penjelasan di atas.

    • Makasih mas penjelasannya, berarti kalau untuk 32 kolom cuma ada 3 kendali blok ya mas?

    • Klo 3 blok berarti cuma maksimal 30 kolom. klo 32 kolom butuh 4 blok, bisa dengan 10, 10, 10, 2 atau bisa jg dibuat 8, 8, 8, 8. Klo pin yg dipake oleh mikrokontroler untuk keperluan lain tidak banyak, kita bisa menggunakan 8 pin sebagai pengendali kolom ditambah 4 pin pengendali blok kolom. Ditambah 8 pin pengendali baris, kebutuhan total cuma 20 pin. Masih ada 12 pin untuk keperluan lain.

    • seperti kata mas sulhan “kita bisa menggunakan 8 pin sebagai pengendali kolom ditambah 4 pin pengendali blok kolom. Ditambah 8 pin pengendali baris, kebutuhan total cuma 20 pin. Masih ada 12 pin untuk keperluan lain.” berarti tidak menggunakan 4017, begitu maksudnya ?

    • Ya benar, ga usah pake 4017. Tp tentu saja matriks led yg dihasilkan jd berbeda dg simulasi MXLED. Jd klo mo nyoba contoh2 yg dibuat untuk MXLED perlu ada sedikit modifikasi pada programnya.

    • Kalau untuk taraf belajar enakan pakai yang ya mas? pakai 4017 atau langsung dari pin mikrokontroler?

    • Listing program led matriks kepunyaan mas sulhan itu menggunakan 4017 apa tidak?

    • Bukan masalah pake 4017 ato tidak, tp contoh2 itu menggunakan PortData untuk pengendali baris sementara pengendali kolom hanya menggunakan 2 pin yaitu ResetCol dan NextCol. 4017 itu hanya salah satu contoh implementasi hardware. Mana yg lebih mudah untuk belajar antara pake 4017 dan tidak, sebenernya ya sama mudahnya, hanya saja berbeda cara memrogramnya. Yg jelas jika pake 89S51/52, maka tanpa pake 4017 artinya penghematan dari sisi hardware. Sedangkan jika pake 2051, maka jumlah port tidak mencukupi jika ga pake 4017.

    • Ya mas makasih atas bimbingannya, saya akan mencobanya dulu….

    • kalau untuk keluaran 4017 tingkat satuan itu untuk kolom 0-9, kalau untuk kolom 10-19 berarti basis di paralel dengan 0-9 dan seterusnya……apa begitu mas?

    • ya ampun muslih, ko pake tanya lagi, lha di gambar Blok-blok kolom kan udah digambarkan begitu, apa kurang jelas gambarnya?

    • kalau untuk blok kolom sudah jelas mas terdiri dari 10 kolom, basis kolom 0 diparalel dengan basis kolom 10,20,30 dari keluaran Q0 tingkat satuan, maksud saya itu apakah basis transistor kolom 1 di paralel dengan basis transistor kolom 11,21,31 dari keluaran Q1 tingkat satuan, kemudian keluaran Q2 untuk kolom 2,12,22, Q3 untuk kolom 3,13,23 juga tingkat satuan…. dst, yang masih bingung itu mas ????

    • Alhamdulillah sudah bisa jalan mas, nyalanya terbalik teksnya padam, solusinya gimana mas ??

    • syukurlah uda jalan. sebenernya aku mo kasih tau klo ada 0..9 tu artinya dari 0 hingga 9, begitu juga 10..19 tu artinya dari 10 hingga 19. syukurlah uda ngerti sendiri. klo masalah kebalik nyala dan padamnya ya tinggal dibalik aja kan? gitu aja ko repot :D perintah untuk membalik itu pake cpl. jd sebelum data dikirim ke PortData, datanya dibalik terlebih dahulu menggunakan cpl

                mov   PortData,@ColomR

      menjadi

                mov   A,@ColomR
                cpl   A
                mov   PortData,A

      bisa juga dg membalik konstanta2nya :!:
      selain itu, untuk menghindari gambar yg membayang, maka pada perpindahan kolom aktif semua led harus dimatikan sebelum kolom aktif dipindahkan. jadi, kita juga harus membalik:

                mov   PortData,#0          ;matikan semua led

      menjadi

                mov   PortData,#255        ;matikan semua led
    • saya mencoba running text.M51, cpl ditaruh posisi mana mas ??

    • ya mas sudah saya tambahi cpl, sekarang sudah terbalik nyalanya, tinggal textnya saja yang menyala, tapi led yang lain kok masih menyala redup, bagaimana cara membuat konstanta?

  24. Mantap banget tuh mas pembahasannya. Mas, sy mau nanya apakah dimungkinkan untuk mengendalikan LED MATRIX menggunakan pesan SMS?bagaimana suatu karakter isi pesan SMS dapat terbaca oleh MC, dan MC tersebut mengolah isi pesan SMS dan selanjutnya MC mengeluarkan perintah utk menampilkan text (yg tentunya sesuai dengan isi pesan SMS) melalui port outputnya dan setelah itu menampilkan isi pesan SMS ke rangkaian LED MATRIX. Mungkin MAs dapat memberikan sedikit pencerahannya….

    salam

    • MAs Sulham saya mau bertanya. Apakah dimungkinkan pengendalian LED MAtrix dapat melalui pesan SMS? bagaimana suatu isi karakter pesan SMS dapat diolah oleh MC dan ditampilkannya melelui port output ke LED MATRIX ? jadi misalkan ketika kita mengetikan pesan SMS yg isinya “HALLO” pesan SMS tsb nantinya akan diolah MC dan ditampilkan ke LED matrix. mungkin blok diagrmanya sbagai berikut :

      HP(tx)(GSM Network)H(rx)RS232MC==>Driver=>ledMTRX

      moga ajah mas Sulham dapat memberikan pencerahannya……
      trim’s….

    • @irfan: matriks led itu layar yg universal, jd dipake buat nampilin apa aja jg bisa. tp klo pertanyaannya gimana caranya nampilin sms ke matriks led, maka ini diluar pembahasan di sini, karena yg lebih menonjol pada pembahasan tersebut adalah protokol pembacaan sms, bukan teknik menampilkan data pada matrisk led :!:

  25. Mas Sulham, saya mw nanya lg nih. Gmn yah caranya mengetahui pin baris dan kolom pada dot matrix 7×5 pasalnya ketika sya liat
    pada skematiknya terdapat 5 pin utk kolom dan 7 pin untuk baris, nah ternyata pas saya membeli matrix 7×5 ternyata saya lihat terdapat 14 pin.
    saya jadi bingung nentuin mana pin2 utk baris dan kolomnya. mungkin dapat diliat skema gambarnya dibawah ini :

    1234567
    ||||||| <===PIN
    OOOOO
    OOOOO
    OOOOO
    OOOOO
    OOOOO
    OOOOO
    OOOOO
    ||||||| <===PIN
    1234567

    Saya sangat mengharapkan sekali pencerahannya dari Mas Sulham, mohon maaf saya bertanya seperti ini karena saya bner2 NEWBIE banget.

    salam.

    • @irfan: aku jg belum pernah make matriks yg uda jd :D tp bisa dicari pake avo meter. coba aja bolak-balik pin2nya satu2, pasti ketemu :D

  26. malem om sulhan mau nanya
    1. untuk simulasi mxled nya kok gak bisa tampilkan tulisan kaya yang di program hanya geser ke kanan terus apa ada yang salah ya
    2. listing running text itu mampu untuk berapa karakter
    3. mohon dikirim gambar lengkap dong
    4. bukunya mas sulhan ok bgt q dah beli cuma kok gak bisa urut contoh habis dari jam ke motor steper balik lagi ke jam digital
    thanks bgt

    • @sukino:
      1. sudah download Microcontroller Project versi terbaru kan? baca helpnya, terus coba demonya dari yang pertama hingga yang terkahir.
      2. listing yang ada di website ini? itu untuk ukuran 32 kolom. berapa karakter? kalau maksudnya berapa karakter yang tampak, itu tergantung seberapa lebar karakternya, kalau lebarnya 6 kolom, berarti cukup 5 karakter. tapi kalau cuma 5 kolom, bararti cukup 6 karakter. tapi biasanya tulisan itu akan ditampilkan dengan bergeser ke kiri, jadi bisa untuk menampilkan tulisan yang panjangnya tak terbatas.
      3. seharusnya bisa menyusun gambar lengkap dari keterangan di sini. kalau belum bisa, artinya kamu belum benar-benar paham. cobalah terlebih dahulu berusaha untuk memahaminya. aku sendiri tidak punya gambar yang lengkap :D
      4. maksod loh :?: :?

  27. pak sulhan aku dah beli buku lewat online di bookstore.com atau apa ya lupaaa…. nanti kalau dah dapat bukunya aku tanya2 sambil online bisa ya….

  28. mas sulhan tutorialnya mantab… apa juga menerima kursus mikrokontroler ya???? lagi pingin belajar nih… trima kasih..

    • kursus mikrokontrolernya pake baca buku sendiri aja ya, uda aku tulis ko bukunya :D

    • ok deh.. saya pelajari bukunya dulu kalo gitu. kalo ada yang kurang jelas nanti saya tanya di blog ini..

  29. Mas Sulhan, saya udah membaca buku Anda dan emang bagus juga tuh buku Anda :D top marketop deh….. ! Mas Sulhan saya mempunyai beberapa pertanyaan seputar perancangan rangkaian dot matrix. Saya sekarang mau merancang rangkaian dot matrix, tetapi saya mau menggunakan mikrokontroler BS2P40 (basic stamp) dan bahasa pemogramannya menggunakan bahasa basic dan compailer nya ‘basic stamp editor v2.5′. Setelah saya baca2 ttg arsitektur MCS AT8S51 dan BS2P40 ternyata mempunyai sistem port yg berbeda. Jika At8S51 menggunakan sistem port P0-P3 sehingga pengiriman data melalui 8 bit pin tersebut (pararel). Sedangkan kalau mikro Basic Stamp itu menggunakan sistem PIN, dimana data 8 bit bisa dikirim dalam satu waktu secara serial tidak seperti mikro Atmel yang paralel 8 bit tiap pin.Dengan kata lain untuk tampilan ke dot metrixnya harus ada buffering data terlebih dahulu, sehingga dari data Basic Stamp harus disimpan terlebih dahulu di buffer, baru di tampilkan. Maka dari itu mungkin dibutuhkan rangkaian buffer, sehingga data yang tersimpan bisa langsung ditampilkan di dot metrik.

    AT8S51 : P0 –>8 pin kirim hexa 31h –> 00110001b –> 8 bit langsung terkirim ke dot metrik yang ada 8 pin juga.

    Basic Stamp BS2P40 = 1 pin untuk kirim data 31h –> terus harus terhubung ke 8 pin. Gimana caranya ?
    berarti ada 7 pin yang tidak terhubung ke dot metrik.

    Nah, maka dari itu harus dibuat rangkaian buffer data, sehingga 1 pin di basic stamp masuk ke rangkain buffer yang outputnya 8 pin lalu di kirim ke dot metrik yang 8 pin juga.Yang menjadi pertannyaan saya :
    1. apakah dalam pembuatan rangkaian buffer (driver) dot matrix apakah masih bisa menggunakan IC 4017?

    2. Bagaimana cara membuat data tabel (seperti di buku Anda) dengan menggunakan dalam pemograman BS24P0?

    Semoga Mas Sulhan dapat memberikan pencerahan saya lagi supaya saya lebih memahami lagi.
    Trim’s

    • sebenernya saya tidak ngerti pemrograman basic stamp, tapi jika BS2P40 hanya bisa melakukan pengiriman port 1 bit saja, maka buffer yg digunakan adalah shift register misalnya menggunakan 74HC595 kemudian menggunakan perintah SHIFTOUT. keluaran dari 74HC595 inilah yg digunakan untuk mengendalikan baris matriks led. Akan tetapi sistem yg tidak bisa mengirimkan data secara paralel seperti ini sebenarnya memang tidak cocok untuk mengendalikan matriks led.

    • Ok Mas Sulhan, terima kasih atas pencerahannya

  30. mas jarak led yang ideal berapa kali berapa? dalam pembuatan running texs.

    • @andi: jaraknya tentu saja tergantung ukuran led dan selera masing2

  31. mas Sulhan ikutan donk..
    Ane mo buat tampilan matrik tapi dikontrol langsung melalui port komputer.. gmana ya.. bisa ga..???
    Thank’s

    • Khurey, komputer kan jauh lebih hebat ketimbang mikrokontroler, ya tentu saja bisa lah. coba gini aja, buat rangkaian matriks led ini, terus pengendalian barisnya bisa dilakukan melalui lpt port data, sedangkan pengendalian kolom, yaitu reset dan next bisa dilakukan melalui lpt port control

    • ada aplikasi software untuk menjalankannya ga…seperti buatan VB /lainnya, tolong kasih tahu gmana komunikasi kontrolnya dan pinout lpt portnya.
      Thank’s atas balasannya..

    • Sebenernya teknik pengendalian matriks led dg pc atau mikrokontroler ya sama saja. Jika bisa mengendalikan dg mikrokontroler, tentu jg akan bisa mengendalikan dg pc. Pinout lpt sudah banyak yg membahasnya, jg tentang bagaimana protokolnya. Sedangkan mengendalikan matriks led, sebenernya hampir sama dg mengendalikan seven segment, hanya lebih rumit. Jadi aku sarankan untuk belajar mengendalikan seven segment dulu sebelum mengendalikan matriks led. Klo perlu penjelasan mengenai bagaimana mengendalikan seven segment, Khurey bisa baca buku saya tentang mikrokontroler.

  32. Mas Sulhan, ane mau nanya donk?
    Ane kan lagi nyoba bikin display dot matrix 5X8.
    Ic yg ane pke 74hc573 ama uln2803. cra buat ngegeser karakternya gmn ya?

    • kalau cuma sekedar 5×8 seharusnya tidak perlu tambahan 74hc573. untuk membuat tampilan pada matriks led, pertama kita harus menyiapkan buffer untuk tampilan. ada dua proses yang terpisah yang terlibat di dalamnya, pertama adalah proses menampilkan isi buffer ke matriks. kedua adalah proses mengisi buffer. sebaiknya baca dulu buku “Mudah dan Menyenangkan Belajar Mikrokontroler” agar lebih tau detil teknik menampilkan dengan sistem multiplex. penggunaan uln2803 mungkin akan sedikit membuat rangkaian jadi lebih ringkas, tapi sayangnya harganya menjadi jauh lebih mahal (sekitar 5000) jika dibandingkan dengan menggunakan transistor C9013 yang satunya cuma sekitar 200 dan jika dikalikan 8 cuma 1600.

    • Klo pke transistor bknnya mesti pke heat sink biar gak jebol?
      Trs gmn cara biar bisa geser perkolom?
      Abis di kmpus cmn ada 74hc573, tadinya mau pke yg shift register langsung kyk 74ls164. tp gak ad :D
      Mohon Bantuannya?

    • transistor C9013 kuat sampe 500ma, sedangkan penggunaan untuk menyalakan led itu tidak besar. perhatikan bahwa uln2803 jg hanya kuat sampe 500ma saja, dan jika digunakan pada arus max jg pasti panas.
      tidak perlu pake shift register jg. untuk mengendalikan baris langsung saja misalnya dari port1 (8) sedangkan untuk kolom menggunakan port3 (5). ingat bahwa baik baris maupun kolom harus dikuatkan dg transistor.
      gimana geser kolomnya? sudah saya bilang, itu menggunakan 2 proses yg terpisah. silakan pelajari konsep kotak hitam dan konsep toko yg saya jelaskan di buku. Andiko bisa beli bukunya melalui toko buku online, atau coba pinjam di perpustakaan, semoga ada. jika perpustakaan tidak ada, coba usulkan untuk mengadakan buku itu.

  33. Mas Sulham, untuk membuat skema rangkaian dotmatrix seperti di postingan di atas pake program apa sih?? mohon pencerahan terang nya :D

    trim’s…

    • waduh, bikin skema rangkaian di atas ya? aku pake Circuit Maker 2000 :D

  34. punya rangkaian led dari ac 220v g mas/

  35. cara lengkapnya g mana ne, masih ragu2 pada cara pemasangannya, trus programnya gimana….
    thanks…

    • harusnya sih dengan keterangan begitu saja sudah cukup untuk bisa membuat skema lengkapnya, terlalu rumit kalau harus dibuat secara lengkap di sini. programnya bisa lihat di listing program pada artikel yang lain

  36. mas .untuk buat running text hanya dengan IC 4017 bisa gak .trus klau bisa tolong kasih skemanya ?

    • 4017 hanya digunakan untuk membantu membuat rangkaian drivernya. pengontrolan selanjutnya tetap membutuhkan mikrokontroler atau PC

  37. mas pynya pcb untuk led matrix dari IC 4017 G?mkacih………..

    • mas tlong saya dong, saya mau bkin led metrix tp yang g usah pke aurdino!mas punya PCB nya g mas?

    • joe, jangankan pcb, skema lengkap aja ga ada :P ayolah joe, ga usah ngoyo bisa bikin, yg lebih penting itu mengerti konsepnya. klo uda bisa memahami konsepnya, bikin matriks led itu guampang buanget. oia, apa joe uda baca Mudah dan Menyengangkan Belajar Mikrokontroler? Sebelum memahami matriks led, sebaiknya pahami dulu seven segment :!:

  38. mas saya mau tanya nih,cara tk memasang transistor pengendali kolom vertikal dan horizontal gimana caranya mas?BCE transistor tu nymbungnya kemana z?trus pke transistor no berapa?mhon bantuannya mas………………

    • mas kalaau mau merangkai ic4017 lebih dari 1 gimana mas?minta cara merangkai ic4017 tingkat puluhan mas…….

    • joe, jika joe tidak bisa membaca penjelasan di artikel ini dg teliti, maka saya benar2 ragu bahwa joe akan mampu untuk membuat pengendalian matriks led.

      pertama, tentang penyambungan transistor. jelas2 di atas telah digambarkan bagaimana menyembungkan pengendali baris maupun pengendali kolom. dan transistor apa yg digunakan tentu saja tergantung kebutuhan arusnya. akan tetapi pada bagian perhitungan arus jg sudah diberi contoh transistor yg bisa digunakan baik untuk pengendali baris (C9012) maupun pengendali kolom (C9013).

      kedua, tentang bagaimana merangkai 4017 untuk puluhan, jelas2 sudah dijelaskan di bagian pengendali vertikal. Perhatikan pada paragraf terakhir bagian ini.

    • harap maklum mas saya masih pemula bgt nh,saya juga mau tanya,apa itu arus jepit?trus juga saya mau tanya apa itu artinya kondisi rendah (0)dan tinggi (1) mksudnya apa ntu mas?tlong penjelasanya nih tank”s………

    • segala sesuatu itu ada prasyaratnya. sebagai contoh, jika ada anak lulusan SD tiba2 bertanya tentang logaritma, tentu kita tidak akan memberitahukan kepadanya apa itu logaritma, kita hanya akan bilang kepadanya, “km belajar yg giat ya, nanti di smu pasti km akan tau logaritma”. jika joebae bahkan belum tau apa itu kondisi rendah dan kondisi tinggi, itu sebagai pertanda bahwa joebae belum lulus prasyarat untuk bisa membuat pengendali matriks led. jadi maafkan saya jika saat ini saya hanya bisa bilang “joe belajar yg rajin ya, pelajari dasar2 teknik digital dulu hingga joe benar2 memahaminya”. hanya itu yg bisa saya katakan, dan maaf bahwa di forum matriks led ini tentu bukan tempat yg sesuai untuk belajar dasar2 teknik digital. doakan saja agar saya bisa meluangkan waktu untuk membahas dasar2 teknik digital :)

  39. aslm.
    mas tolongin ane.
    ane mau buat led matrik 16×54 mgunakan atmega16, lengkap dengan tampilan jam digital(RTC), mohon bantu skematik nya ya.
    di email ya mas. trims.. :)

    • wa alaikum salam,
      maaf saya tidak menjawab permintaan rancangan yg bersifat kepentingan pribadi dan tidak membahas permasalahan yg bersifat umum yg tidak bisa digunakan untuk pembelajaran secara umum.
      jika memang mul butuh bantuan yg bersifat pribadi, mintalah bantuan secara profesional langsung ke imel saya.

  40. mas berarti kalau mw membuat led matrix itu minimal kita menggunakan 2 IC4017,benar g mas?1 penendali vertikal dan 1 lagi pengendali horizontal benar g mas?

    • tidak ada batasan seperti itu, dan pengendali vertikal tidak membutuhkan 4017 karena langsung dikendalikan dari port. plis deh joe

    • kalau penendali vertikal tdk membutuhkan 4017,basisnya kemana mas?saya masih bingung nih.plizzzz deh mas…..

    • maf mas mungkin saya mank lum memenuhi persyratan seperti yang mas sebutkan di ats,tp saya punya prinsip kalau kita mw belajar,pasti kita bisa.karna manusia tdk di lahirkan dalam keadan lngsung bisa, semuanya dari belajar mas.

    • pengendali vertikal langsung dihubungkan ke port mikrokontroler.

      saya salut dengan tekad joe untuk belajar, tapi belajar tidak hanya membutuhkan tekad. belajar membutuhkan urutan langkah2 yg harus dilalui. klo joe bener2 ingin belajar matriks led, joe harus belajar pengendalian seven segment secara multipleks dulu. saran saya, bacalah buku “Mudah dan Menyenangkan Belajar Mikrokontroler” terlebih dahulu. di buku itu ada dasar2 mikrokontroler. ada jg penjelasan tentang tinggi(1) dan rendah (0) yg joe belum tau. jg ada dasar2 pengendalian seven segment sebagai dasar sebelum mempelajari matriks led. tp ingat, jangan tergesa2 untuk bisa mengendalikan matriks led. kuasai dulu dasarnya sebelum melangkah ke tingkat yg lebih tinggi.

      jika joe suka cerita silat, mungkin joe pernah melihat seorang murid baru yg bukannya diajari jurus2 silat, tetapi malah setiap hari disuruh mengambil air dari sungai. sang guru melakukan itu sama sekali bukan karena menganaktirikan murid itu, tetapi ingin menanamkan dasar yg kuat bagi murid itu untuk menjadi pendekar silat yg tangguh.

      saya bukannya keberatan untuk ngajari joe matriks led, tp jika joe memang ingin belajar matriks led pada saya, tolong joe ikuti petunjuk saya, joe harus mengambil air dari sungai sebelum mendapatkan jurus2 silat dari saya ;)

  41. untuk penerapan hardware itu tidak sama dengan simulator, kalau ditampilkan dihardware itu nyalanya terbalik dengan simulator, itu disebabkan apa? kalau membuat hardware biar sama dengan simulator apanya yang harus dirubah? minta bimbingannya mas….

    • simulator itu bisa dibolak-balik, lihat di konfigurasi. trus klo yg dihardware ini terbalik, uda ada yg nanyain di atas tuh, plis deh, klo mo nanya, liat dulu apa uda ada yg nanya apa belum.

  42. mas sulhan udah kucoba nih udah jadi n udah aku balik karakternya yang nyala bukanya yang padam ,, tapi masih ada masalah pak selain karakter yang nyela harusnya kan mati tapi masih nyala agak redup,, apaakah di delaynya to di perhitungan arusnya pak,,
    trimakasih

    • lha itu di atas ini kan udah ada yg nanya, tak suruh liat komentar di atas, yaudah, biar romadi ga kesulitan nyarinya, langsung klik ini aja :D

    • udah mas portdata-nya yang semula 0 udah tak ganti 225 semua tapi masih tetep,, gimana yah solusinya?

    • ini yakin hardwarenya uda sama perisis dan modif softwarenya jg ga ada yg keliru?
      pertama, coba kosongkan semua bufferdisplay, isi semuanya dg data padam, apa semua lampu jg padam dan bukannya aga nyala sedikit?

    • yah cuma beda transistor,, untuk kendali baris dengan A684 n kendali kolomnya saya pake uln 2003 soalnya udah ada n bloknya pake D400.

    • ih, romadi ini ga memperhatikan. untuk mengetahui yg salah di hardware apa di software, coba untuk membuat tampilannya padam, di contoh ada prosedur ClearDisplay untuk memadamkan tampilan. Nah, pada saat pertama kan prosedur itu dipanggil. Coba tambahkan delay yang aga lama setelah prosedur itu dipanggil agar kita bisa memperhatikan saat semua led harusnya padam, apakah benar2 padam atau menyala redup. klo saat itu lampu benar2 padam, maka kesalahan ada pada software, tapi klo saat itu nyala redup, maka kesalahan ada pada hardware.

    • maksudnya gimana mas kok penjelasanya sama ,apabila padam semua

    • uda aku koreksi tuh, oia nti klo komen yg terkait dg komen lain, tolong klik balas ya, biar aku ga pake mindah2 :D

    • karang udah mendingan pak sulhan,, setelah saya edit programnya yang semula PortData di isi 255 saya ganti 0ffh tapi masih ada sedikit bayangan ,, munculnya 5 kolom sebelum karakter aslinya muncul,, jadi sebelum tulisan muncul bayangan udah muncul duluan lebih cepat 5 kolom.,,
      gimana nih solusinya?

    • memang apa bedanya 255 dg 0FFH? trus yg itu gimana? bener2 padam apa nyala redup?

    • pak sulhan dotmatrixnya udah beres, tapi pengen nambahin lg,, kalo interfacing dengan keyboar gimana yah mas byar mudah ngganti2 tulisanya,,

  43. ijin nyimak n belajar gan…

  44. Pa Sulhan kalau mau beli buku yg bapa tulis, di toko buku online mana,saya sudah cari tapi belum ketemu ,tolong informasikan dan apakah saya bisa beli kepenerbitnya,terimakasih

  45. halo mas…..nama saya gary sya masih pemula di bidang mikrrokontroler…..saya udah berhasil buat led matrix….dan sudah berhasil buat text berjalan ..yang jadi masalah adalah….saya cuma bisa buat text nya berjalan dari kanan ke kiri saja….saya ga tau buat text nyya berjalan dari kiri ke kanan atau dari atas ke bawah…..saya merangkai lednya menggunakan ic 4094…yang saya susun setiap baris (7 led) saya buat satu ic 4094 jadi saya punya 20 baris jadi ada 20 ic 4094 mas dan saya juga pake bahasa c…..kira kira perintahnya apa ya mas di buat agar text nya bisa kita buat berjjalan dari kiri ke kanan maupun dari atas ke bawah….dll/…
    makasi h mas sulhan….oya…bukunya keren saya udah beli kmren dari gramedia…1 lagi mas ada bukunya mas ga yang membahas tentang mikrokontroler tapi pakai bahasa C codevision AVR..?

    • maaf, sepertinya konsep yg gary bikin sama sekali berbeda dg konsep yg saya ajukan di sini. konsep saya tidak menggunakan shift register, karena hal ini lebih hemat dan praktis (menurut saya). akan tetapi untuk masalah animasi sebenernya terpisah dg masalah scanning led. jadi dalam membuat program, sebaiknya kita memisahkan tugas yg berbeda untuk bisa bekerja secara independent. perhatikan bagaimana saya membuat contoh menampilkan data di seven segment. ada sebuah tempat yg dipakai bersama berupa buffer (analogi konsep toko). bagian yg melakukan scanning akan menampilkan apapun isi buffer tanpa peduli siapa yg mengisinya. dan bagian yg mengisi buffer, dia akan mengisi buffer sesuai dg apa yg seharusnya tampil, tapi dia sendiri tidak peduli isinya akan ditampilkan oleh siapa atau bahkan tidak peduli isinya benar2 akan ditampilkan atau tidak.
      tentang buku mikrokontroler, saat ini baru ada 1 buku mikrokontroler yg telah terbit. (ada 2 buku lg yg siap terbit tetapi belum saya urus proses penerbitannya)

    • untuk 2 buku yang siap terbit itu bahas tentang apa mas?

    • yg satu tentang komputasi numerik, seperti bagaimana melakukan perhitungan log, sin, cos, dll dalam bahasa assembly. yg satunya lg tentang multithreading pada mikrokontroler.

  46. mas kalau mw blajar dsar2 led matrix,porum tanya jwab nya d mana?sbenarnya saya ingin beli buku karya mas,cuma saya sulit mendapatkannya mas,tlong d bntu mas.tank’ssss

  47. Gan…sya mo bwat proyek dot matrix
    tapi saya bingung mo ngerangkai dot matrixnya gmn?
    bs minta tolong bantuannya untuk panduan.
    dot matrix 7×5x8

  48. mohon bantuan nya dari smua yg ada di sini … sy ingin merakit runing led utk papan merk usaha sy ,, tp sygk tau belanja perlengkapanya dimana , tolong buat yg dah pernah rakit mohon infonya…

  49. mas saya nak buat led matrix dengan 50 kolom ,,bisa di buat kan ga gambar skema nya ,maklum masih newbie,tolong kirim ke email saya dhayatcom@gmail.com,,makasih mas sebelum ny!!!

    • lha, kan di atas sudah saya buatkan gambarnya :P

    • mksud ny bukn kolom mas,,tapi baris

    • memang apa bedanya baris dan kolom? cuma beda istilah, kolom itu vertikal, dan baris itu horisontal. lha tinggal diputar saja kan beres.

    • oww ga da masalah ya mas,,masalah ny yang kolom saya pake ic shift register 74hc595 dan baris mengunakn ic 4017

  50. ass…mas saya hobies elektro mas!saya tertarik dangan led matrix,tp jujur saya lum mengerti ap2 mas,mhon sarannya nih.

  51. mas leh gbung gag nih?saya tertarik sama artikel di ats,cuma saya msih banyak yg g taunya mas tling batuannya mas.

  52. thank,thank,thank kalau bisa contoh gambarnya yg banyak

  53. thank,thank,thank atas inpormasinya,contoh gambarnya ditambah lagi dong

  54. simple ya mas tapi koq skema rangkaiannya koq gk jelas yeaa…

  55. gambr nya kurang detail,jd sulit dpahami.trutma pnjelasan blok kolom.

  56. mengapa pada jalur digunakan pnp transistor dan pada kolom digunakan npn transistor? apakah untuk jalur dan kolom dapat digunakan transistor yg sama ( pnp atau npn saja )

    • Alasannya adalah karena arus mengalir dari baris menuju kolom. Jika pada kolom kita menggunakan npn, maka emitor pada Ground dan arus masuk dari kolektor. Untuk mengaktifkannya, kita harus membuat tegangan basis lebih tinggi dari emitornya. Dan karena emitor bedara pada Ground, maka hal itu akan mudah saja. Sedangkan jika kita menggunakan pnp, maka kolektor pada Ground dan arus masuk melalui emitor. Untuk mengaktifkannya, kita harus membuat tegangan basis lebih rendah dari emitor. Akan tetapi tegangan emitor sudah cukup rendah. Dengan demikian akan sulit untuk mengaktifkannya. Jadi, lebih mudah menggunakan npn pada kendali kolom ketimbang menggunakan pnp. Alasan untuk baris adalah serupa dangan ini, hanya keadaannya yang terbalik.

  57. bagaimana kalau dot matrix bukan terbuat dari susunan LED, melainkan terbuat dari susunan lampu ( bohlam ) yg bekerja pada 12V? Jadi kaki emitor ( pnp transistor ) di supply dengan 12Vdc Apakan rangkaian dapat bekerja?

    • Boleh saja LED diganti dengan lampu pijar, akan tetapi setiap lampu harus diseri dengan sebuah dioda untuk membuat lampu tersebut bekerja dalam satu arah saja. Hanya saja, penggunaan LED lebih menghemat listrik. Jika sebuah LED untuk setiap titik dirasa terlalu kecil, kita bisa menambah jumlah LED untuk setiap titiknya sebanyak yang kita inginkan.

  58. pengen melakukan hobby praktek elektronika lagi, setelah sekian puluh tahun tidak pegang solder dan kode2 elektronika…..idenya bagus….mohon bimbingannya….

  59. pak ada led matrik yg barisnya negatif ,brarti beda karakter matriknya?

    • beda karakter gimana?

    • jadi yg ngebedain apanya pak?mhon pencerahan

  60. salam kenal mas.
    saya mw tanya ni mas, saya mw membuat running text tp mash bingng cara mengendalikan display dot matrikny.saya mw tanya klo saya menggunakn transistor untuk driver baris kira2 tipe apa yang pas dan shift register apa kira2 yang pas untuk driver kolomnya?
    o ya keluaran dari driver baris jika menggunakn IC shift register perlu dikasih tahanan gk sebelum di sambungkan ke dot matrik…
    saya menggunakn dot matrik 5×7 sebanyak 7 blok.
    ato mungkin mas punya usul lain saya sangat mengharapkan bantuannya.
    makasi

  61. pertanyaan mengenai Ic4017…. pin 14 tentunya mendapat clock dari micro. bagaimana dengan pin 15..apakah cukup dihubungkan dengan Negatif ( low )

    • Pin 15 adalah pin reset. Di atas sudah dijelaskan bahwa semua pin reset digabung menjadi satu dan tentu saja dikendalikan oleh mikrokontroler juga.

  62. mau nanya mas,kalau saya buat 48kolom kok led nyala semua padahal 40kolom masih normal tulisannya.mohon penjelasannya,trim’s

    • Bagaimana cara menyusun 48 kolomnya? Apa blok kolom juga diatur dengan 4017 dengan cara seperti seolah mau membuat 50 kolom tetapi blok terakhir hanya berisi 8 kolom? Cobalah untuk mengirim sinyal next secara perlahan sementara semua baris diaktifkan. Seharusnya akan terlihat bahwa kolom menyala secara bergantian dari kolom pertama hingga kolom terakhir.

    • saya jg pernah 40 kolom normal, tp sy mencoba 48 mnjadi menyala semua, itu pakai 89s51, setelah sy ganti 89s52 untuk 48 kolom nmenjadi normal

    • ok,sebenarnya semua telah saya coba mulai dari 8kolom perblok sampai saya coba yang gak pake 4017.kalau Rudi pernah sprti itu akan saya coba.saya tertarik ketika pakai simulator bisa sampe 96kolom di buat 48×16,membuat tulisan itu diam danberjalan seolah-olah 48×16.trimakasih

    • Oh iya, betul sekali. Saya ingat waktu itu Rudi pernah menanyakan mengapa untuk 48 kolom menggunakan simulator bisa bekerja, tetapi pada rangkaian yang sesungguhnya yang menggunakan AT89S51 mengalami error. Kalau Slamet juga menggunakan AT89S51 untuk 48 kolom, maka permasalahannya berarti sama dengan Rudi, yaitu bahwa AT89S51 hanya memiliki RAM sebanyak 128 Byte yang akan kurang jika digunakan untuk 48 kolom. Oleh karena itu, program mengalami stack overflow. Dan solusinya memang menggunakan mikrokontroler yang memiliki RAM lebih besar, yaitu AT89S52 dengan RAM 256 Byte.

  63. Bagi yang sudah mencoba membuat dan berhasil, bagaimana kalau di-share foto2nya?
    Terima kasih.

    • sudah jadi tapi belum sempat foto mas, ntar kalo ada waktu saya fotokan

  64. konsul lagi mas…
    saya mau membuat matrik led 8×32. saya menggunakan 2 buah 4017.
    sambungannya sbb:
    trasistor pengdali horstl -> P0.0-P0.7 mikrontrlr
    ic 4017 counter:Q0-Q9 -> transistor pngdali vertkl
    clock (pin 14)-> P1.1 mikrontlr
    clock enable(pin13)-> GND
    semua reset(pin15)-> P1.0 mikrontlr
    out carry(pin12)-> clock 4017 pengendali blok kolom,dan
    Q0,Q1,Q2,Q3,(4017 pengendali blok klm)->transtr blok klm 1,2,3 dan 4
    apakah sambungan ini sudah benar, mohon bimbingannya….
    terima kasih.

  65. assalam..

    mas, saya baca artikel mas tentang buat LED MATRIK,saat ini saya ingin membuatnya dengan resolusi 8*32, dengan menggunakan IC 4017 juga seperti artikel yang ada di blok.

    seperti penjelasan mas untuk 10 kolom mempunyai pengaturan kendali blok kolom 1, artinya jika da 32 kolom mempunyai 4 blok kondali kolom 4.

    jadi jumLah pin yg dipakai untuk mikrokontroler adalah

    8 pin —-> kendali baris
    4 Pin —> kendali blok kolom
    8 pin —-> Kendali kolom

    yg saya bingung adalah pengendali blok kolom yg ada 8 pin itu dihubungkan ke rangkaian mana?

    boleh minta kirimkan skematik lengkap untuk rangkaian LED Matriknya mas?…

    Mohon Bantuannya
    Terimakasih

    Wassalam..
    Ferry

    • Pengendali blok kolom yang 8 pin dihubungkan ke mana? Wah, kalau yang itu saya juga ikutan bingung. Soalnya setelah saya baca lagi dari atas sampai ke bawah, perasaan saya tidak pernah menyebutkan penggunaan pin-pin mikrokontroler seperti itu. Atau jangan-jangan ferry nando membaca dari artikel lain, kemudian ditanyakan di sini? :P

  66. mas…sya sudah praktekan serialdownloader ke lampu led berjalan,begitu juga dengan seven segment satu digit dan berhasil diterapkan ke aslinya(bukan simulator)
    tapi untuk huruf berjalan pada matrik led kok tidak berhasil,maksudnya proses download berhasil tapi diterapkan ke matrik led aslinya tidak berhasil.padahal pada simulator sudah oke,proses download sudah succes…dan untuk hardware saya sudah buatkan matrikled 20 baris 8 klom,dg ic at89s51 dan ic 4017 sebagai counternya.apakah mikron at89s51 tidak cukup ram-nya sehingga harus pakai at89s52 atau salah di listing progrm.sedangkan di download sudah ada ket. succes…
    mohon sarannya…terima kasih.

    • mas…saya sdh download listing progrm led matrik dan succses…tapi setelah di aplikasikan ke rangkaian sebenarnya kok tidak tampil/gagal.oh, ya..saya pakai at89s51 dan 4017, apakah bisa digunakan untuk listing progrm led matrik (yoko chans..)yang dari mas sulhan soalny ram-ny kan cuma 128 byte?atau ada kesalahan di rangkain?sedangkan praktek untuk variasi led berjalan dan sevent segment satu digit sudah berhasil.kenapa untuk huruf berjalan pada led matrik tidak bisa ya, padahal rangakain system minimum kan sama?dimana letak kesalahannya mas…

    • Coba perhatikan teori bagaimana scanning matriks dilakukan. Perhatikan pada bagian scanning matriks tersebut, apakah sudah sesuai dengan hardware atau belum. Perhatikan bagaimana baris diaktifkan, apakah aktif tinggi atau aktif rendah. Sesuaikan antara program dengan hardware.

  67. mas kalau 4017 itu ada 10 keluaran, jadi per blok kolom ada 10 kolom, kalo dibuat 8 keluaran bisa tidak mas?, jadi per blok kolom ada 8 kolom, saya mencoba untuk driver kolom menggunakan IC ULN2803 itu cuma 8 keluaran, untuk dot matriknya 8×8x4 jadi 8 baris x 32 kolom untuk 4017 satuan saya buat 8 keluaran, blok kolomnya 8 kolom, saya buat 8,8,8,8 untuk kendali blok kolom ada 4 keluaran, setelah jadi tampilannya seperti ada spasi menyalanya mas

    • 4017 bisa dibuat modulo dengan menghubungkan keluaran Qmodulo ke reset. Misalnya kita mau membuat modulo 8, maka hubungkan Q8 ke reset. Akan tetapi karena reset ini juga dibutuhkan dalam pengendalian, maka cara menghubungkannya harus menggunakan gerbang OR. Jadi, reset dikendalikan oleh keluaran gerbang OR, kemudian masukan gerbang yang satu dihubungkan ke Q8, dan masukan lainnya digunakan sebagai input reset bagi modulo 8 ini (dihubungkan ke port mikro).

    • berarti harus menambah 1 IC lagi untuk gerbang OR nya, begitu mas? untuk keluaran Q8 dihubungkan ke reset tingkat satuan apa puluhan mas? untuk IC gerbangnya apa 74xx ….?

    • Gerbang O bisa menggunakan IC (lebih bagus) tapi juga bisa menggunakan dioda dan resistor. Q8 mana yang dihubungkan ke reset? Tentu saja Q8 dari 4017 yang akan dibuat modulo 8.

    • kalo di buat modulo 8, jadi untuk 8×32 membutuhkan berapa IC 4017 mas?, apa juga tetap 2 IC 4017 ? ada gambar untuk OR yang pakai dioda dan resistor mas?

    • 32 adalah 8 x 4. Apakah membutuhkan 2 buah 4017? Itu tergantung desain, Kalau memang hanya menginginkan pengendalian dengan 2 buah port, yaitu clock dan reset saja, maka itu harus menggunakan 2 buah 4017. Gambar gerbang OR dengan dioda? banyak sekali yang membahasnya di internet. Ini salah satunya.

    • ok mas terima kasih bimbingannya, untuk clock 4017 untuk blok kolom berubah tidak mas? apa masih tetap dihubungan dengan carry 4017 tingkat satuan

    • Ya, tetap begitu.

    • sudah jalan mas tapi setiap 8 kolom menyala membayang tulisan yang ditampilkan, tapi kalau tulisan hilang juga ikut hilang, gimana mengatasinya mas?

Leave a comment

Before making a comment, make sure you have read the previous comments. Do not make the questions have been asked. Note also the links in the article. Take a look at those links before you create the questions, as it may be an explanation of your questions have been answered in that link.

Comments that do not follow these rules will be deleted!

(required)

(required)


*

Notify me of followup comments via e-mail. You can also subscribe without commenting.