Şimdi Ara

PIC programlama(ödev)

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
1 Misafir - 1 Masaüstü
5 sn
13
Cevap
0
Favori
704
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • merhaba arkadaşlar.

    arkadaşlar.hoca bi soru verdi cumaya kadar.

    soru: Port A'ya bağlı butonların basılı olup olmadığını,Port B'deki ledlerle gösteren programı yazınız...
    (hoca komutların 2-3 satır olabilecegini söyledi.)



  • Normalde kendin yapman gerekiyor.Ben sana bunu tek satırda yazarım C ile sen hangi dil istiyordun.
  • komutlar ingilizce. yönler istedigin gibi oluyor.
  • LIST P=16F84
    STATUS EQU VBVBVBV SEN AYARLARSIN PORTLARI


    YAPMAN GEREKEN SADECE

    BTFSS PORTA,1
    1 DEĞİLSE BURA
    1 SE BURA AKTİF OLUCAK

    SENDE 1 SE OLAN YERE PORTB DEKİ 1.LEDİ YAKICAN

    BÖYLECE PORT ANIN1.SİNE KARŞILIK PORTBNİN1. LEDİ YANICAK


    BTFSS PORTA,0 (0. Bit)
    GOTO PORTA,1 DİCEN TABİKKİİ DİĞER AŞAMA OLUCAK
    BSF PORTB,0 (BURADADA LEDİ YAKICAN)

    PORTB , 0 i 1 yaptık lojik 1 +5v dur elektrik gelir




    ACELE İLE YAZDIM KUSURA BAKMAYI.....
  • O zaman bende C ile vereyim.C dilinin güzelliğini de görün

    PORTB=PORTA;

    Direk A portunda ne varsa B ye aktarır.Tabi ilk kısımdaki giriş çıkış ayarlarını yaptıktan sonra
  • quote:

    Orijinalden alıntı: mcbulbul42

    LIST P=16F84
    STATUS EQU VBVBVBV SEN AYARLARSIN PORTLARI


    YAPMAN GEREKEN SADECE

    BTFSS PORTA,1
    1 DEĞİLSE BURA
    1 SE BURA AKTİF OLUCAK

    SENDE 1 SE OLAN YERE PORTB DEKİ 1.LEDİ YAKICAN

    BÖYLECE PORT ANIN1.SİNE KARŞILIK PORTBNİN1. LEDİ YANICAK


    BTFSS PORTA,0 (0. Bit)
    GOTO PORTA,1 DİCEN TABİKKİİ DİĞER AŞAMA OLUCAK
    BSF PORTB,0 (BURADADA LEDİ YAKICAN)

    PORTB , 0 i 1 yaptık lojik 1 +5v dur elektrik gelir




    ACELE İLE YAZDIM KUSURA BAKMAYI.....

    saol ben bunu yarın okulda deneyeyim.arklara gösterem bakalım
  • sizinkilerde doğru teşekkürler ama;

    biz okulda bu şekilde yapıyoruz:

    TRISA:11111 (vs)
    TRISB:0 (vs)

    PORTA=0
    PORTB=1

    SAG:

    IF BUTON 1 GOTO SAG

    vs vs bu şekilde uzuyor en sonundada END koyuyoruz.
  • PICBASİCPRO kullanıyorsunuz herhalde.Ama C dili ile ne kadar kolay olduğunu görüp C öğrenmenizi öneriririm
  • quote:

    Orijinalden alıntı: ayhan_eee

    PICBASİCPRO kullanıyorsunuz herhalde.Ama C dili ile ne kadar kolay olduğunu görüp C öğrenmenizi öneriririm

    aynen picbasicpro kullanıyoruz.ama portc lere geçmedik. ama a-b-d yi kullandık.
  • Kusura bakma ama iyi güldüm.Herhalde daha yeni başladın olabilir bunlar.C dedeiğim pord C değil C programlama değil.Biraz araştırırsan önemini anlarsın
  • bro biz bu işlere acemiyiz.daha geçeli 2 ay bile olmadı.belki daha da çok gülecekler

    sen bildigin ne varsa dök buraya belki bişiler cıkarırız
    (picbasicpro)ile yapılabilen



    < Bu mesaj bu kişi tarafından değiştirildi JrSro -- 11 Aralık 2012; 22:58:11 >
  • Ben picbasicro kullanmıyroum sadece C ile kod yazıyorum.Dediğin gbi yeni başladıysanız sorun yok yeterki öğrenmeye niyetli ama hazırcı olma
  • PORTA'nın tüm bacakları pull-up dirençle bağlarsanırsa PICBASIC kodu bu şekilde yeterli olacaktır.

    ---------------------------------
    DEFINE OSC 20
    TRISA = %11111111
    TRISB = %00000000

    dongu:
    PORTA = PORTB
    goto dongu

    ---------------------------------

    Aynı işi IF dongusu ya da SELECT CASE ile de yapabilirsin ancak gereksiz yere kod yazmış olursun. Bu da daha sonra PIC'in hafızasının yetmemesine neden olabilir. Bu kadarcık kod tabii ki PIC'in hafızasını doldurmaz ama ileride yazacağın programların daha uzun olacağını düşünerek söylüyorum. Önemli olan optimize edilmiş bir kod yazmaktır.



    < Bu mesaj bu kişi tarafından değiştirildi aeronics -- 12 Aralık 2012; 8:23:33 >
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.