mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Frage zum AT90CAN128? Receive MOb, welche DLC?


Autor: ein neuer Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich beschäftige mich gerasde mit dem AT90CAN128. Ich möchte damit CAN 
Nachrichten empfangen, egal wie lang diese sind.
Was schreibe ich denn bei dem Message Object zum Empfangen in die DLC 
Felder des Registers CANCDMOB?
Im Datenblatt steht:
This field is updated with the corresponding value of the remote or data 
frame received. If the expected DLC differs from the incoming DLC, a DLC 
warning appears in the CANSTMOB register.

Bedeutet das wenn ich in das Feld 8 schreibe, dann empfange ich aber 
eine Nachricht mit DLC=3, dann wird diese empfangen und akzeptiert, aber 
eine warnung wird ausgegeben?

Autor: ein neuer Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie ist das egentlich mit mehreren Message Objekts zum empfangen?

Kann ich ein MOb so konfigurieren das zum Bsp. alle Nachrichten mit der 
ID 111 und ein anderes MOb so konfigurieren das alle Nachrichten mit der 
ID 222 durchgelassen werden und dann werden alle Nachrichetn mit 111 und 
222 durchgelassen?

Autor: Rudolph R. (rudolph)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist zwar etwas komplexer, steht doch aber alles im Datenblatt?

Die MoB's kann man sogar auf Bereich-Filtern konfigurieren,
also mit einem MoB mehrere ID's empfangen.

Bei mehreren MoB's steht beim IRQ dann in CANSIT2 für welches Objekt der 
Interrupt ausgelöst wurde.


Die Unit finde ich völlig bescheuert - stammt auch aus den 8051'ern von 
Atmel...

Autor: Thomas O. (kosmos)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
schon etwas älter, aber trotzdem eine Antwort darauf da das sicherlich 
noch mehr Leute interessiert.

DLC of the matched MOb are updated from the incoming (frame)
valuesergo muss man beim Empänger nichts eintragen da der Sender im 
diesen Wert mitteilt.

Autor: Rudolph R. (rudolph)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Thomas O. schrieb:
> DLC of the matched MOb are updated from the incoming (frame)
> valuesergo muss man beim Empänger nichts eintragen da der Sender im
> diesen Wert mitteilt.

Wie oben aber bereits steht, bekommt man eine Warnung wenn der erwartete 
Wert nicht mit dem empfangenen übereinstimmt.
Das ist DLCW in CANSTMOB.

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.