Gast
#367356
Ich habe eine Struktur mit verschiedenen Bits. Ich denke, der Aufbau der
Struktur sollte hier keine Rolle spielen. Die Struktur nutze ich, um die
Bits besser auswerten zu können.
Diese Struktur werte ich in einer Funktion aus; Zugriff von anderer
Stelle auf diese Struktur zu diesem Zeitpunkt ist ausgeschlossen.
Nachdem ich die Struktur ausgewertet habe, muss ich sie komplett
löschen - bevor ich wieder Daten in die Struktur fülle.
//globale variable
volatile uint16_t mem_buffer;
//Funktion zum auswerten:
{
struct rx_incomming *rx_buffer;
rx_buffer = (struct rx_incomming *)(uint16_t)&mem_buffer;
//...verschiedenes
//und dann löschen
rx_buffer = 0;
}
Das löschen von rx_buffer, wobei es sich eigentlich um mem_buffer
handelt funktioniert aber nicht. Folge sind falsche Werte in den
nächsten Schritten. ersetze ich "rx_buffer = 0" geg. "mem_buffer =
0" arbeitet es tadellos! Ich kann das nicht ganz nachvollziehen.
lst-File gibt mir auch keinen Aufschluss.
Evtl. hat jemand einen Tipp! Ich nutze solche Funktionalität zum ersten
male (also Struktur über Variable legen (wie nennt man das eigentlich?
;-) ).
Danke