Şimdi Ara

PİC C

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
11
Cevap
0
Favori
2.580
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • arkadaşlar pic c öğreniyorum.16F877 kullanmam gerek.A/D ve PWM modunu nasıl ayarlayacağımı bilmiyorum.CCS C compiler'ın içindeki yardım menüsünden baktım ama çok karışık anlamadım.bu konuda yardım ederseniz çok sevinirim.



  • yaww kaç gündür bu başlığa bakıyom arkadaşlar kimse PIC c mi bilmiyo yoksa ilgilenmiyomu???
  • Arkadaşlar merhaba ,

    aşağıdaki linke IAR embedded workbench Pic C yazılımının Pic C programming guide'ni yükledim umarım işinizi görür. Pİc C ile ilgilenenler iş başına .....

    http://rapidshare.de/files/18403284/ICCPIC.PDF.html

    cevdet
    izmir
  • çok sağol hocam.iyi oldu
  • yaww 88 görüntülenme var ,1 cevap var beyler PIC C de hayat var bende ağır vede yawaş bi şekilde öğreniyom ama C ile yapmak assembly ile yapmaktan hemen hemen her yönden çok daha iyi.

    CSS C ile alakalı bi döküman

    http://www.hemen paylas.com/download/530732/PICmcu_C.pdf.html

    paylas



    < Bu mesaj bu kişi tarafından değiştirildi sberkil -- 21 Nisan 2006; 18:27:06 >
  • çok saolun arkadaşlar paylaşımlar için.
  • kaynak için teşekkürler
  • Yapay Zeka’dan İlgili Konular
    C programlama
    5 yıl önce açıldı
    CCS PIC C Compiler PCWHD indirme ?
    13 yıl önce açıldı
    DVB-C ve DVB-C/T tuner
    4 yıl önce açıldı
    Daha Fazla Göster
  • Bu konu , daha fazlası ve PİC C ile ilgili türkçe dökümanlar için :
    www.bilgeyazilim.net
  • Example 14-5: PWM Initialization
    CLRF CCP1CON ; CCP Module is off
    CLRF TMR2 ; Clear Timer2
    MOVLW 0x7F ;
    MOVWF PR2 ;
    MOVLW 0x1F ;
    MOVWF CCPR1L ; Duty Cycle is 25% of PWM Period
    CLRF INTCON ; Disable interrupts and clear T0IF
    BSF STATUS, RP0 ; Bank1
    BCF TRISC, PWM1 ; Make pin output
    CLRF PIE1 ; Disable peripheral interrupts
    BCF STATUS, RP0 ; Bank0
    CLRF PIR1 ; Clear peripheral interrupts Flags
    MOVLW 0x2C ; PWM mode, 2 LSbs of Duty cycle = 10
    MOVWF CCP1CON ;
    BSF T2CON, TMR2ON ; Timer2 starts to increment
    ;
    ; The CCP1 interrupt is disabled,
    ; do polling on the TMR2 Interrupt flag bit
    ;
    PWM_Period_Match
    BTFSS PIR1, TMR2IF
    GOTO PWM_Period_Match
    ;
    ; Update this PWM period and the following PWM Duty cycle
    ;
    BCF PIR1, TMR2IF

    Example 23-5: A/D Initialization
    BSF STATUS, RP0 ; Select Bank1
    CLRF ADCON1 ; Configure A/D inputs
    BSF PIE1, ADIE ; Enable A/D interrupts
    BCF STATUS, RP0 ; Select Bank0
    MOVLW 0xC1 ; RC Clock, A/D is on, Channel 0 is selected
    MOVWF ADCON0 ;
    BCF PIR1, ADIF ; Clear A/D interrupt flag bit
    BSF INTCON, PEIE ; Enable peripheral interrupts
    BSF INTCON, GIE ; Enable all interrupts
    ;
    ; Ensure that the required sampling time for the selected input
    ; channel has elapsed. Then the conversion may be started.
    ;
    BSF ADCON0, GO ; Start A/D Conversion
    : ; The ADIF bit will be set and the GO/DONE
    : ; bit is cleared upon completion of the
    : ; A/D Conversion.

    C biliyorsan ve PIC C ye de girdiğine göre assembly de herhangi bir takıntın olmasa gerek dolayısı ile PIC için yazılmış herhangi bir assembly kodunuda C diline çevirebilirisin. yukarıdaki A/D ve PWM kodları microchip sitesinden alınmış uygulama notlarındaki örneklerdir benzer kodları, uygulamasını yaptığın PICin datasheetinde de bulabilirsin. aynı şekilde PICin sahip olduğu modüllerin nasıl kullanıldığıda datasheetlerinde adım adım anlatılmakta.
    kolay gelsin...




  • Öncelikle bu konuyu geç görmüşüm kusura bakmayınız. Aslında başlık dosyasında aradığınız cevaplar var. (PIC16F877.h) A/D için tanımlamaların hemen hiç birini ben de çalıştıramadım. (AN0 okuma ucu ve dahili 0-5V referans kodu hariç yani SETUP_ADC_PORTS(AN0); )

    PWM için kullanılacaklar:
    """""""""""""""""""""""""""""""
    setup_ccp1(CCP_PWM); //Ana programın başında bir kez ayarlamak yeterlidir.
    setup_ccp2(CCP_PWM);
    SETUP_TIMER_2(T2_DIV_BY_16, 255, 1); //Kaç ile böl, periyot, kaç kerede bir kesmeye gir. Timer 2 programlanmazsa PWM üretilmez!!!

    set_pwm1_duty(duty); //CCP1'den PWM üret
    set_pwm2_duty(duty); //duty, 8bit integer tipi değişkendir
    ---------------------------------------------------------

    A/D için kullanılacaklar:
    """""""""""""""""""""""""""""""
    SETUP_ADC(ADC_CLOCK_INTERNAL); //adc çevrim saatini ayarlar
    SETUP_ADC_PORTS(AN0); //hangi bitlerin kullanılacağını ayarlar. Referans, analog ve dijital olması durumu
    //SET_ADC_CHANNEL(0); //birçok kanal varsa hangisi okunacaksa önce buradan ayarlamak lazım

    sicaklik=read_adc(ADC_START_AND_READ); //sıcaklık 0-255(8 bit için) arası değer olarak okunur.

    //ADC'yi 10bit yapmak için başlık dosyasında üstteki "#device PIC16F877" ifadesinin yanına "ADC=10" ifadesini ekleyiniz. Bunu bayağı bir aramıştım sonunda geç de olsa help içinde rastladığım bir koddan anlamıştım.



    < Bu mesaj bu kişi tarafından değiştirildi TA2LSM -- 9 Ağustos 2006; 22:52:14 >




  • arkadaşlar geçte olsa teşekkürler . , aylar önce yazdığım cevapları görünce bi garip oldum , bunları ben mi yazmışım .


    CSS C ile alakalı aklınıza gelebilecek hemen her şey , ve fazlası helplerde mevcut . derin ing gerek yok . karıştırıken bişeyler kaparsınız tabi sizde benim gibi bişeyleri gözden kaçırmayın



    < Bu mesaj bu kişi tarafından değiştirildi sberkil -- 9 Ağustos 2006; 1:21:59 >
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.