Kamis, 13 Januari 2022

Dot Matriks Dengan Arduino Dan Pembahasan Programnnya

 Dot Matriks Untuk Menampilkan Emoji Wajah


Gambar 1. Rangkaian Dot Matriks


Source Code :

#include "LedControl.h" #include "binary.h"

 

LedControl lc=LedControl(11,10,13,1); unsigned long delaytime =100;

 

// happy face

byte hf[8]={B00111100,B01000010, B10100101,B10000001,B10100101,B10011001, B01000010,B00111100};

// neutral face

byte nf[8]={B00111100,B01000010,B10100101,B10000001,B10111101,B10000001, B01000010,B00111100};

//sad face

byte sf[8]={B00111100,B01000010,B10100101,B10000001,B10011001,B10100101, B01000010,B00111100};

void drawFaces(){

//Display sad face lc.setRow(0,0,sf[0]);

lc.setRow(0,1,sf[1]);

lc.setRow(0,2,sf[2]);

lc.setRow(0,3,sf[3]);

lc.setRow(0,4,sf[4]);

lc.setRow(0,5,sf[5]);

lc.setRow(0,6,sf[6]);

lc.setRow(0,7,sf[7]); delay(delaytime);

//Display neutral face lc.setRow(0,0,nf[0]);

lc.setRow(0,1,nf[1]);

lc.setRow(0,2,nf[2]);

lc.setRow(0,3,nf[3]);

lc.setRow(0,4,nf[4]);

lc.setRow(0,5,nf[5]);

lc.setRow(0,6,nf[6]);

lc.setRow(0,7,nf[7]); delay(delaytime);

 

//Display happy face lc.setRow(0,0,hf[0]);

lc.setRow(0,1,hf[1]);

lc.setRow(0,2,hf[2]);

lc.setRow(0,3,hf[3]);

lc.setRow(0,4,hf[4]);

lc.setRow(0,5,hf[5]);

lc.setRow(0,6,hf[6]);

lc.setRow(0,7,hf[7]); delay(delaytime);

} 

void setup(){

lc.shutdown(0,false); lc.setIntensity(0,8); lc.clearDisplay(0);

}

void loop(){ drawFaces();

}


Pembahasan Program :

Program

Definisi

#include "LedControl.h" #include "binary.h"

Berfungsi sebagai Headerfile, dimana untuk

mengaktifkan       fungsi       pustaka                             yang digunakan pada lledcontrol dan binary

LedControl lc=LedControl(11,10,13,1);

nomor pin yang digunakan pada board Arduino dan disesuaikan dengan penempatan pada IC MAX7219, dimana DIN

ke pin 11, CLK ke pin10, dan CS ke pin 13

unsigned long delaytime =100;

Digunakan untuk waktu tunda pergantian tampilan selam 100 mS

bytehf[8]={B00111100,B01000010, B10100101,B10000001,B10100101,B10011001,

B01000010,B00111100};

Program ini merupakan perwakilan. Dimana program ini untuk memberikan instruksi Setiap byte berisi 8 nilai yang kemudian akan mewakili setiap baris. Misalnya B0011100, bahwa terdapat 4 led yang berlogika 1 (HIGH) dan 2 awal baris dan 2 akhir baris pertama berlogika 0 (LOW) dan seterusnya pada setiap baris yang digunakan untuk menampilkan karakter suatu karakter. Untuk lebih jelas terdapat

pada gambar 7

void drawFaces(){

//Display sad face lc.setRow(0,0,sf[0]);

lc.setRow(0,1,sf[1]);

lc.setRow(0,2,sf[2]);

lc.setRow(0,3,sf[3]);

lc.setRow(0,4,sf[4]);

lc.setRow(0,5,sf[5]);

lc.setRow(0,6,sf[6]);

lc.setRow(0,7,sf[7]); delay(delaytime);

 

//Display neutral face lc.setRow(0,0,nf[0]);

lc.setRow(0,1,nf[1]);

lc.setRow(0,2,nf[2]);

lc.setRow(0,3,nf[3]);

lc.setRow(0,4,nf[4]);

lc.setRow(0,5,nf[5]);

lc.setRow(0,6,nf[6]);

lc.setRow(0,7,nf[7]); delay(delaytime);

 

//Display happy face

hanya memanggil ledControl dan menyetel baris dari 0-7 dengan bit-1 yang sesuai dengan baris pertama dan seterusnya. Setelah setiap wajah ada penundaan 100 ms dan kemudian melompat ke wajah berikutnya dan terus berjalan.


Tidak ada komentar:

Posting Komentar

Keypad Dengan Arduino Dan Pembahasan Program

 KEYPAD Gambar 1. Rangkaian Keypad Source Code : #include<Keypad.h>   const byte ROWS=4; const byte COLS=4; char hexaKeys[...