W jaki sposób odczytać wartość z tablicy PROGMEM w procedurze AVRGCC?

AVRGCC i wskaźniki





Poprzedni Następny
Wiadomość
Spis treści
From: "AzaZeL" <AzaZeL_B_at_nospam_poczta.onet.pl>
Subject: AVRGCC i wskaźniki
Date: Wed, 1 Mar 2006 11:33:36 +0100


witam
mam problem
chce do procedury podac ardres w tablicy

uint8_t tablica[3] PROGMEM = {0x28,0xc6,0xd8};

void procedura(uint8_t *zmienna)
{
uint8_t cos;
cos=pgm_read_byte( co tu wpisac ? );
//do cos chce wpisac komórke np 0 z tablicy
}

int main(void)
{
procedura(&tablica);
}

juz kilka kombinacji zrobilem i niedziała

Pozdrawiam
AzaZeL



Poprzedni Następny
Wiadomość
Spis treści
From: =?ISO-8859-2?Q?Krzysztof_Szmur=B3o?=
Subject: Re: AVRGCC i =?ISO-8859-2?Q?wska=BCniki?=
Date: Wed, 01 Mar 2006 11:42:16 +0100


AzaZeL napisał(a):
witam
mam problem
chce do procedury podac ardres w tablicy

uint8_t tablica[3] PROGMEM = {0x28,0xc6,0xd8};

void procedura(uint8_t *zmienna)
{
uint8_t cos;
cos=pgm_read_byte( co tu wpisac ? );
//do cos chce wpisac komórke np 0 z tablicy
}

int main(void)
{
procedura(&tablica);
}

juz kilka kombinacji zrobilem i niedziała

Pozdrawiam
AzaZeL

Nazwa tablicy jest jednocześnie adresem jej pierwszego elementu.
czyli powinieneś mieć:

procedura(tablica);

Krzysztof Szmurło

Poprzedni Następny
Wiadomość
Spis treści
From: "JJJK" <janusz_karas##_at_nospam_##poczta.onet.pl>
Subject: =?iso-8859-2?Q?Re:_AVRGCC_i_wska=BCniki?=
Date: Wed, 1 Mar 2006 14:50:18 +0100



Nazwa tablicy jest jednocześnie adresem jej pierwszego elementu.
czyli powinieneś mieć:
procedura(tablica);
A nie trzeba by jeszcze przekazac dlugosci tej tablicy ?

JJJK




Poprzedni Następny
Wiadomość
Spis treści
From: "JJJK" <janusz_karas##_at_nospam_##poczta.onet.pl>
Subject: =?iso-8859-2?Q?Re:_AVRGCC_i_wska=BCniki?=
Date: Wed, 1 Mar 2006 14:52:10 +0100


JJJK <janusz_karas##_at_nospam_##poczta.onet.pl> napisał
Nazwa tablicy jest jednocześnie adresem jej pierwszego elementu.
czyli powinieneś mieć:
procedura(tablica);
A nie trzeba by jeszcze przekazac dlugosci tej tablicy ?
JJJK

Heh, albo numeru elementu :)

JJJK


Poprzedni Następny
Wiadomość
Spis treści
From: =?ISO-8859-2?Q?Krzysztof_Szmur=B3o?=
Subject: Re: AVRGCC i =?ISO-8859-2?Q?wska=BCniki?=
Date: Wed, 01 Mar 2006 14:57:37 +0100


JJJK napisał(a):
JJJK <janusz_karas##_at_nospam_##poczta.onet.pl> napisał
Nazwa tablicy jest jednocześnie adresem jej pierwszego elementu.
czyli powinieneś mieć:
procedura(tablica);
A nie trzeba by jeszcze przekazac dlugosci tej tablicy ?
JJJK

Heh, albo numeru elementu :)

JJJK
No to wtedy już: procedura(&tablica[x]);

Krzysztof Szmurło

Poprzedni Następny
Wiadomość
Spis treści
From: Wojtek <adun_wywalto__at_nospam_o2.pl>
Subject: Re: AVRGCC i =?ISO-8859-2?Q?wska=BCniki?=
Date: Thu, 02 Mar 2006 22:34:10 +0100


Krzysztof Szmur=B3o wrote:
JJJK napisa=B3(a):
=20
JJJK <janusz_karas##_at_nospam_##poczta.onet.pl> napisa=B3

Nazwa tablicy jest jednocze=B6nie adresem jej pierwszego elementu.
czyli powiniene=B6 mie=E6:
procedura(tablica);

A nie trzeba by jeszcze przekazac dlugosci tej tablicy ?
JJJK

Heh, albo numeru elementu :)

JJJK
=20
No to wtedy ju=BF: procedura(&tablica[x]);
=20
Krzysztof Szmur=B3o

procedura(tablica+x)

=B3adniejsze :)

wojtek

Poprzedni Następny
Wiadomość
Spis treści
From: "Artur M. Piwko" <pipene-news_at_nospam_pu.kielce.pl>
Subject: Re: AVRGCC i =?iso-8859-2?Q?wska=BCniki?=
Date: Fri, 3 Mar 2006 14:40:31 +0000 (UTC)


In the darkest hour on Thu, 02 Mar 2006 22:34:10 +0100,
Wojtek <adun_wywalto__at_nospam_o2.pl> screamed:
Nazwa tablicy jest jednocześnie adresem jej pierwszego elementu.
czyli powinieneś mieć:
procedura(tablica);

A nie trzeba by jeszcze przekazac dlugosci tej tablicy ?

Heh, albo numeru elementu :)

No to wtedy już: procedura(&tablica[x]);

Krzysztof Szmurło

procedura(tablica+x)

ładniejsze :)


Bynajmniej.

--
[ Artur M. Piwko : Pipen : AMP29-RIPE : RLU:100918 : From == Trap! : SIG:229B ]
[ 15:38:50 user up 10904 days, 3:33, 1 user, load average: 0.06, 0.06, 0.06 ]

As of next week, passwords will be entered in Morse code.

Poprzedni Następny
Wiadomość
Spis treści
From: "Artur M. Piwko" <pipene-news_at_nospam_pu.kielce.pl>
Subject: Re: AVRGCC i =?iso-8859-2?Q?wska=BCniki?=
Date: Wed, 1 Mar 2006 14:25:41 +0000 (UTC)


In the darkest hour on Wed, 1 Mar 2006 11:33:36 +0100,
AzaZeL <AzaZeL_B_at_nospam_poczta.onet.pl> screamed:
mam problem
chce do procedury podac ardres w tablicy

uint8_t tablica[3] PROGMEM = {0x28,0xc6,0xd8};

void procedura(uint8_t *zmienna)
{
uint8_t cos;
cos=pgm_read_byte( co tu wpisac ? );
//do cos chce wpisac komórke np 0 z tablicy
}

int main(void)
{
procedura(&tablica);
}

juz kilka kombinacji zrobilem i niedziała


tablica - uint8_t *
&tablica - uint8_t **

--
[ Artur M. Piwko : Pipen : AMP29-RIPE : RLU:100918 : From == Trap! : SIG:214B ]
[ 15:25:17 user up 10902 days, 3:20, 1 user, load average: 0.06, 0.06, 0.06 ]

I came; I saw; I fucked up.

Poprzedni Następny
Wiadomość
Spis treści
From: "Pelos" <pelos_at_nospam_pelos.pl>
Subject: Re: AVRGCC i wskaźniki
Date: Wed, 1 Mar 2006 15:54:09 +0100



Użytkownik "AzaZeL" <AzaZeL_B_at_nospam_poczta.onet.pl> napisał w wiadomości
news:du3ta8$5ic$1_at_nospam_bgnet.pl...
witam
mam problem
chce do procedury podac ardres w tablicy

uint8_t tablica[3] PROGMEM = {0x28,0xc6,0xd8};

void procedura(uint8_t *zmienna)
{
uint8_t cos;
cos=pgm_read_byte( co tu wpisac ? );
//do cos chce wpisac komórke np 0 z tablicy
}

int main(void)
{
procedura(&tablica);
}

juz kilka kombinacji zrobilem i niedziała


void procedura(uint8_t *zmienna)

a to nie powinno byc void procedura(PGM_P zmienna) czy jakos tak.
Nie pamietam teraz.
Takie specjalny pointer na mem flasza ?

--
Pelos
http://www.pelos.pl



Poprzedni Następny
Wiadomość
Spis treści
From: Jurek Szczesiul <jerzy.szczesiul_at_nospam_wycin.ep.com.pl>
Subject: Re: AVRGCC i =?iso-8859-2?Q?wska=BCniki?=
Date: Wed, 1 Mar 2006 19:21:03 +0100


Wed, 1 Mar 2006 11:33:36 +0100, na pl.misc.elektronika, AzaZeL napisał(a):

juz kilka kombinacji zrobilem i niedziała

char Ftable[] PROGMEM = {0x10,0x20,0x30};
......
char GetFChar (PGM_P ftabl, int index)
{
return pgm_read_byte(ftabl + index);
}
......
a=GetFChar(Ftable,0);


--
Pozdrowienia
Jurek Szczesiul

Poprzedni Następny
Wiadomość
Spis treści
From: "AzaZeL" <AzaZeL_B_at_nospam_poczta.onet.pl>
Subject: Re: AVRGCC i wskaźniki
Date: Wed, 1 Mar 2006 21:50:18 +0100


odpalilem
dzieki za odpowiedzi pozdrawiam
AzaZeL