Forum: Mikrocontroller und Digitale Elektronik übergabe eeprom array an funktion in cvavr


von mbuchman (Gast)


Lesenswert?

Hallo!

Ich habe folgendes problem:
Ich habe ein Array im eeprom gespeichert zb: eeprom char Array[4] = {0};

ich habe ein funktion, dem dieses array übergeben werden soll:

function(char input[])
{
.....
}

wenn ich die funktion nun aufrufe:

function(Array);

bekomme ich folgende fehlermeldung:
>eeprom unsigned char*[] incompatible with type unsigned char*<

was mache ich hier flasch?

Anm. ich möchte es nur so machen - d.h. ohne globale variablen - einfach 
mit parameterübergabe.

Danke!

von Abuze (Gast)


Lesenswert?

stichwort: pointer

von Johannes M. (johnny-m)


Lesenswert?

Der Pointer muss aber auch den korrekten Datentyp haben!

Also
1
eeprom char array[4];
2
3
function(eeprom char *pointer)
4
{
5
    //Code...
6
}
7
8
//Code...
9
void main(void)
10
{
11
    //Code...
12
    function(array);
13
}
sollte funktionieren.

von Karl H. (kbuchegg)


Lesenswert?

Abuze wrote:
> stichwort: pointer

Das wird nichts helfen.
Das Problem besteht ja nach wie vor, dass der Aufrufer
die Daten im EEPROM hält, während der Aufgerufene davon
ausgeht, dass die Daten im SRAM residieren.

@mbuchman

Du musst dann natürlich auch der Funktion sagen, dass
das was sie bekommt, sich nicht im SRAM befindet sondern
im eeprom.

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.