Forum: Mikrocontroller und Digitale Elektronik Konfiguration der Mailbox für AT90CAN 128


von gast (Gast)


Lesenswert?

Hallo,

Ich beschäftige mich seit einigen Zeit mit dem Mikrocontroller 
AT90CAN128 von Atmel.
Ich sende und empfange Nachricht per CAN-Bus.Ich habe bis jetzt für das 
Empfanfen die Mailbox vorher gewählt. Nun möchte ich eine kleine Routine 
schreiben, die mir automatisch die freie Mailbox zurück gibt. Wenn es 
keine freie Mailbox gibt, die 0xF zurückgeben.
ich habe die Funktion so definiert, aber ich bekomme nicht die 0xF als 
Rückgabewert. Ich bekomme immer die Werte 0 bis 14 und wieder die 0 bis 
14.
Bitte kann jemanden mir helfen.

Ich danke Ihnen


 uint8_t Get_FreeMob(void)
 {
   uint8_t ctrlReg;
   uint8_t equality = 1;
   for ( uint8_t freemob = 0; freemob < 15; freemob++)
   {
     CANPAGE = freemob << 4;
     ctrlReg = (CANCDMOB & ((1<<CONMOB0) |(1<<CONMOB1)));
     if (ctrlReg == 0){
       equality = 0;
       return freemob;
     }
   }

   if(equality==1){
     return 0xF;
   }
 }

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.