Minggu, 13 April 2014

percobaan LED AVR ATmega8535



Percobaan LED

-          Percobaan 1 (Menyalakan LED)
#include <mega8535.h>
#include <delay.h>
void main(void)
{
PORTB=0x00;
DDRB=0xff;
while (1)
      {
       PORTB=0xff;// menyalakan semua led
      };
}
-          Percobaan 2 (Menyalakan LED silang secara Biner)
#include <mega8535.h>
#include <delay.h>
void main(void)
{
PORTB=0x00;
DDRB=0xff;
while (1)
      {
       PORTB= 0b01010101;
      };
}
-          Percobaan 3 (Menyalakan LED silang secara Hexa)
#include <mega8535.h>
#include <delay.h>
void main(void)
{
PORTB=0x00;
DDRB=0xff;
while (1)
      {
       PORTB=0xAA;
      };
}
-          Percobaan 4 (Menyalakan Led pada 1 bit)
#include <mega8535.h>
#include <delay.h>
void main(void)
{
PORTB=0x00;
DDRB=0xff;
while (1)
      {
       PORTB.0=1;//menyalakan led pada bit 0
      };
}




-          Percobaan 5 (Led kelap kelip)
#include <mega8535.h>
#include <delay.h>
void main(void)
{
PORTB=0x00;
DDRB=0xff;
while (1)
      {
       PORTB=0xff;
       delay_ms(500);      
       PORTB=0x00;
       delay_ms(500);
      };
}
-          Percobaan 6 (Led kelap kelip satu bit)
#include <mega8535.h>
#include <delay.h>
void main(void)
{
PORTB=0x00;
DDRB=0xff;
while (1)
      {
       PORTB.0=1;
       delay_ms(500);
       PORTB.0=0;
       delay_ms(500);
      };
}
-          Percobaan 7 (Geser Led satu bit)
#include <mega8535.h>
#include <delay.h>
void main(void)
{
PORTB=0x00;
DDRB=0xff;
while (1)
      {
       PORTB=0b00000000;
       delay_ms(100);
       PORTB=0b00000001;
       delay_ms(100);
       PORTB=0b00000010;
       delay_ms(100);
       PORTB=0b00000100;
       delay_ms(100);
       PORTB=0b00001000;
       delay_ms(100);
       PORTB=0b00010000;
       delay_ms(100);
       PORTB=0b00100000;
       delay_ms(100);
       PORTB=0b01000000;
       delay_ms(100);
       PORTB=0b10000000;
       delay_ms(100);
      };
}
-          Percobaan 8 (Geser Led metode Look Up Table/Array)
#include <mega8535.h>
#include <delay.h>
void main(void)
{
unsigned char led[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
int i;
PORTB=0x00;
DDRB=0xff;
while (1)
      {
       for(i=0;i<=7;i++)
       {
        PORTB=led[i];
        delay_ms(10);
       }
      };
}
-          Percobaan 9 (Geser Led ke kanan)
#include <mega8535.h>
#include <delay.h>
void main(void)
{
int a,i;
PORTB=0x00;
DDRB=0xff;
PORTD=0x00;
DDRD=0x00;
while (1)
      {
        a=0x7f;
        for(i=0;i<=7;i++)
        {
         a=((a<<1)|(a>>7));
         PORTB=~a;
         delay_ms(30);
        }
      }
}
-          Percobaan 10 (Geser Led ke kiri)
#include <mega8535.h>
#include <delay.h>
void main(void)
{
int a,i;
PORTB=0x00;
DDRB=0xff;
PORTD=0x00;
DDRD=0x00;
while (1)
      {
        a=0x01;
        for(i=7;i>=0;i--)
        {
         a=((a>>1)|(a<<7));
         PORTB=~a;
         delay_ms(30);
        }
      }
}

0 komentar:

Posting Komentar