Kamis, 05 Mei 2016

Rangkian LED Animasi 10x10

Langkah-langkah membuat rangkian 10x10 proteus8


Buat Rangkaian Animasi LED pada Gambar di bawah ini  pada  proteus

 Sekarang cari lah komponen yang kita butuhkan untuk membuat rangkaian led rangkaian yang kita butuhkan adalah 
  • Atmega 2560

  • Led Blue dan Led Green
  • Led yellow dan  Led Red
  • Ground
Buka program Codevision AVR


Buat New project, File a New project


Selanjutnya akan muncul kotak dialog sebagai berikut






Lalu setelah muncul kotak dialog diatas klik Yes, setelah itu akan muncul kotak dialog Pilih AVR Chip Type AT90, ATtiny,ATmega,FPSLIC


setelah selesai maka akan muncul Code wizard AVR




 Ubah Tab “Chip” dengan nama ATmega2560



 Kemudian buka tab Ports

Buat keseluruhan Port (A,B,C,D) Bit 0-7 sebagai Output



Bila sudah , maka di generate, Save and Exit . (Save nya sebanyak 3 kali , dan beri nama project yang sama setiap kali kita membuat project , maka akan di dapat sebuah kode-kode berupa program C)

Di bawah ini merupakan kode bahasa C yang kita dapatkan, namun kita harus menambahkan coding  untuk animasi LED kita, yaitu pada bagian

Di bawah ini merupakan kode bahasa C yang kita dapatkan, namun kita harus menambahkan coding  untuk animasi LED kita, yaitu pada bagian
While (1)
{
//place your code here
}
Dan tambahkan pula kode #include<delay.h> dibawah kode #include<mega8535.h>



Masukkan kode berikut di dalam while

while (1)
      {
      // Place your code here
      PORTA=0b00000001;
      delay_ms(20);
      PORTA=0b00000011;
      delay_ms(20);
      PORTA=0b00000111;
      delay_ms(20);
      PORTA=0b00001111;
      delay_ms(20);
      PORTA=0b00011111;
      delay_ms(20);
      PORTA=0b00111111;
      delay_ms(20);
      PORTA=0b01111111;
      delay_ms(20);
      PORTA=0b11111111;
      delay_ms(20);
      PORTC=0b00000001;
      delay_ms(20);
      PORTC=0b00000011;
      delay_ms(20);
      PORTC=0b00000111;
      delay_ms(20);
      PORTC=0b00001111;
      delay_ms(20);
      PORTC=0b00011111;
      delay_ms(20);
      PORTC=0b00111111;
      delay_ms(20);
      PORTC=0b01111111;
      delay_ms(20);
      PORTC=0b11111111;
      delay_ms(20);
      PORTD=0b00000001;
      delay_ms(20);
      PORTD=0b00000011;
      delay_ms(20);
      PORTD=0b00000111;
      delay_ms(20);
      PORTD=0b00001111;
      delay_ms(20);
      PORTD=0b00011111;
      delay_ms(20);
      PORTD=0b00111111;
      delay_ms(20);
      PORTD=0b01111111;
      delay_ms(20);
      PORTD=0b11111111;
      delay_ms(20);
      PORTB=0b00000001;
      delay_ms(20);
      PORTB=0b00000011;
      delay_ms(20);
      PORTB=0b00000111;
      delay_ms(20);
      PORTB=0b00001111;
      delay_ms(20);
      PORTB=0b00011111;
      delay_ms(20);
      PORTB=0b00111111;
      delay_ms(20);
      PORTB=0b01111111;
      delay_ms(20);
      PORTB=0b11111111;
      delay_ms(20);
      PORTE=0b00000001;
      delay_ms(20);
      PORTE=0b00000011;
      delay_ms(20);
      PORTE=0b00000111;
      delay_ms(20);
      PORTE=0b00001111;
      delay_ms(20);
      PORTE=0b00011111;
      delay_ms(20);
      PORTE=0b00111111;
      delay_ms(20);
      PORTE=0b01111111;
      delay_ms(20);
      PORTE=0b11111111;
      delay_ms(20);
      PORTG=0b010000;
      delay_ms(20);
      PORTG=0b010000;
      delay_ms(20);
      PORTG=0b000001;
      delay_ms(20);
      PORTG=0b000011;
      delay_ms(20);
      PORTG=0b000111;
      delay_ms(20);
      PORTH=0b00000001;
      delay_ms(20);
      PORTH=0b00000011;
      delay_ms(20);
      PORTH=0b00000111;
      delay_ms(20);
      PORTH=0b00001111;
      delay_ms(20);
      PORTH=0b00011111;
      delay_ms(20);
      PORTH=0b00111111;
      delay_ms(20);
      PORTH=0b01111111;
      delay_ms(20);
      PORTH=0b11111111;
      delay_ms(20);
      PORTF=0b00000001;
      delay_ms(20);
      PORTF=0b00000011;
      delay_ms(20);
      PORTF=0b00000111;
      delay_ms(20);
      PORTF=0b00001111;
      delay_ms(20);
      PORTF=0b00011111;
      delay_ms(20);
      PORTF=0b00111111;
      delay_ms(20);
      PORTF=0b01111111;
      delay_ms(20);
      PORTF=0b11111111;
      delay_ms(20);
      PORTK=0b00000001;
      delay_ms(20);
      PORTK=0b00000011;
      delay_ms(20);
      PORTK=0b00000111;
      delay_ms(20);
      PORTK=0b00001111;
      delay_ms(20);
      PORTK=0b00011111;
      delay_ms(20);
      PORTK=0b00111111;
      delay_ms(20);
      PORTK=0b01111111;
      delay_ms(20);
      PORTK=0b11111111;
      delay_ms(20);
      PORTL=0b00111111;
      delay_ms(20);
      PORTL=0b01111111;
      delay_ms(20);
      PORTL=0b11111111;
      delay_ms(20);
      PORTL=0b00000001;
      delay_ms(20);
      PORTL=0b00000011;
      delay_ms(20);
      PORTL=0b00000111;
      delay_ms(20);
      PORTL=0b00001111;
      delay_ms(20);
      PORTL=0b00011111;
      delay_ms(20);
      PORTL=0b00111111;
      delay_ms(20);
      PORTL=0b01111111;
      delay_ms(20);
      PORTL=0b11111111;
      delay_ms(20);
      PORTL=0b00111111;
      delay_ms(20);
      PORTL=0b01111111;
      delay_ms(20);
      PORTL=0b11111111;
      delay_ms(20);
      PORTJ=0b00000001;
      delay_ms(20);
      PORTJ=0b00000011;
      delay_ms(20);
      PORTJ=0b00000111;
      delay_ms(20);
      PORTJ=0b00001111;
      delay_ms(20);
      PORTJ=0b00011111;
      delay_ms(20);
      PORTJ=0b00111111;
      delay_ms(20);
      PORTJ=0b01111111;
      delay_ms(20);
      PORTJ=0b11111111;
      delay_ms(20);

      //nyala semua, kedip2
      PORTA=0b00000000;
      PORTC=0b00000000;
      PORTD=0b00000000;
      PORTB=0b00000000;
      PORTE=0b00000000;
      PORTG=0b000000;
      PORTH=0b00000000;
      PORTF=0b00000000;
      PORTK=0b00000000;
      PORTL=0b00000000;
      PORTJ=0b00000000;
      delay_ms(100);
      PORTA=0b11111111;
      PORTC=0b11111111;
      PORTD=0b11111111;
      PORTB=0b11111111;
      PORTE=0b11111111;
      PORTG=0b111111;
      PORTH=0b11111111;
      PORTF=0b11111111;
      PORTK=0b11111111;
      PORTL=0b11111111;
      PORTJ=0b11111111;
      delay_ms(100);
      PORTA=0b00000000;
      PORTC=0b00000000;
      PORTD=0b00000000;
      PORTB=0b00000000;
      PORTE=0b00000000;
      PORTG=0b000000;
      PORTH=0b00000000;
      PORTF=0b00000000;
      PORTK=0b00000000;
      PORTL=0b00000000;
      PORTJ=0b00000000;
      delay_ms(100);
      //nyala per lampu (biru)
      PORTA=0b01000001;
      PORTC=0b00010000;
      PORTD=0b00010001;
      PORTB=0b00000100;
      PORTE=0b01000001;
      PORTG=0b000100;
      PORTH=0b00010001;
      PORTF=0b00000100;
      PORTK=0b01000001;
      PORTL=0b00010000;
      PORTJ=0b00010001;
      delay_ms(50);
      PORTA=0b00000000;
      PORTC=0b00000000;
      PORTD=0b00000000;
      PORTB=0b00000000;
      PORTE=0b00000000;
      PORTG=0b000000;
      PORTH=0b00000000;
      PORTF=0b00000000;
      PORTK=0b00000000;
      PORTL=0b00000000;
      PORTJ=0b00000000;
      delay_ms(50);
      //merah
      PORTA=0b11100011;
      PORTC=0b00111000;
      PORTD=0b00111001;
      PORTB=0b10001110;
      PORTE=0b11100011;
      PORTG=0b001110;
      PORTH=0b00111001;
      PORTF=0b10001110;
      PORTK=0b11100011;
      PORTL=0b00111000;
      PORTJ=0b00111001;
      delay_ms(50);
      PORTA=0b00000000;
      PORTC=0b00000000;
      PORTD=0b00000000;
      PORTB=0b00000000;
      PORTE=0b00000000;
      PORTG=0b000000;
      PORTH=0b00000000;
      PORTF=0b00000000;
      PORTK=0b00000000;
      PORTL=0b00000000;
      PORTJ=0b00000000;
      delay_ms(10);
      //kuning
      PORTA=0b11110111;
      PORTC=0b01111101;
      PORTD=0b01111101;
      PORTB=0b11011111;
      PORTE=0b11110111;
      PORTG=0b011110;
      PORTH=0b01111101;
      PORTF=0b11011111;
      PORTK=0b11110111;
      PORTL=0b01111101;
      PORTJ=0b01111101;
      delay_ms(10);
      PORTA=0b00000000;
      PORTC=0b00000000;
      PORTD=0b00000000;
      PORTB=0b00000000;
      PORTE=0b00000000;
      PORTG=0b000000;
      PORTH=0b00000000;
      PORTF=0b00000000;
      PORTK=0b00000000;
      PORTL=0b00000000;
      PORTJ=0b00000000;
      delay_ms(10);
      //hijau or semua
      PORTA=0b11111111;
      PORTC=0b11111111;
      PORTD=0b11111111;
      PORTB=0b11111111;
      PORTE=0b11111111;
      PORTG=0b111111;
      PORTH=0b11111111;
      PORTF=0b11111111;
      PORTK=0b11111111;
      PORTL=0b11111111;
      PORTJ=0b11111111;
      delay_ms(10);
      PORTA=0b00000000;
      PORTC=0b00000000;
      PORTD=0b00000000;
      PORTB=0b00000000;
      PORTE=0b00000000;
      PORTG=0b000000;
      PORTH=0b00000000;
      PORTF=0b00000000;
      PORTK=0b00000000;
      PORTL=0b00000000;
      PORTJ=0b00000000;
      delay_ms(10);
      PORTA=0b11111111;
      PORTC=0b11111111;
      PORTD=0b11111111;
      PORTB=0b11111111;
      PORTE=0b11111111;
      PORTG=0b111111;
      PORTH=0b11111111;
      PORTF=0b11111111;
      PORTK=0b11111111;
      PORTL=0b11111111;
      PORTJ=0b11111111;
      delay_ms(10);
      PORTA=0b00000000;
      PORTC=0b00000000;
      PORTD=0b00000000;
      PORTB=0b00000000;
      PORTE=0b00000000;
      PORTG=0b000000;
      PORTH=0b00000000;
      PORTF=0b00000000;
      PORTK=0b00000000;
      PORTL=0b00000000;
      PORTJ=0b00000000;
      delay_ms(10);
      PORTA=0b11111111;
      PORTC=0b11111111;
      PORTD=0b11111111;
      PORTB=0b11111111;
      PORTE=0b11111111;
      PORTG=0b11111;
      PORTH=0b11111111;
      PORTF=0b11111111;
      PORTK=0b11111111;
      PORTL=0b11111111;
      PORTJ=0b11111111;
      delay_ms(10);
      }
}



Kemudian build program maka akan muncul informasi

Kita Buka Antarmuka Animasi LED yang sudah kita buat pada Proteus dan pada IC microprocessor ATmega2560 kita double click

 Pada Program file , isikan dengan file yang sudah kita buat pada AVR yaitu file hex dan klik OK

Jalankan program yang kita buat dengan menekan tombol play pada proteus , jika berjalan sesuai dengan program yang kita buat maka percobaan berhasil.


Tidak ada komentar:

Posting Komentar