WinAVR kennt Strukturen, habe sie selbst schon benutzt. Man braucht noch nicht mal irgendwelche includes dafür.
Folgender Nonsense-Code funktioniert auf jeden Fall:
Code:
typedef struct {
unsigned short int ID ; // 11 Bit-Kennung
unsigned char RTR ; // TRUE, wenn remote request
unsigned char LEN ; // Anzahl der gueltigen Datenbytes (0..8)
unsigned char DATA[8] ; // Datenbytes 0..7
} CANMsg;
int main(void)
{
CANMsg msg;
while(1)
msg.ID ++;
return 0;
}
Ich denke mal, Du hast das typedef vergessen, ohne gehts im WinAVR nicht... So definierst Du also erst mal einen neuen Datentypen, den Du dann auf eine Variable übertragen kannst.
Gruß,
askazo
Lesezeichen