Forum: Mikrocontroller und Digitale Elektronik Flash page als int8_t array casten


von Ralph (Gast)


Lesenswert?

Hallo zusammen,

stehe grade auf dem schlauch....

habe zwei Flash pages (512byte) die ich jeweils als int8_t array[512] 
casten möchte, hätte das jetzt so gemacht:

uint8_t (*flash_A)[512] = (uint8_t (*)[512]) 0x00040200;
uint8_t (*flash_B)[512] = (uint8_t (*)[512]) 0x00040400;

allerdings kommt dann bei:

if (flash_A[n] != 0xFF)

die Warnung: comparison between pointer and integer [enabled by default]

und bei einer funktion die einen pointer auf ein array als übergabe 
erwartet:

void reload_config(uint8_t *flash_A)

die Warnung: passing argument 1 of 'reload_config' from incompatible 
pointer type [enabled by default]

Was mache ich falsch?
Danke

von Marcel (Gast)


Lesenswert?

Ralph schrieb:
> uint8_t (*flash_A)[512]

ist ein Array mit 512 Elementen vom typ uint8_t*. Lass das Array weg, du 
brauchst nur 1 Zeiger, nicht 512.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.