Şimdi Ara

şu programı lütfen inceleyin

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
4
Cevap
0
Favori
516
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Ya arkadaşlar kafayı yedim şu programı lütfen bir inceleyin, sadece M harfini kaydırmak istiyorum, ama bir türlü beceremedim. Proteus Isısta devreyi oluşturdum, harfleri tek tek görebiliyorum, 16f628A pic kullanıyorum çünkü 16f628 yok programda. bir türlü kaydıramadım. Bu arada bu program mehmet isimli bir arkadaştan alıntıdır, değişkenlerdeki 0 lar led'in yandığını 1 ler ise söndüğünü ifade ediyor, arkadaşın yaptığın programda tam tersiydi neden böyle oldu anlamadım. sanırım 16f628 değil de 16f628A pic i kullandığım için diye düşündüm.

    P1 VAR BYTE
    i VAR BYTE
    i1 VAR BYTE

    d0 VAR BYTE
    d1 VAR BYTE
    d2 VAR BYTE
    d3 VAR BYTE
    d4 VAR BYTE
    d5 VAR BYTE


    TRISA=%00000000
    TRISB=%00000000

    P1=5
    i=0
    i1=1000


    d0=%11111111
    d1=%10000000
    d2=%11111101
    d3=%11111011
    d4=%11111101
    d5=%10000000



    BASLA:
    i=i+1
    IF i=i1 Then GoTo KAY
    PORTA=%00000001
    PORTB=d1
    Pause P1

    PORTA=%00000010
    PORTB=d2
    Pause P1

    PORTA=%00000100
    PORTB=d3
    Pause P1

    PORTA=%00001000
    PORTB=d4
    Pause P1

    PORTA=%00010000
    PORTB=d5
    Pause P1

    GoTo BASLA
    KAY:
    d0=d1
    d1=d2
    d2=d3
    d3=d4
    d4=d5
    d5=d0
    i=0
    GoTo basla
    End

    kafama takılan bir yer var, eğer bu da basic gibi basamak basamak işliyorsa yukarıdan aşağı doğru, d0=d1 olan yerde biz d0'ın içeriğini direk d1'den alıp d5'e atıyoruz, burdaki boşluk sütunu komple aradan kaybolmuş oluyor, bunun için orayı şu şekilde değiştirdim yine olmadı

    KAY:
    k=d0
    d0=d1
    d1=d2
    d2=d3
    d3=d4
    d4=d5
    d5=k
    i=0
    GoTo basla
    End

    Bu şekilde d0'ın içindeki boşluk sütunu kaybolmamış oldu ve devamlılığı sağladım ama yine olmuyor ya ...







  • Arkadaşım devre şemasını verirsen sana daha kolay yardımcı olurum. Ayrıca program çok karışık yazılmış devreyi gönderirsen senin için daha basitleştirebilirim.

    NOT: 16F628 ile 16F628A Arasında kayda değer bir fark yoktur. Birinin yerine diğerini gönül rahatlığıyla kullanabilirsin.



    < Bu mesaj bu kişi tarafından değiştirildi tsz -- 1 Şubat 2008; 18:06:08 >
  • programda bariz bi yanlıs goremedim.. ancak KAY kısmında yaptıgınız değişiklik dogru yani yaptıgınız sekilde olmalı deger kaybı olmaması için.. bir de harfleri tek tek gorebiliorum derken neyi kastettiniz anlayamadım.. bir de ledlerin artı eksi uclarına dikkat edin belki donanımsal bi sorun olabilir... kolay gelsin
  • Bu M harfini kaydırma işini maalesef 16f628 de ve 16f84 yapamadım. Bu piclerin RA4 ayaklarında hep sıkıntı yaşadım. Uygulamayı bu picler yerine RA4 e muhtaç kalmadan çalışılabilecek 16f877 ile yaptım. Ama ben illada 16f628 le yapcam dersen başka çözüm yolu buluruz.

    16f877 için kodlar (7x5 Dotmatriks)

    TRISC = 0
    TRISB = 0

    Harf var byte[10]
    harf[0] = %0000000
    harf[1] = %1011111
    harf[2] = %1101111
    harf[3] = %1011111
    harf[4] = %0000000
    harf[5] = 127
    harf[6] = 127
    harf[7] = 127
    harf[8] = 127
    harf[9] = 127


    Sira var byte[5]
    Sira[0] = 1
    Sira[1] = 2
    Sira[2] = 4
    Sira[3] = 8
    Sira[4] = 16

    i var byte[3]
    x var byte

    Basla:
    for i[0]=0 to 9
    for i[1] = 0 to 50
    for i[2] = 0 to 4
    x = (i[0]+i[2]) //10
    portc = sira[i[2]]
    portb = harf[x]
    pause 2
    next
    next
    next
    goto basla

    İşte buda devremiz.
     şu programı lütfen inceleyin

    Devreyi proteusta çizdim onun için osilatör,mclr ve güç bağlantılarını yapmadım ona göre

    Aşağıdaki linkte devrenin proteus çizimi, PBP,ASM ve HEX kodları ile devre şeması var.
    http://rapid_share.com/files/88412680/M-7x5_Dotmatriks.rar.html

    NOT: linkteki _ yi kaldır.




  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.