Picproje Elektronik Sitesi

DERLEYİCİLER => Microchip XC Serisi => Microchip XC8 => Konuyu başlatan: OxfordBlue - 04 Ağustos 2015, 10:51:58

Başlık: Timer1 ve Timer0 birlikte kullanımı
Gönderen: OxfordBlue - 04 Ağustos 2015, 10:51:58
Merhabalar
İşlemci : 18f4620

#include <pic18f4620.h>
#include <pic18.h>
#include <xc.h>
#include <stdio.h>
#include <stdlib.h>
#include "18F_Config_40_v10.h"
void main(void)
{
    DelayMs(100);
    TRISA = 0b00011111;
    TRISB = 0b00000000;
    TRISC = 0b10110000;
    TRISD = 0b00000000;
    TRISE = 0b00000000;

    LATA=0b00000000;
    LATB=0b00010001;
    LATC=0b00000000;
    LATD=0b00000000;
    LATE=0b00000000;

    ADCON1= 0x0C;   //AN0,AN1 ANALOG
    CMCON = 0x07;   //deactivate comparator module

    SPBRG=64;
    TXSTA=0b00100010;
    RCSTA=0b10010000;
    RCIF=0;
    RCIE=0;

    PIE1=0b00000001;    //Only Enables timer1 overflow interrupt
    PIR1bits.TMR1IF=0;  // TMR1 register did not overflow
    INTCON=0b11000000;  // Enables all unmasked interrupts
    T1CON=0b00000000;
    TMR1ON=1;  //TIMER1 ACTIVATE
    TMR1 = 63536;
    WDTCON;

    while(1)
    {
        CLRWDT();
        __delay_us(1);
        __delay_us(1);
        __delay_us(1);
        __delay_us(1);
    }

}
void interrupt isr(void)
{
  if (PIR1bits.TMR1IF && PIE1bits.TMR1IE)
  {
    PIR1bits.TMR1IF = 0;
    TMR1 = 63538;
    FrequenceRead();
   //Bolca fonksiyon işlemler v.s..
  }
}


Kodların temel kısımlarını yayınladım. timer1 sürekli program loop süresi olarak kullanıyorum.
timer1 öncelikli kesme olma üzere, timer0'ı da timer1 süresinden bağımsız sayıcı olarak kullanmak istiyorum.
taslak olarak gösterebilirmisiniz
Başlık: Ynt: Timer1 ve Timer0 birlikte kullanımı
Gönderen: kosantospa - 05 Ağustos 2015, 09:53:58
bende xc8'de yeniyim. interrupt fonksiyonuna şu kısmı da eklersin sorun kalmaz gibi geliyor.


if(INTCONbits.TMR0IF)
    {
        INTCONbits.TMR0IF=0;
        TMR0=5;  // bu deger 2ms saniye içindi yanlıs hatırlamıyorsam onu değiştirirsin isteğine göre
        Counter++;

       

     }


Başlık: Ynt: Timer1 ve Timer0 birlikte kullanımı
Gönderen: OxfordBlue - 14 Ağustos 2015, 15:56:20
Peki benim yazılımıma dahil edebilirmisiniz yüksek öncelik ve düşük öncelik li die ayrılmalı diye düşünüyorum