Hallo,
ich habe ein eine structur, welche volatile parameter beinhaltet
1 | typedef struct
|
2 | {
|
3 | volatile uint16_t seconds;
|
4 | volatile uint8_t minutes;
|
5 | volatile uint8_t hours;
|
6 | volatile uint8_t day;
|
7 | volatile uint8_t month;
|
8 | volatile uint8_t year;
|
9 | volatile uint8_t valid :1;
|
10 | volatile uint8_t leapYear :1;
|
11 | }time_ts
|
1 | volatile time_ts time_s;
|
dieser wird in in der ISR verändert.
Jetzt möchte ich diese Struktur aber auch einer Funktion übergeben und
auch dort bearbeiten
Hier bekomme ich die Warnung:
passing argument 1 of checkTime discards volatile qualifier from pointer
target type
Da habe ich zwei Fragen zu.
1) Müssen die einzelnen Elemente im Struct überhaupt volatile sein? Oder
reicht es, wenn der struct an für sich volatile ist?
2) Wie kann ich die struktur einer Funktion übergeben?