Twitter Delicious Facebook Digg Stumbleupon Favorites More

Tuesday, April 1, 2014

Membuat Lampu Flip-Flop dengan ATMega16

Pada tutorial sebelumnya sudah pernah disinggung mengenai ATMega 16, pada saat ini kita akan membehas tetang membuat lampu flip-flop dengan ATMega16.
Komponen


  • IC ATMega16
  • Capasitor Keramik 33 dua buah
  • Cristal 11.0592
  • Soket IC 40 pin
  • Soket Downloader 10 pin
  • PCB
  •  LED


Penyolderan
Setelah komponen Socket IC, Kristal,  Kapasitor, dan pin terpasang pada PCB, ada beberapa langkah yang harus dilakukan sebagai berikut :

LANGKAH 1
ž  Pada socket IC dilakukan penyolderan sebagai berikut :
  1. Penyambungan  10 (VCC) - 30 (AVCC) – 32 (AREF) .
  2. Penyambungan 11 (GND)- 31 (GND)
  3. menggabungkan kaki a kapasitor1 ke kaki a kapasitor2  hasil dari sambungan kapasitor 1 dan 2 dihubungkan ke 11 (GND)
  4. kemudian kaki b kapasitor1  disambungkan ke kristal kaki  a dan kaki b kapasitor 2 dibubungkan ke kristal kaki bkemudian kristal kaki a  disambungkan ke 12 (xtal1) dan kristal kaki b di sambungkan ke 13(xtal2)ž   
  5. pada pin downloader menggabungkan ke empat GND
LANGKAH 2
    Penyambungkan setiap kaki pada socket IC terhadap  kaki pada pin downloader dengan nama sejenis
Penyambungan Lampu
ž Semua anode led A digabungkan satu sama lain demikian juga katodenya dan pada led B penyambungannya sama dengan led A
Anode pada led A di gabungkan dengan anode led B dan dihubungkan ke 30 (VCC)
Katode led A di hubungkan ke 40 (PA0), katode led B dihubungkan ke 39 (PA1)
Simolasi rangkaian kurang lebihnya seperti dibawah ini

Untuk menulis programnya saya menggunakan CodeVisionAVR dan untuk mengunduhkan ke IC menggukanan Khazama


Coding 
#include <mega16.h>
#include <delay.h>
int x;
void main(void)
{
PORTA=0x03;
DDRA=0x03;
while (1)
{
// Place your code here
        for (x=0;x<10;x++){
        PORTA.0=1;
        delay_ms(5);
        PORTA.0=0;
        delay_ms(5);     

        }
        PORTA.0=1;
        for (x=0;x<10;x++)  {
        PORTA.1=1;
        delay_ms(5);                     
        PORTA.1=0;
        delay_ms(5); 
        }
        for (x=0;x<10;x++)  {
        PORTA.1=1;
        PORTA.0=0;
        delay_ms(100);
        PORTA.1=0;
        PORTA.0=1;
        delay_ms(100); 
        }       
             PORTA.1=1;
              PORTA.0=1;
      } 
      }  
 
demikian tutorial kali ini semoga bermanfaat amin



1 comment:

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Blogger Templates