Interrupt Output compare PIC32

OP #3440127
Lesenswert?
• ▲
▼
Hallo Zusammen

ich kämpfe gerade mit Output Compare Interrupt und weiß nicht mehr, was 
ich da noch machen kann.

PIC32 SystemClock 40 MHz.
Ziel ist am OC1 einen Takt von 4MHz zu erzeugen.
Für Initialisierung nutze ich OC1_Init() und für ISR _OC1Interrupt()
Außerdem nutze eich noch im Programm Timer1, INT1 und SPI Interrupts.


Nun sobald ich Priorität auf aktiv setze( 1 oder 7) hängt das ganze main 
Programm. Das OC1 Flag wird am Startup sofort gesetzt(leuchtet LED) und 
mein Programm läuft nicht weiter.

Hat jemand eine Idee, was da falsch abläuft?

Danke!


void OC1_Init(void)
{
    //timer2 settings
    T2CONbits.TCKPS = 0; // prescaler 1/2
    PR2 = 0x0009;        // Anzahl der Periode
    TMR2 = 0;            // timer counter

    // OC1 settings 25ns SysPeriode
    OC1CON = 0x0000;
    OC1CONbits.OCM = 5;   // Ouput Pulse
    OC1CONbits.OCTSEL = 0; // timer2 select


    OC1R = 0x0004;
    OC1RS = 0x0009;

    IFS0bits.OC1IF = 0;
    IEC0bits.OC1IE = 1;
    IPC1bits.OC1IP = 7;


    T2CONbits.TON = 1;
    OC1CONbits.ON = 1;
}


void __attribute((interrupt(ipl7), vector(_OUTPUT_COMPARE_1_VECTOR), 
nomips16)) _OC1Interrupt(void)
{

    IFS0CLR = _IFS0_OC1IF_MASK;
    LED1_IO = 1;

}
Gast #3440135
Lesenswert?
• ▲
▼
>Ziel ist am OC1 einen Takt von 4MHz zu erzeugen.

Dann probier doch mal zuerst mit einem weniger ehrgeizigen Takt.

Läuft Dein main weiter, wenn Du nur 10kHz Interruptfrequenz hast?

Was schliesst Du daraus?

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

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.