Hallo Leute! Hab mal wieder ein Problem: Ich hab in meinem Projekt(in AVR Studio) mehrer C-Files: main und ref_drive In der main hab ich ein Array im Eeprom erstellt: uint16_t eearray[40][10] EEMEM;(steht in keiner Funktion drin, sondern frei, außerhalb) Auf dieses möchte ich jetzt aber auch aus ref-drive zugreifen. z.B. durch: eeprom_write_block(&zc_array,&eearray,40*10*sizeof(uint16_t)); Dort sagt er aber, dass er eearray nicht kennt.In der main klappt das. Wie und wo muss ich dann das array noch mal deklarieren oder geht das so gar nicht? Vielen Dank!
Das geht mit einer /extern/-Deklaration: extern uint16_t eearray[][];
ah ok. jetzt kommt der Fehler nicht mehr, aber nach wie vor eine Warnung: ../ref_drive.c:54: warning: passing argument 1 of 'eeprom_write_block' discards qualifiers from pointer target type bei der Zeile eeprom_write_block(&zc_array,&eearray,40*p*sizeof(uint16_t)); Den Fehler versteh ich irgendwie nicht... in der main stehts genauso, aber keine warnung...?
Dann hänge noch "EEMEM" an die extern-Deklaration an; vermutlich ist der Prototyp der Funktion eeprom_write_block so deklariert, daß sie einen entsprechenden Pointer erwartet.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.