1. * 5651 Sayılı Kanun'a göre TÜM ÜYELERİMİZ yaptıkları paylaşımlardan sorumludur.
    * Telif hakkına konu olan eserlerin yasal olmayan şekilde paylaşıldığını ve yasal haklarının çiğnendiğini düşünen hak sahiplerinin İLETİŞİM bölümünden bize ulaşmaları durumunda ilgili şikayet incelenip gereği 1 (bir) hafta içinde gereği yapılacaktır.
    E-posta adresimiz
Notu Gizle
Yaklaşık 6 ay içinde forumda köklü değişimlerin olacağı bir sürümle karşınızda olacağız. Sistemi test etmek için aşağıdaki adresi kullanabilirsiniz.

http://www.degisim-sanat.com/_xf2/
Notu Gizle
Merhaba Ziyaretçi.

"KIRMIZI" konulu resimler için anketimiz açıldı. İlgili konuya BURADAN ulaşabilirsiniz.

Sizi de ankete katılmaya davet ediyoruz...

PIC 16f877A ile ADC Örneği

Konusu 'C Dili İle Başlangıç' forumundadır ve merakettim tarafından 20 Temmuz 2009 başlatılmıştır.

  1. merakettim
    Ecinni

    merakettim Öpözel Üye :*

    Katılım:
    19 Temmuz 2006
    Mesajlar:
    1.931
    Beğenileri:
    323
    Ödül Puanları:
    2.230
    Meslek:
    Ne iş olursa yaparım abi
    Yer:
    leşim ANKARA:)
    Banka:
    1.432 ÇTL
    [​IMG]

    main.c
    PHP:
    #include <pic.h>
    #include "cerezforumlcd.h"
    #define bsf(var,bitno) ((var)|=1<<(bitno))
    #define bcf(var,bitno) ((var) &= ~(1<<(bitno)))
    void main(void)
    {
    int tut,bak;
    char yazi[20];
    TRISA=0xff;
    TRISC=TRISB=00;
    PORTC=PORTA=PORTB=0;

    ADCON1=0xff;
    bsf (PIE1,ADIE);
    ADCON0=0b11000001;
    bcf(PIR1,ADIF);
    bsf(INTCON,PEIE);
    ADCS1=3;


    cerezforumlcdReset(); 
    cerezforumlcdTemizle(); 
    cerezforumlcdIkiSatirAktif(); 
    cerezforumlcdDisplayOn(); 
    cerezforumlcdCursor1ArtanModda(); 
    for(;;)
    {
    bsf(INTCON,GIE);
    bsf(ADCON0,2);

    if(
    tut!=((ADRESH*256)+ADRESL)){
    tut=(ADRESH*256)+ADRESL;
    sprintf(yazi,"t=%d H=%d L=%d",tut,ADRESH,ADRESL);
    cerezforumlcdTemizle(); 
    cerezforumlcdPrintf(yazi); 
    }
    }
    }


    cerezforumlcd.h
    PHP:
    #include <stdio.h> 
    #include <string.h> 
    void bekle (int ns){ 
    unsigned int say
    for(
    say=0;say<ns;say++){ 
    #asm 
    NOP 
    #endasm 


    cerezforumlcdTemizle(void){ 
    bekle(0xb0); 
    PORTB=0x01
    RC2=0
    RC1=0
    RC0=1
    #asm 
    NOP 
    #endasm 
    RC0=0

    cerezforumlcdReset(void

    unsigned char cx
    for(
    cx=0;cx<3;cx++) 

    bekle(0xb0); 
    RC2=0
    RC1=0
    PORTB=0x30
    RC0=1
    #asm 
    NOP 
    #endasm 
    RC0=0


    cerezforumlcdIkiSatirAktif(void

    bekle(0xb0); 
    PORTB=0x38
    RC2=0
    RC1=0
    RC0=1
    #asm 
    NOP 
    #endasm 
    RC0=0

    void cerezforumlcdDisplayOn(void

    bekle(0xb0); 
    PORTB=0x0e
    RC2=0
    RC1=0
    RC0=1
    #asm 
    NOP 
    #endasm 
    RC0=0

    void cerezforumlcdCursor1ArtanModda(void

    bekle(0xb0); 
    PORTB=0b00000000
    RC2=0
    RC1=0
    RC0=1
    #asm 
    NOP 
    #endasm 
    RC0=0

    void cerezforumlcdPrintf(const char *yazi

    unsigned int say,len
    len=strlen(yazi); 
    for(
    say=0;say<len;say++) 

    bekle(0xb0); 
    RC2=1
    RC1=0
    PORTB=yazi[say];     
    RC0=1
    #asm 
    NOP 
    #endasm 
    RC0=0

    }  

     
Benzer Konular
  1. iLk_NuR
    Mesaj:
    1
    Görüntüleme:
    418
  2. KıRMıZı
    Mesaj:
    0
    Görüntüleme:
    2.731
  3. Suskun
    Mesaj:
    0
    Görüntüleme:
    6.040
  4. ZeyNoO
    Mesaj:
    0
    Görüntüleme:
    992
  5. ZeyNoO
    Mesaj:
    2
    Görüntüleme:
    890
Yüklüyor...

Sayfayı Paylaş