Gambar di bawah ini merupakan gambar desainnya :
Simulasi running text pada proteus menggunakan komponen :
✓ -Arduino Uno yang berfungsi sebagai mikrokontroller yang mengeksekusi perintah sesuai program.
✓ -IC Driver 7447 yang berfungsi sebagai converter BCD ke komponen seven segment
✓ Komponen 7 Segmen 6 digit MPX6 common anode, sebagai penampil / display seven segmen running text
• Penggunaan program Arduino memungkinkan untuk menampilkan masing-masing angka dengan sangat cepat sehingga terbaca seakan beberapa angka secara bersamaan.
• Tampilnya setiap angka di posisi tertentu pada display di tentukan oleh pin 5-10, sedangkan angka sendiri di kendalikan oleh pin 1-4.
• Untuk mendapatkan perubahan posisi angka tersebut, maka penyalaan pada pin 5-10 harus bergeser seolah kombinasi shift register.
• Simulasi running text ini berjalan dari kanan ke kiri dan menampilkan angka tanggal lahir : 24041995
Berikut video simulasinya :
#define A 1
#define B 2
#define C 3
#define D 4
//definisikan pin digit
#define D1 5
#define D2 6
#define D3 7
#define D4 8
#define D5 9
#define D6 10
//int ms=1000;
int n;
int a=13;
void setup(){
pinMode(A,OUTPUT);
pinMode(B,OUTPUT);
pinMode(C,OUTPUT);
pinMode(D,OUTPUT);
pinMode(D1,OUTPUT);
pinMode(D2,OUTPUT);
pinMode(D3,OUTPUT);
pinMode(D4,OUTPUT);
pinMode(D5,OUTPUT);
pinMode(D6,OUTPUT);
}
void loop(){
//menuliskan bilangan (digit, angka)
for (n=0; n<100; n++){
if (n==50){a--;}
//if (n>){for (a=6; a<1; a--)
tampilkanAngka(a,5);
clearLED();
tampilkanAngka((a-1),9);
clearLED();
tampilkanAngka((a-2),9);
clearLED();
tampilkanAngka((a-3),1);
clearLED();
tampilkanAngka((a-4),4);
clearLED();
tampilkanAngka((a-5),0);
clearLED();
tampilkanAngka((a-6),4);
clearLED();
tampilkanAngka((a-7),2);
clearLED();
if (a==0 && n==75){a=13;}
}
}
void clearLED(){
delay(1);
digitalWrite(D1,0);
digitalWrite(D2,0);
digitalWrite(D3,0);
digitalWrite(D4,0);
digitalWrite(D5,0);
digitalWrite(D6,0);
}
void tampilkanAngka(int digit, int angka){
switch (digit) {
case 1:
digitalWrite(D1,1);
break;
case 2:
digitalWrite(D2,1);
break;
case 3:
digitalWrite(D3,1);
break;
case 4:
digitalWrite(D4,1);
break;
case 5:
digitalWrite(D5,1);
break;
case 6:
digitalWrite(D6,1);
break; }
switch (angka){
case 0:
digitalWrite(A, 0);
digitalWrite(B, 0);
digitalWrite(C, 0);
digitalWrite(D, 0);
break;
case 1:
digitalWrite(A, 1);
digitalWrite(B, 0);
digitalWrite(C, 0);
digitalWrite(D, 0);
break;
case 2:
digitalWrite(A, 0);
digitalWrite(B, 1);
digitalWrite(C, 0);
digitalWrite(D, 0);
break;
case 3:
digitalWrite(A, 1);
digitalWrite(B, 1);
digitalWrite(C, 0);
digitalWrite(D, 0);
break;
case 4:
digitalWrite(A, 0);
digitalWrite(B, 0);
digitalWrite(C, 1);
digitalWrite(D, 0);
break;
case 5:
digitalWrite(A, 1);
digitalWrite(B, 0);
digitalWrite(C, 1);
digitalWrite(D, 0);
break;
case 6:
digitalWrite(A, 0);
digitalWrite(B, 1);
digitalWrite(C, 1);
digitalWrite(D, 0);
break;
case 7:
digitalWrite(A, 1);
digitalWrite(B, 1);
digitalWrite(C, 1);
digitalWrite(D, 0);
break;
case 8:
digitalWrite(A, 0);
digitalWrite(B, 0);
digitalWrite(C, 0);
digitalWrite(D, 1);
break;
case 9:
digitalWrite(A, 1);
digitalWrite(B, 0);
digitalWrite(C, 0);
digitalWrite(D, 1);
break;
}
}
Komentar
Posting Komentar