1000 kişiden bir kişi için ! devam.... 320volt blog

Elektronik Devreler Projeler » Microchip PIC devreleri bilgiler, Yazar Projeleri Makaleler Elektronik Genel »

PIC16F84 ile 0-9999 İleri Geri Sayıcı

pic16f84 ileri geri sayıcı

Bu devrede 16F84A mikroişlemcisi ve 7 parçalı göstergeler kullanılarak 0-9999 sayıcı devresi oluşturulmuştur. Artı (+) butonu sayıcı değerinin artmasını eksi (-) butonu ise azalmasını sağlar. RESET butonu ise sayıcıdaki değeri sıfırlar.

0-9999 sayıcı devre şeması

Şekil 1: PIC16F84A ile 0-9999 sayıcı devresi

PIC16F84A ile 0-9999 sayıcı devresinde kullanılan malzemeler;

  • 1 Adet PIC16F84A mikroişlemci
  • 4 Adet 7 parçalı gösterge (ortak katot)
  • 4 Adet 4511 entegresi
  • 28 Adet 330Ω direnç
  • 2 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ı: 0-9999 SAYICI DEVRESİ                            			             *
'*  Yazar    : HASAN ÜZÜLMEZ                                    			             *
'*  Not      : PIC16F84 İLE 0-9999 İLERİ-GERİ SAYICI            		             *
'*                                                              					             *
'*  TARİH    : 10.09.2008                                       				             *
'****************************************************************
TRISA=1                   		'PORTA'NIN TAMAMI GİRİŞ
TRISB=0                   		'PORTB'NIN TAMAMI ÇIKIŞ

SAYI VAR WORD
BIRLER VAR  WORD          	'1.DİJİT
ONLAR  VAR  WORD          	'2.DİJİT
YUZLER VAR  WORD          	'3.DIJIT
BINLER VAR  WORD          	'4.DIJIT
PORTB=0                   		'PORTB'NİN TAMAMINI SIFIRLA
SAYI=0                    		'SAYI İÇERİĞİNİ SIFIRLA
MAIN:
IF PORTA.0=0 THEN ILERISAY
IF PORTA.1=0 THEN GERISAY
GOTO MAIN
ILERISAY:
IF SAYI=9999 THEN SAYI=0
SAYI=SAYI+1
PAUSE 10
BIRLER=SAYI     DIG 0
ONLAR=SAYI      DIG 1
YUZLER=SAYI     DIG 2
BINLER=SAYI     DIG 3
PORTB=240 | BIRLER
LOW PORTB.7
PAUSE 10
HIGH PORTB.7
PAUSE 10
PORTB=240 | ONLAR
LOW PORTB.6
PAUSE 10
HIGH PORTB.6
PAUSE 10
PORTB=240 | YUZLER
LOW PORTB.5
PAUSE 10
HIGH PORTB.5
PAUSE 10
PORTB=240 | BINLER
LOW PORTB.4
PAUSE 10
HIGH PORTB.4
PAUSE 10
GOTO MAIN
GERISAY:
IF SAYI=0 THEN SAYI=9999
SAYI=SAYI-1
PAUSE 10
BIRLER=SAYI     DIG 0
ONLAR=SAYI      DIG 1
YUZLER=SAYI     DIG 2
BINLER=SAYI     DIG 3
PORTB=240 | BIRLER
LOW PORTB.7
PAUSE 10
HIGH PORTB.7
PAUSE 10
PORTB=240 | ONLAR
LOW PORTB.6
PAUSE 10
HIGH PORTB.6
PAUSE 10
PORTB=240 | YUZLER
LOW PORTB.5
PAUSE 10
HIGH PORTB.5
PAUSE 10
PORTB=240 | BINLER
LOW PORTB.4
PAUSE 10
HIGH PORTB.4
PAUSE 10
GOTO MAIN
END

Projenin Kaynak Dosyaları (isis simülasyon,yazılım) pic16f84-0-9999-sayici

Yazar: Konyalı

Yazarımızın 320volt.com Blog üzerinde şu an okuduğunuz yazı dahil 15 yazısı bulunmaktadır. Yazarımız hakkında bilgileri ve diğer yazılarını görmek için bakınız;

Elektronik

 
  1. alis says:

    ilginç bir devre neden 0-9999 9999dan daha fazla olmuyormu bu devreyi yapmayı düşünüyorum maliyeti ortalama ne olur teşekkürler

  2. Konyalı says:

    pic pin sayısına ve kullanımına bağlı olarak 0-9999 pinleri farklı kullanarak çok daha fazla basamaklı sayıcılar yapabilirsiniz

  3. uğur says:

    pic in 12 adet port çıkışı olduu için ancak 4 display çalıştırılabiliyor. 4 displayde de yazılabilecek en büyük sayı değeri 9999 dur
    eğer daha fazla saydırmak istiyorsanız ya daha fazla port çıkışı olan pic sececeksiniz yada devreye ek malzemeler eklemek gerekir böle oluncada hem program değişir hemde dere. bu kunuyla ilgili bilgiler internettte mevcut aynı zamanda bu devrenin daha az maaliyetlileride bulunuyor ;)

  4. uğur says:

    peki arkadaşlar bu devrenin 10 adet clock pulse geldiğinde 1 diye sayması ve her 10 clock pulsede 1 artması için ne gibi bir değişiklik yapmalıyız???

  5. ramon says:

    çok güzel bi çalışma olmuş emğinize sağlık.
    ben ASM ile program yazıyordum baktım bir yere kadar gidebiliyorum ASM ile.
    BASIC i öğrenmeye çalışıyorum şimdi.
    buna benzer bi program daha inceledim daha basitti.
    orada da “DIG” komutu ve
    PORTB=240 l birler
    şeklinde ifadeler vardı.
    tam olarak bu komutlar ne işe yarıyor. Yada BASİC komutlarını detaylı olarak anlatan bir kaynak varsa çok daha güzel olur benim için.

  6. ugurcvk says:

    kodları MicroCode Studio Plusina yazıyorum ama çalışmadı hata veriyor nedendir..?

  7. knight says:

    bu devrenin asm kodları var mı acaba sizde?

  8. tufan alper says:

    öncelikle teşekkür ederim ama ben bunun baskı devresini arıyorum elinizde mevcut ise gönderebilir misiniz?

  9. kemal says:

    bana bu devrenin 16f877 ile yapılıp mikro C ile hazırlanmış hali lazım elinizde çalışan yazılım varsa verirmisiniz? malum bu dersi geçmem lazım projem.

Yorum yapın

Doğrulama: (kutuyu işaretleyiniz)

  • Lütfen Türkçe imla kurallarına dikkat etmeye özen gösteriniz.
  • Yorumunuz yönetici tarafından kontrol edilmeden yayımlanmaz.
  • Paylaşılan devrelerin malzeme listesini istemeyiniz. Olsa zaten paylaşılırdı şema üzerinden listeyi çıkartabilirsiniz
  • Gavatar sitesine avatarınızı yükleyebilirsiniz.