PIC16F84A ile Lcd Göstergeli Sayıcı Devresi

PIC16F84A ile Lcd Göstergeli Sayıcı Devresi

Bu devrede PIC16F84A mikroişlemcisi ve 16X2 LCD ekran kullanılarak 12 basamaklı bir sayıcı yapılmıştır. SWITCH butonundan gönderilen her sinyal LCD ‘deki değerin bir artmasını sağlar. SIFIRLA butonu ise LCD ’deki değerin sıfırlanmasını sağlar.

PIC16F84A ile sayıcı devre şeması
microchip pic16f84 sayıcı devresi

PIC16F84A ile LCD sayıcı devresinde kullanılan malzemeler;

  • 1 Adet PIC16F84A mikroişlemci
  • 1 Adet 16X2 LCD
  • 3 Adet 10K direnç
  • 1 Adet 4.7K direnç
  • 1 Adet 4Mhz kristal osilatör
  • 2 Adet 22pF kondansatör
  • 2 Adet buton

Kaynak Kodlar
Devreye ait mikroişlemci kodları MicroCode Studio Plus PICBASIC PRO derleyicisinde yazılmış ve derlenmiştir. Derleme işlemi için bilgisayarınızda PBP246 ve MPASM assembly derleyici dosyaları bulunmalıdır.

'****************************************************************
'*  Proje Adı: LCD SAYICI DEVRESİ                               *
'*  Yazar    : HASAN ÜZÜLMEZ                                    *
'*  Not      : LCD 12 basamaklı sayıcı devresi                  *
'*                                                              *
'*  Date     : 10.09.2008                                       *
'****************************************************************
DEFINE LCD_DREG PORTA 'LCD data bacakları hangi porta bağlı?
DEFINE LCD_DBIT 0 'LCD data bacakları hangi bitten başlıyor?
DEFINE LCD_RSREG PORTA 'LCD RS Bacağı Hangi Porta bağlı ?
DEFINE LCD_RSBIT 4 'LCD RS bacağı Hangi Bite bağlı ?
DEFINE LCD_EREG PORTB 'LCD Enable Bacağı Hangi Porta bağlı?
DEFINE LCD_EBIT 0 'LCD Enable Bacağı Hangi bite bağlı ?
DEFINE LCD_BITS 4 'LCD 4 bit mi yoksa 8 bit olarak bağlı?
DEFINE LCD_LINES 2 'LCD Kaç sıra yazabiliyor
TRISA=0
TRISB=%11000000
SAYI  VAR WORD
SAYI1 VAR WORD
SAYI2 VAR WORD
SAYI3 VAR WORD 
SAYI4 VAR WORD
SAYI=0
SAYI1=0
SAYI2=0
SAYI3=0
SAYI4=0
ANA:
    IF PORTB.6=0 THEN SAYI=0:SAYI1=0:SAYI2=0:SAYI3=0:SAYI4=0
    LCDOUT $FE,$80,"URETIM MIKTARI=>"
    LCDOUT $FE,$C0,DEC3 SAYI1,".", DEC3 SAYI2,".",DEC3 SAYI3,".",DEC3 SAYI4
    PAUSE 100
    IF PORTB.7=1 THEN GOTO ANA
    SAYI4=SAYI4+1
    IF SAYI4>=1000 THEN   
    SAYI4=0
    SAYI3=SAYI3+1 
    IF SAYI3>=1000 THEN
    SAYI3=0  
    SAYI2=SAYI2+1
    IF SAYI2>=1000 THEN
    SAYI2=0
    SAYI1=SAYI1+1
    IF SAYI1>=1000 THEN
    SAYI1=0
    SAYI=SAYI+1
    IF SAYI>=10 THEN
    SAYI=0
    ENDIF
    ENDIF  
    ENDIF     
    ENDIF
    ENDIF
    GOTO ANA
    END

Devrenin Proteus Ares programında görünümü
lcd göstergeli sayıcı devresi proteus ares pcb

Projenin Kaynak simülasyon pcb ve kod;

Paylaş:

Yorum Yap