folder Tahribat.com Forumları
linefolder Programlama Genel
linefolder Hi-Tect C Programlama Dili



Hi-Tect C Programlama Dili

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Hakan363
    Hakan363's avatar
    Kayıt Tarihi: 09/Aralık/2009
    Erkek

    Aşağıdaki kodda anlamadıgım yerler var bu yerleri kodun altında belirttim bilgisi olan arkadaslar yardım edebilirse sevinirim...

    #include <pic.h> 
    #define Drive RE0 
    #define LEDs PORTD 
    #define Tlacitko RB4 //PUsh Button. 
    unsigned char Maximum; 
    void main() 

    TRISD=0; 
    TRISE0=0; 
    ADCON1=0b01001110; 
    LEDs=0; 
    ADCON0=0b10000001; 
    T1CON=0x11; 
    Maximum=0; 
    while(1) 

    ADGO=1; 
    while(ADGO); 
    if(ADRESH>Maximum) Maximum=ADRESH; 

    if(TMR1IF) 

    //LEDs=Maximum; 
    LEDs=0; 
    if(Maximum > 133) LEDs=1; 
    if(Maximum > 148) LEDs=3; 
    if(Maximum > 163) LEDs=7; 
    if(Maximum > 178) LEDs=15; 
    if(Maximum > 193) LEDs=31; 
    if(Maximum > 208) LEDs=63; 
    if(Maximum > 223) LEDs=127; 
    if(Maximum > 238) LEDs=255;
    Maximum=0; 
    Drive=1; 
    asm("NOP"); 
    TMR1IF=0; 
    Drive=0; 
    }}} 
    bu kodda ADCON0 ve ADCON1 mesela nelere bağlı bir türlü anlamadım ANO-AN7 ile ilgili bişeyler sanırımda gerekli acıklama yok...

    birde T1CON = 0x11; demiş burda ne yapmışız timer1 in kontolu falan sağlanıyorda sağda girdiğimiz bu sayı ne anlama geliyor orda şahibede kaldım 0x11 binary karsılıgı 0001 0001 mi oluyor yani 17 

    ////////////////////////////////////////////////////////7

    voidsetpwm(unsigned int value){

    unsigned char temp;

    temp =  value;

    temp>>=2;

    CCP2CON= temp&0x30|0x0F;

    CCPR2L = value >>8;

    }

    bir de bu fonksiyonun 3,4,5 nolu satırlarının acıklamasını yapabilcek olan var mı...


    www.dunyadailkler.com
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Hakan363
    Hakan363's avatar
    Kayıt Tarihi: 09/Aralık/2009
    Erkek

    up^

     

    voidsetpwm(unsigned int value){

    unsigned char temp;

    temp =  value;

    temp>>=2;

    CCP2CON= temp&0x30|0x0F;

    CCPR2L = value >>8;

    }

    bir de bu fonksiyonun 3,4,5 nolu satırlarının acıklamasını yapabilcek olan var mı...


    www.dunyadailkler.com
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    NoNam3
    NoNam3's avatar
    Kayıt Tarihi: 10/Aralık/2009
    Erkek

    Nelere bağlı derken ? =/ ADCON0 ve ADCON1 farklı byte'lara assign edilmiş; ADCON1'deki değer pin'leri dijitale atamayla ilgili...

    ( deep note: tamamen salladım )

    Direkt buraya sorsana -> for mor informeyşın > http://forum.htsoft.com/all/printthread.php/Cat/0/Board/pic/main/182462/type/thread



    #i#m#z#a#m# #i#s#m#i#m#d#i#r#
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Hakan363
    Hakan363's avatar
    Kayıt Tarihi: 09/Aralık/2009
    Erkek

    ADCON1= hangi pinlerin analog veya  dijital olacagına falan karar veriyor. 

    ADCON0 = kanal seçmek için falan kullanılıyor

    bunları hallettimde bu modulasyon yani PWM fonksiyonunda hala sorun var 

    CCP ( Compare , CApture..)  burda sorun var ama bilgisi oaln pek yok sanırım ....


    www.dunyadailkler.com
  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Hakan363
    Hakan363's avatar
    Kayıt Tarihi: 09/Aralık/2009
    Erkek

    up^

     


    www.dunyadailkler.com
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    tagext
    tagext's avatar
    Üstün Hizmet Madalyası Başarı Madalyası
    Kayıt Tarihi: 25/Temmuz/2002
    Erkek

    3 4 5 de shift yapmış oteleme işlemi muhtemelen bunun sonucunu biyere bit olarak veriyodur. oteleme işlemini yapmasının sebebi işlem sonunda cıkan veriyi uygulamanın anlayacağı formata sokmak. orneğin sen a+b=c fonskiyonunu yazdım 2 v3 değeri için 5 sonucunu ürettin ama bu 5 sonucu ascii sen bunu binary yazman lazım bunun için shift yaparsın. bu da onun gibi bişe


    ftw
Toplam Hit: 1090 Toplam Mesaj: 6