Problem mit Timer

Gast #1278647
Hallo!!

Bin gerade dabei mich mit den Pic30f auseinander zusetzen und will den 
Timer1 des uC verwenden.
Ich verwende den pic 30F4013 sowie das dsPICDEM 2 Development Board, 
programmiere im MPLAB und benutze den pic30-gcc Compiler.

Nun ist mein Problem das der Timer nicht zu Zählen beginnt das heißt das 
Register TMR bleibt immer auf 0x0000 und das Interrupt Flag wird nicht 
gesetzt.
1
#include <p30fxxxx.h>    
2
#include "system.h"      
3
                    
4
_FOSC(CSW_FSCM_OFF & XT_PLL8);  //Run this project using an external crystal 
5
                                //routed via the PLL in 8x multiplier mode 
6
                                //For the 7.3728 MHz crystal we will derive a 
7
                                //throughput of 7.3728e+6*8/4 = 14.74 MIPS(Fcy) 
8
                                //,~67nanoseconds instruction cycle time(Tcy). 
9
_FWDT(WDT_OFF);                 //Turn off the Watch-Dog Timer. 
10
_FBORPOR(MCLR_EN & PWRT_OFF);   //Enable MCLR reset pin and turn off the 
11
                                //power-up timers. 
12
_FGS(CODE_PROT_OFF);            //Disable Code Protection 
13
int main (void) 
14
{ 
15
 T1CON = 0x0020;         //Timer1 set up to count on instruction cycle 
16
                                //edge with 1:64 prescaler applied initially. 
17
        PR1 = 0x00FF;           //Period Register, PR1, set to maximum count 
18
        IFS0bits.T1IF = 0;      //Clear the Timer1 Interrupt Flag 
19
        IEC0bits.T1IE = 1;      //Enable Timer1 Interrupt Service Routine 
20
    
21
      
22
 while(1) 
23
{                         
24
        T1CONbits.TON=1;    
25

26
        if(IFS0bits.T1IF==1)        
27
      {        
28
              T1CONbits.TON=0;                
29
   Tu irgendwas                
30
    }                
31
             TMR1=0x0000; 
32
   IFS0bits.T1IF =0; 
33
         } 
34
return 0;               //Code never reaches here! 
35
}

Ist hier irgendwo ein Fehler in der Timer Konfiguration?
Wäre sehr dankbar wenn mir jemand weiter helfen könnte.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.