Şimdi Ara

Microcode Studio Yardim

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
2
Cevap
0
Favori
713
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Merhaba arkadaşlar ben devreye buton eklemek istiyorum...İki adet veya programa buton eklemek istiyorum..pic16f628a nin boş olan portlarina giriş yapmak istiyorum deger yukselten ve alçaltan alçaltan butonlarla sicaklik ayarlayacagim ayarladigim sicakligi ölçen sensör o sicaklikta ise başka bir porttaki fan çalişcak değilse çalişmiycak yardimlarinizi esirgemezseniz sevinirim SAYGİLARİMLA

      
    @ 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,"didem" 'İlk satıra İzoelektronik yaz.
    LCDOUT $FE,$C0,"kaya" 'İ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.
    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
    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


     Microcode Studio Yardim

     Microcode Studio Yardim

     Microcode Studio Yardim Microcode Studio Yardim







  • İstediğini yoladım e-mailine,

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