Baudrate CAN dspic30F6011A

Gast #4159995
Lesenswert?

Hallo,
ich habe mein CAN mit einem dsPIC30F6011A auf 250kHz eingestellt (habe 
ich zumindestens gedacht). Aber er läuft unter 83,3kHz (was ich nicht 
haben möchte).
Ich habe den Pic mit einem externen 6MHz Quarz beschaltet. die 
Configurations-bits des Pics sind
1
_FOSC(CSW_FSCM_OFF & ECIO_PLL8);  //Run this project using an external crystal routed via the PLL in 8x multiplier mode
2
_FWDT(WDT_OFF);                 //Turn off the Watch-Dog Timer.
3
_FBORPOR(MCLR_EN & PWRT_OFF);   //Enable MCLR reset pin and turn off the power-up timers.
4
_FGS(CODE_PROT_OFF);            //Disable Code Protection

Dann setze ich noch folgende Bits
1
    C1CTRLbits.CANCKS = 1;
2
    C1CFG1bits.SJW = 0x00; // 1TQ
3
    C1CFG1bits.BRP = 0x01; // TQ=2*(BRP+1)/FCAN=133,33ns
4
    C1CFG2bits.SEG1PH = 0x03; // 4TQ
5
    C1CFG2bits.SEG2PH = 0x03; // 4TQ
6
    C1CFG2bits.PRSEG = 0x02;  // 3TQ

mit 1/250kHz dauer ein bit 4us. mit BRP=1, dauert ein TQ 133,33ns. Also 
habe ich 12 TQ in einem Bit. diese habe ich mit berücksichtigung der 
Einstellregeln auch so gesetzt.

Jetzt frag ich mich und weiss keine Antwort, wiso der CAN mit 83,3kHz 
läuft und nicht mit 250kHz.

Bin die Einstellungen immer wieder durchgegangen, aber meiner Meinung 
nach müssten die Richtig sein. muss ich sonst noch etwas einstellen?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren