Jumat, 25 Mei 2012

Aplikasi Seven Segmen ATMega16 dengan CVAVR

Seperti kita ketahui Seven segmen adalah suatu komponen elektronika yang digunakan untuk penampil angka. Dalam Post sebelumnya sudah dijelaskan cara menampilkan seven segmen dengan menggunakanBahasa Basic Compiler atau BasCom AVR. Dalam Post ini akan dijelaskan cara menampilkan seven segmen tetapi dengan bahasa pemrograman yang berbeda yaitu dengan menggunakan bahasa pemrograman CVAVR atau Code Vision AVR.

Hardware
Hardware penampil seven segmen adalah sebagai berikut.
Program CodeVisionAVR

#include (mega16.h)
#include (delay.h)
void main(void)
{
unsigned char seven[10]={0b11000000,0b11001111,0b10100100,0b10110000,0b10011001,0b10010010,0b10000010,0b11111000,0b10000000,0b10010000};
unsigned int n=0;

DDRC=0xFF;


while (1)
      {
      PORTC=seven[n];
      delay_ms(100);
      n=n+1;
      if (n>9){
      n=0;
      }; 
      };
}

Penjelasan

Program diatas menggunakan dua macam librari yaitu
#include (mega16.h) dan #include (delay.h) . Librari mega16.h untuk menunjukkan pada program bahwa menggunakan mikrokontroler ATMega16 sedangkan librari delay.h digunakan untuk mengakses fungsi delay. Program ini menggunakan dua macam variabel yaitu  Seven[10] yang bertipe unsigned char dan  n yang bertipe unsigned integer. Pada variable Seven[10] berisi 10 macam data yang nantinya data data ini digunakan untuk menampilkan angka 0  sampai 9 pada seven segmen. Setelah mendeklarasikan variable terdapat sintak DDRC=0xFF yang artinya menjadikan Portc semuanya sebagai output. Pada program utamanya terdapat sintak

PORTC=seven[n];
      delay_ms(100);
      n=n+1;
      if (n>9){
      n=0;

Maksud dari sintak terssebut  adalah mengeluarkan data yang terdapat pada variabel "seven" melalui portc . Nah data pada variabel seven dapat berubah ubah sesuai nilai variabel "n" jadi variabel n disini berfungsi sebagai pointer. Supaya nilai pada variabel seven dapat berubah ubah maka variabel n di-incremen-kan hingga nilai n menunjukkan nilai 9. dengan demikian maka angka yang ditampilkan pada seven segmen adalah angka 0 dampai 9.

NB: Pada #include tanda "(" diganti tanda "lebih besar" sedangkan tanda ")" diganti tanda "lebih kecil".

sumber : http://kecoakacau.blogspot.com

Tidak ada komentar:

Posting Komentar

para OBLO