Gast
#480556
Hallo,
Habe ein Problem beim senden von CAN- Daten.
Ich benutze einen C167CR von Infineon mit CAN Interface und wenn ich in
der main CAN_vTransmit(0) aufrufe sendet er in CAN_vTransmit(ubyte
ubObjNr) das CAN Objekt 0 einmal, wenn ich aber das Objekt 1 senden
will, sendet er mir es dauernd. ich stell unten noch den Source rein,
bitte um Hilfe, häng da irgendwie.
Also in der Main ruf ich nur CAN1_vTransmit(0); auf und er sendet mir
alles wunderbar.
void CAN1_vTransmit(ubyte ubObjNr)
{
CAN1_OBJ[ubObjNr].MCR = CAN1_OBJ[0].Data[0];
CAN1_OBJ[ubObjNr].MCR = CAN1_OBJ[0].Data[1];
CAN1_OBJ[ubObjNr].MCR = CAN1_OBJ[0].Data[2];
CAN1_OBJ[ubObjNr].MCR = CAN1_OBJ[0].Data[3];
CAN1_OBJ[ubObjNr].MCR = CAN1_OBJ[0].Data[4];
CAN1_OBJ[ubObjNr].MCR = CAN1_OBJ[0].Data[5];
CAN1_OBJ[ubObjNr].MCR = CAN1_OBJ[0].Data[6];
CAN1_OBJ[ubObjNr].MCR = CAN1_OBJ[0].Data[7];
}
will ich dann jedoch das Objekt 1 senden:
Ruf ich in der Main CAN1_vTransmit(1); auf
und änder in
void CAN1_vTransmit(ubyte ubObjNr)
CAN1_OBJ[ubObjNr].MCR = CAN1_OBJ[0].Data[0]; >>>>auf>>>>>
CAN1_OBJ[ubObjNr].MCR = CAN1_OBJ[1].Data[0]; usw
dann kommt es zu einem dauersenden
komm einfach nicht auf den Fehler drauf, BITTE um eure Hilfe
danke
Gruß Alex