www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Can Bus


Autor: samuel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
meine Can-Bus Kommunikation hat zwischen dem TMS320F2812 uhatte
funktioniert. Nun musste ich noch einen Busteinehmer hinzufügen, der
nur mit Standard Protokoll (11-Bit Identifier) arbeitet. Ich habe dann
alle Bus-Teinehmer auf Standard Protokoll umgestellt. Trotzdem kann der
TMS320F2812 nun keine Daten mehr empfangen. (Baud-Rate und ID sind
natürlich auch richtig eingestellt)
Muss ich noch was umstellen oder was könnte der Grund für dieses
Fehlverhalten sein?
danke
Gruss
Samuel

Autor: Christian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Terminierung?
Low Speed und High Speed gemischt?
Poste mal mehr Details.

Autor: samuel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ok...hier ist die initialisierung meines Can busses zum empfangen von
daten:
danke Samuel


/*--------------------------------------------------------------*/
/*initialize Can-Bus*/
/*--------------------------------------------------------------*/

void InitECan(void)
{
EALLOW;
GpioMuxRegs.GPFMUX.bit.CANTXA_GPIOF6 = 1;
GpioMuxRegs.GPFMUX.bit.CANRXA_GPIOF7 = 1;
ECanaRegs.CANTIOC.bit.TXFUNC = 1;
ECanaRegs.CANRIOC.bit.RXFUNC = 1;
ECanaRegs.CANMC.bit.SCB = 1;
ECanaRegs.CANMC.bit.CCR = 1;
while(ECanaRegs.CANES.bit.CCE !=1){}
ECanaRegs.CANBTC.bit.BRPREG = 19;
ECanaRegs.CANBTC.bit.TSEG1REG = 10;
ECanaRegs.CANBTC.bit.TSEG2REG = 2;
EALLOW;
ECanaRegs.CANMC.bit.CCR = 0;
while(ECanaRegs.CANES.bit.CCE !=0){}
ECanaRegs.CANME.all = 0x0;

EDIS;
}

/*--------------------------------------------------------------*/
/*prepare for receive*/
/*--------------------------------------------------------------*/

ECanaMboxes.MBOX16.MSGID.all = 0x20540000;

ECanaMboxes.MBOX16.MSGID.bit.STDMSGID = 1;
ECanaShadow.CANMD.all = ECanaRegs.CANMD.all;
ECanaShadow.CANMD.bit.MD16 = 1;
ECanaRegs.CANMD.all = ECanaShadow.CANMD.all;

ECanaShadow.CANME.all = ECanaRegs.CANME.all;
ECanaShadow.CANME.bit.ME16 = 1;
ECanaRegs.CANME.all = ECanaShadow.CANME.all;

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.