Şimdi Ara

PİC DERLEYİCİ YARDİM

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
3 Misafir (1 Mobil) - 2 Masaüstü1 Mobil
5 sn
2
Cevap
0
Favori
646
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Arkadaşlar aşşagidaki kodu derleyemiyorum hatam nerde saygilarimla TŞK ŞİMDİDEN

     @ DEVICE pic16f628, WDT_OFF 
    @ DEVICE pic16f628, PWRT_OFF
    @ DEVICE pic16f628, BOD_OFF
    @ DEVICE pic16f628, LVP_OFF
    @ DEVICE pic16F628, PROTECT_OFF
    @ DEVICE pic16f628, MCLR_OFF
    @ DEVICE pic16f628, INTRC_OSC_NOCLKOUT
    Include "modedefs.bas"
    DEFINE OSC 4 '4 Mhz hızında çalışıyoruz.
    SENSOR VAR PORTB.7 'Sensör PORTB.7'ye bağlı
    LED VAR PORTB.6 'LED PORTB.6'ya bağlı
    MESGUL VAR BYTE 'Çeşitli değişken tanımlamaları
    BILGI VAR WORD
    ISARET VAR BYTE
    ONDA1 VAR WORD
    ONDA2 VAR WORD
    ARA VAR WORD
    DEGER VAR BYTE
    'LCD TANIMLAMALARI
    DEFINE LCD_DREG PORTB 'LCD Veri pinleri PORTB'ye bağlı.
    DEFINE LCD_DBIT 0 'LCD'nin D0 pini PORTB.0'a bağlı
    DEFINE LCD_RSREG PORTB 'RS PİNİ PORTB'ye bağlı
    DEFINE LCD_RSBIT 4 'RS PİNİ = PORTB.4
    DEFINE LCD_EREG PORTB 'ENABLE PİNİ PORTB'ye bağlı
    DEFINE LCD_EBIT 5 'ENABLE PİNİ = PORTB.5
    DEFINE LCD_RWREG PORTA 'RW PİNİ KULLANILMIYOR - Kullanılmayan bir pin tanımlandı.
    DEFINE LCD_RWBIT 1 'RW PİNİ KULLANILMIYOR - Kullanılmayan bir pin tanımlandı.
    DEFINE LCD_BITS 4 'LCD 4 BİT SÜRÜLÜYOR
    DEFINE LCD_LINES 2 'LCD 2 SATIRLIK
    'LCD TANIMLAMALARI BİTİŞ
    TRISA=%11111111 'PORT giriş-çıkış tanımalamları
    TRISB=%10111111
    PAUSE 500 'Ekranın hazır olması için biraz bekliyoruz.
    LCDOUT $FE,$40,6,9,9,6,0,0,0,0 'Derece gösterimi için özel karakteri LCD'ye yüklüyoruz.
    LCDOUT $FE,$48,4,0,14,4,4,4,14,0 'İ karakterini LCD'ye yüklüyoruz.
    LCDOUT $FE,$50,0,0,4,4,4,4,4,0 'ı karakterini LCD'ye yüklüyoruz.
    LCDOUT $FE,1,1,"ALPEREN" 'İlk satıra İzoelektronik yaz.
    LCDOUT $FE,$C0,"132100000" 'İkinci satıra yaz.
    PAUSE 3000 'Biraz bekle
    LCDOUT $FE,1,"S",2,"cakl",2,"k:" 'Ekranı temizleyip, üst satıra Sıcaklık: yaz.
    BASLA: 'Dongüye gir.
    ISARET="+"
    OWOUT SENSOR,1,[$CC,$44] 'Sensöre sıcaklığı okumasını söyle.
    BEKLE: 'Sensör hazır olana kadar bekle.
    OWIN SENSOR,4,[MESGUL]
    IF MESGUL=0 THEN
    GOTO BEKLE
    ENDIF
    DEVAM:
    OWOUT SENSOR,1,[$CC,$BE] 'Sensöre okuduğu değeri göndermesini söyle.
    OWIN SENSOR,0,[BILGI.LOWBYTE,BILGI.HIGHBYTE] 'Gelen 16 bitlik bilgiyi al.
    'Programın devamındaki algoritma daha etkili bir şekilde yazılabilir. Bu uygulamada performans çok da etkili olmadığından aklıma gelen ilk algoritmayı kullandım.
    'Kodun mantığını anlamanız açısından kod üzerine düşünmeniz daha faydalı olacaktır. Bu yüzden kodların yanına açıklama yazmıyorum.
    'Fakat anlamadığınız bir nokta olursa lütfen
    'http://www.izoelektronik.com/lcd-ekranli-basit-termometre-devresi.htm adresindeki yazının altına yorum yazarak sorularınızı iletiniz.
    IF BILGI.BIT13=1 THEN 'Sıcaklık negatif ise
    ISARET="-" 'İşaret artık + değil -
    BILGI=~BILGI 'Gelen bilgideki bitleri tersle, 1->0, 0->1
    BILGI=BILGI+1 'Bilgiyi 1 arttır.
    ENDIF
    ARA=BILGI*625 '12 bit hassasiyet kullandığımız için her değer 0.0625 santigrat dereceye denk geliyor.
    DEGER=DIV32 10000
    ARA=BILGI*625
    ONDA1= DIV32 1000
    ARA=BILGI*625
    ONDA2= DIV32 100
    ONDA1=ONDA1-(DEGER*10)
    ONDA2=ONDA2-((dEGER*100)+(ONDA1*10))
    LCDOUT $FE,$C0," " 'LCD ekranın alt satırını temizle
    LCDOUT $FE,$C0,ISARET,#DEGER,".",#ONDA1,#ONDA2," ",0,"C"
    HIGH LED 'LEDi yakıp söndürerek döngünün bittiğini belirt.
    PAUSE 200
    LOW LED
    PAUSE 800
    GOTO BASLA 'BASLA etiketine dön
    END



    MİCROCODE STUDİO PİCBASİC PRO KULLANİYORUM ALDİGİM HATALAR ŞUNLAR :

     PİC DERLEYİCİ YARDİM







  • @ DEVICE pic16f628, WDT_OFF' bu satırı sola yanaştır diğerleri ile aynı hizada olacak
    @ DEVICE pic16f628, PWRT_OFF
    @ DEVICE pic16f628, BOD_OFF
    @ DEVICE pic16f628, LVP_OFF
    @ DEVICE pic16F628, PROTECT_OFF
    @ DEVICE pic16f628, MCLR_OFF
    @ DEVICE pic16f628, INTRC_OSC_NOCLKOUT
    --------------------------------------------------------
    Ben derledim ve hex e-malini PM at yollayayım istersen



    < Bu mesaj bu kişi tarafından değiştirildi egealtay -- 14 Ekim 2014; 10:46:26 >
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.