Memprogram LED ATMEGA (3); Inner Running LED

Setelah kita belajar memprogram running LED menggunakan mikrokontroler ATMega dengan baik dari kanan atau dari kiri, sekarang kita ditantang untuk membuat program running led dari luar ke dalam. Led di kedua ujung akan menyala pertama kali, kemudian nyala led seolah-olah bergerak ke tengah, setelah keduanya bertemu ditengah, nyala LED akan kembali dari ujung dan bergerak lagi ke tengah.

Agak lebih rumit dibanding pembuatan program running led biasa. Karena bisa disebut ini merupakan program double running led. Pada program inner running led ini, kita membutuhkan setidaknya 3 variabel (bisa menggunakan variabel global maupun lokal) yaitu geser, gkanan, dan gkiri.

Variabel gkanan, digunakan untuk mengatur nyala 4 buah led paling atas (PORTA.5-PORTA8) sementara variable gkiri digunakan untuk mengatur 4 led sisanya dimana kedua variable ini akan menggunakan shift register sampai led ke 4 dan 5 menyala bersamaan. Selanjutnya keduanya kembali menyalakan led paling ujung. Variabel  geser, berfungsi menjumlahkan kedua variabel gkanan dan gkiri untuk dikeluarkan di PORTA. Dengan demikian PORTA akan menampakan dua led yang berjalan dari ujung ke tengah secara bersamaan.

Berikut adalah listing program untuk inner LED menggunakan Codevision AVR.

#include <mega16.h>
#include <delay.h>
//program diambil dari http://anotherorion.com
//running led inner
int geser, gkanan, gkiri=0;
void main(void)
{
PORTA=0x00;
DDRA=0xFF;
delay_ms(50);
gkanan=0x80;
gkiri=0x01;
while (1)
      {
       if(gkanan<0x10)
       {
       gkanan=0x80;
       }
       if(gkiri>0x08)
       {
       gkiri=0x01;
       }
       geser=gkiri+gkanan;
       PORTA=geser;
       gkanan>>=1;
       gkiri<<=1;
       delay_ms(50);
      };
}

Untuk rangkaian skematiknya sama seperti rangkaian running led.

BACA JUGA:   Sensor cahaya pada ATMega dengan codevision AVR
double-running-led Memprogram LED ATMEGA (3); Inner Running LED  wallpaper
double running led pada atmega

Nah setelah anda belajar menyalakan dua led dari ujung ke tengah ( inner running led) tentunya anda dapat berkreasi dengan membuat outer running led, kedua led akan bergerak dari tengah ke masing-masing ujung atau cross running led; kedua led berjalan dari ujung menuju ujung yang lain. Selamat mencoba

program led berjalan dengan avr, avr led bolak balik, program cv avr membuat led berjalan dengan array, program cvavr running led, program cvavr outer led berjalan dengan array, running led atmega16, kode lampu berjalan pada code vision avr, avr int geser kanan kiri led, membuat led berjalan dengan mikrokontroler, led geser kiri kanan dengan button

anotherorion

Priyo Harjiyono, blogger kelahiran Cilacap yang kini menjadi warga Ngayogyakarta Hadiningrat, baginya blog adalah dunia untuk menciptakan mimpi2nya. Saat ini masih disibukkan sebagai pembelajar dalam dunia pendidikan.

5 tanggapan untuk “Memprogram LED ATMEGA (3); Inner Running LED

Berikan tanggapan anda

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d blogger menyukai ini: