Forum: Mikrocontroller und Digitale Elektronik AT90CAN128 CAN Filter Ateml Lib


von Paul (Gast)


Lesenswert?

Hallo,

ich würde gerne einen CAN Filter einstellen, damit nur bestimmte 
Nachrichten durchkommen auf meinen AT90CAN128.

Ich hatte das ganze schon mit der Universelle CAN Bibliothek von 
kreatives-chaos.com gelöst. Jedoch hängt sich der Controller bei einer 
Baudrate von 1mbits teilweise auf. In der Doku steht, dass das ganze 
auch nur für 250kbits getestet wurde.

Insofern wollte ich es jetzt mit der Atmel Lib versuchen.

Dort hab ich folgendes Bsp. gefunden:
        // --- Rx Command
        message.cmd = CMD_RX_MASKED;

        // --- Enable Rx
        while(can_cmd(&message) != CAN_CMD_ACCEPTED);
        // --- Wait for Rx completed
        while(1)
        {
            u8_temp = can_get_status(&message);
            if (u8_temp != CAN_STATUS_NOT_COMPLETED) break; // Out of 
while
        }
        if (u8_temp == CAN_STATUS_ERROR) break; // Out of the function


jedoch kann ich so nur auf eine Nachricht warten.

Weiß jemand wie man einen Filter so setzt, dass unterschiedliche 
Nachrichten durchkommen.

Die versuche die Register selber zu setzten sind immer gescheitert.

Um Hilfe wäre ich sehr dankbar.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.