Membuat Digital Counter Up and Down menggunakan Tombol

Digital Counter adalah sebuah pencacah berbasis digital yang dapat melakukan perhitungan counting down maupun counting up. Prinsip kerja digital counter hanyalah melakukan penambahan atau pengurangan nilai sehingga diperoleh nilai berikutnya. Program counting down akan bekerja mengurangi nilai, sedangkan counting up berfungsi menambah nilai satu persatu.

Oke untuk prinsip dasar perhitungan semacam itu mungkin tidak akan terlalu susah. Tapi bagaimana jika menerjemahkannya dalam bentuk program digital counter menggunakan mikrokontroler, misalnya AVR Atmega? Menggunakan sistem komputer tentu saja berbeda dengan hanya melakukan counting secara manual, apalagi jika kita menggunakan pemrograman perangkat keras seperti mikroprosessor dan mikrokontroler, tentu harus bisa menerjemahkan setiap step dengan detail. Misal bagaimana melakukan counting, mentransfer ke display dan harus diperhatikan pada saat terjadi limpahan carry agar nilai yang didapat tetap sesuai dengan perhitungan.

Program Decade Digital Counter Counter Up Down

Program decade counter berikut ini berfungsi melakukan pencacahan naik dari 0 ke 99, akan tetapi, dia bisa berubah menjadi counting down jika tombol pada PINA.0 ditekan. Counting down akan dimulai dari nilai terakhir angka yang tampil. Lalu jika tombol pada PINA.0 dilepas, program akan kembali melakukan counting up berdasar nilai terakhir.

#include <mega16.h>
#include <delay.h>
unsigned char bil[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};

char puluh=0;
unsigned char satu=0; //nilai awal =99

void tampil (void)
{
char i,j;
for(i=0;i<10;i++)
{
for(j=0;j<50;j++)
{
PORTD=0x01;
PORTC=bil[puluh] ;
delay_us(200);
PORTD=0x02;
PORTC=bil[satu] ;
delay_us(200);
}} }

void main(void)
{

DDRA=0x00;
DDRC=0xff;
DDRD=0xff;
PORTC=0xc0;
PORTD=0xff;
delay_ms(2);
while(1)
{
tampil();
if(PINA==0)
{

if(satu==0)
{
if(puluh==0)
{
satu=9; puluh=9;
}
else if(puluh>=1)
{
satu=9;
puluh=puluh-1;
}
}
else if(satu>=1)
{
satu=satu-1;
}
}
else
{

if(satu==9)
{
if(puluh==9)
{
satu=0;puluh=0;
}
else if(puluh>=0)
{
satu=0;
puluh=puluh+1;
}
}
else if(satu>=0)
{
satu=satu+1;
}
}
}
}

program decade digital counter mikrokontroler atmega codevision avr

butuh source code codevision + rangkaian ISIS proteus?

baca juga puluhan artikel lain tentang belajar mikrokontroler atmega gratis di anotherorion.com

2 pemikiran pada “Membuat Digital Counter Up and Down menggunakan Tombol”

  1. Judul Harga Beli Sekarang
    Dasar Mikrokontroler Atmega8535 dengan CAVR BUKU ORIGINAL Rp64.000  
    Buku Belajar Sendiri Mikrokontroler AVR Seri ATMega8535 Simulasi, Hardware, Dan Aplikasi Rp70.000  
    Buku 20 Aplikasi Mikrokontroler ATMega 8535 & ATMega 16 Menggunakan Bascom-AVR+CD Rp70.500
    BUKU PRAKTIKUM TEKNOLOGI MICROCONTROLLER ATMEGA- 16 UNTUK SMK/ MAK Rp40.000  
    Buku Dasar Mikrokontroler Atmega8535 dengan CAVR Rp64.000
    BUKU MIKROKONTROLER AVR ATMEGA8535 + CD Rp80.750  
    buku pemrograman mikrokontrorler avr atmega 16 + cd Rp50.000  

Tinggalkan komentar

(Note, links and most HTML attributes are not allowed in comments)

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.

Ingin produk/website Anda kami ulas? Silahkan klik tombol dibawah ini