News Update :

Pengikut

Diberdayakan oleh Blogger.

Label

Label

Label

Mide 51



Running Teks / Moving Sign / Teks Berjalan


Running Teks / Moving Sign / Teks Berjalan adalah rangkaian yang bisa menampilkan tulisan yang bisa bergerak.
lihat skema berikut







jika sobat elektro berminat, mohon tunggu file lengkapnya, dari saya, mulai dari skema pada file proteus dan codingnya pada aplikasi mide 51.karena internetnya agak lelet jadi tidak bisa upload. mohon maaf. silahkan uppdate terus infonya. terimakasih. ^_^

uppdate

ini dia sobat, file proteus dan asm siap di unduh! silahkan DOWNLOAD DISINI!password "http://elektrasolution.blogspot.com" Tanpa tanda petik

program untuk rangkaian diatas mengguna kan aplikasi Mide-51 silah kan DOWNLOAD DISINI  jika anda belum punya!

MAAF KEMARIN TIDAK TAK CATUMKAN SUMBERNYA

 **SUMBER DARI GROUPDunia Mikrokontroler dan Komputer (Microcontroller & Computer)

**JIKA ADA PERTANYAAN SILAHKAN KIRIM PESAN DIKOLOM KOMENTAR ^_^


kunci pintu dengan password

Teman-teman mungkin pernah menginginkan kunci pintu dengan password!
nah sekarang bisa membuatnya dengan mikrokontroler, menggunakan IC ATMEGA 16, KEYPAD, LCD dan komponen pendukung lainnya, berikut skema dan kodenya. aplikasi yang digunakan, proeus untuk simulasinya dan COdevision avr untuk membuat programnya.









#include
#include
#include
#include

float nilai=0, password=22223333;
char temp[12], array[10], i=0, indeks=0;
//variabel indeks digunakan untuk mendeteksi jika indeks=0 unlock, indeks=1 lock

// Alphanumeric LCD Module functions
#asm
   .equ __lcd_port=0x15 ;PORTC
#endasm
#include

void lock()
{
 while (indeks==0)
      {
      lcd_gotoxy(0,0);
      lcd_putsf("Tekan ="); 
      lcd_gotoxy(0,1);
      lcd_putsf("untuk lock");
      
      PORTB = 0b11111011;
      delay_ms(30);
      if (PINB.7 == 0)
       {
        indeks=1;
        PORTD.0=1;//terkunci
        lcd_clear();   
        lcd_gotoxy(0,0);
        lcd_putsf("mengunci");
        delay_ms(1000);
        lcd_clear();
        }
      }
}

void enter()
{
if (nilai==password)
   {
   lcd_clear();
   lcd_gotoxy(0,0);
   lcd_putsf("membuka");
   delay_ms(1000);
   i=0; nilai=0;
   PORTD.0=0;//kunci terbuka
   indeks=0;  
   }                       
else 
   {
   lcd_clear();
   lcd_gotoxy(0,0);
   lcd_putsf("password salah");
   delay_ms(2500);
   i=0; nilai=0;
   indeks=1;//karena password salah jadi masih terkunci
   }
}

void simpan_dlm_1variabel()
{
       if (i==1){nilai=array[i];} 
         
       if (i>=2 && i<=8)
           {
           nilai=(nilai*10)+array[i];
           }   


void scanning_keypad()//scanning pendeteksian penekanan keypad
{
lcd_gotoxy(0,0);
lcd_putsf("password");

PORTB = 0b11111110;
delay_ms(30);
if (PINB.4 == 0) {i++; array[i]=1; simpan_dlm_1variabel(); delay_ms(300);}
if (PINB.5 == 0) {i++; array[i]=4; simpan_dlm_1variabel(); delay_ms(300);}
if (PINB.6 == 0) {i++; array[i]=7; simpan_dlm_1variabel(); delay_ms(300);}
if (PINB.7 == 0) {lcd_clear();i=0;nilai=0;delay_ms(300);}

PORTB = 0b11111101;
delay_ms(30);
if (PINB.4 == 0) {i++; array[i]=2; simpan_dlm_1variabel(); delay_ms(300);}
if (PINB.5 == 0) {i++; array[i]=5; simpan_dlm_1variabel(); delay_ms(300);}
if (PINB.6 == 0) {i++; array[i]=8; simpan_dlm_1variabel(); delay_ms(300);}
if (PINB.7 == 0) {i++; array[i]=0; simpan_dlm_1variabel(); delay_ms(300);}

PORTB = 0b11111011;
delay_ms(30);
if (PINB.4 == 0) {i++; array[i]=3; simpan_dlm_1variabel(); delay_ms(300);}
if (PINB.5 == 0) {i++; array[i]=6; simpan_dlm_1variabel(); delay_ms(300);}
if (PINB.6 == 0) {i++; array[i]=9; simpan_dlm_1variabel(); delay_ms(300);}
if (PINB.7 == 0) {delay_ms(300);}

PORTB = 0b11110111;
delay_ms(30);
if (PINB.4 == 0) {delay_ms(300);}
if (PINB.5 == 0) {delay_ms(300);}
if (PINB.6 == 0) {delay_ms(300);}
if (PINB.7 == 0) {enter();delay_ms(300);}
}

void tampil_lcd()
{
if (nilai>0)
    {
        ftoa(nilai,0,temp);
        lcd_gotoxy(0,1);
        lcd_puts(temp);
    }
}

void main(void)
{
PORTB=0xff;
DDRB=0x0f;

PORTD=0x00;//PD0 belogika low atau dlm keadaan unlock awalnya
DDRD=0x01;//PD0 sebagai output

// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
SFIOR=0x00;

// LCD module initialization
lcd_init(16);
lcd_putsf("elektra_solution");
delay_ms(1500);
lcd_clear();

while (1)
      {
      lock(); 
      scanning_keypad();
      tampil_lcd();         
      };
}

jika anda meninginkan data dalam bentuk file proteus dan codevision avr, mohon tungu untuk beberapa saat lagi!
atau tinggalan komentar anda pada postingan in. terimaasih, semoga bermanfaat!


terimakasih anda sudah bersedia menunggu, KLIK DISINI untuk download file lengkapnya
password "http://elektrasolution.blogspot.com" anpa tanda petik
LAIN WAKTU ITA BAHAS BAGAIMANA CARANYA MEMBUAT "4 X 4 LED CUB MENGGUNAKAN ATMEGA 16 atau ATMEGA 8535"sementara ini aku akan menyiapkan filnya! IKUTI TERUS INFONYA!

Arsip Blog

Kontributor

 
Company Info | Contact Us | Privacy policy | Term of use | Widget | Advertise with Us | Site map
Copyright © 2011. elektra solution . All Rights Reserved.
Design Template by panjz-online | Support by creating website | Powered by Blogger