Gast
#4078742
Hi,
ich habe folgende struct erstellt um übersichtlicher auf die Daten
zugreifen zu können.
typedef struct ST_MY_STRUCT
{
uint8_t op;
uint16_t sec;
uint32_t id;
uint16_t flags;
char addr[6];
char name[16];
char fin[12];
} MY_STRUCT;
Weiter habe ich einen Buffer wo die Daten vom UART kommen...
char buf_uart[128];
Um die nun im Struct- Zugriff Daten im "buf_uart" zu ändern gehe ich wie
folgt vor ...
MY_STRUCT* pMY_STRUCT = (MY_STRUCT*) buf_uart;
pMY_STRUCT->id = 0xFF12AE34;
pMY_STRUCT->op = 15;
pMY_STRUCT->sec = 600;
Die Daten stehen dann an der Position wo sie hingehören im RAM...
Nur zurück habe ich nun das Problem das die Inhalte nicht stimmen... :-(
uint32 id_read;
MY_STRUCT* pREAD_MY_STRUCT = (MY_STRUCT*) buf_uart;
id_read = pREAD_MY_STRUCT->id;
Inhalt von id_read ist anderes...
Hoffe man kann es nachvollziehen und es gibt jemanden der Ahnung hat und
mir einen Tip geben kann. ;-)
Grüße, AVRli...