IAR C

Jan 30, 2006 3 Replies

Hello, All!



á ÎÅÌØÚÑ ÌÉ ËÁË-ÎÉÂÕÄØ IAR_C (ËÏÎËÒÅÔÎÏ - 4.11) ÎÁÕÞÉÔØ, ÞÔÏÂÙ ÏÎ ËÏÎÓÔÁÎÔÎÙÅ ÓÔÒÏËÏ×ÙÅ ÌÉÔÅÒÁÌÙ ÐÏ ÕÍÏÌÞÁÎÉÀ ×Ï ÆÌÅÛÅ ÒÁÚÍÅÝÁÌ? þÔÏÂÙ ÍÏÖÎÏ ÂÙÌÏ ÐÉÓÁÔØ ÔÁË strlen_P("ÓÔÒÏËÁ");
á ÓÅÊÞÁÓ ÐÒÉÈÏÄÉÔÓÑ ÅÍÕ Ñ×ÎÏ ÕËÁÚÙ×ÁÔØ: __flash char str[]="ÓÔÒÏËÁ"; strlen_P(str);
÷ÒÏÄÅ ÂÙ ÎÁ ÜÔÏ ÄÏÌÖÎÏ ÄÅÊÓÔ×Ï×ÁÔØ ÓÎÑÔÉÅ ÇÁÌÏÞËÉ "Place string literals and constats in initialized RAM", ÎÏ ÎÅ ÐÏÍÏÇÁÅÔ. þÔÏ Ñ ÄÅÌÁÀ ÎÅ ÔÁË? á ÔÏ × ÐÒÏÅËÔÅ ÕÊÍÁ ÏÄÎÏËÒÁÔÎÏ ÉÓÐÏÌØÚÕÅÍÙÈ ÓÔÒÏËÏ×ÙÈ ÐÅÒÅÍÅÎÎÙÈ, ÕÐÏÔÅÌ Ñ ÕÖÅ ÉÍ ×ÍÅÎÑÅÍÙÅ ÉÍÅÎÁ ÐÒÉÄÕÍÙ×ÁÔØ.

With best regards, Sergey Zabelin.



Mon, 30 Jan 2006 02:03:31 +0000 (UTC) Sergey Zabelin wrote to All:

SZ> á ÎÅÌØÚÑ ÌÉ ËÁË-ÎÉÂÕÄØ IAR_C (ËÏÎËÒÅÔÎÏ - 4.11) ÎÁÕÞÉÔØ, ÞÔÏÂÙ ÏÎ SZ> ËÏÎÓÔÁÎÔÎÙÅ ÓÔÒÏËÏ×ÙÅ ÌÉÔÅÒÁÌÙ ÐÏ ÕÍÏÌÞÁÎÉÀ ×Ï ÆÌÅÛÅ ÒÁÚÍÅÝÁÌ? SZ> þÔÏÂÙ ÍÏÖÎÏ ÂÙÌÏ ÐÉÓÁÔØ ÔÁË SZ> strlen_P("ÓÔÒÏËÁ");

SZ> á ÓÅÊÞÁÓ ÐÒÉÈÏÄÉÔÓÑ ÅÍÕ Ñ×ÎÏ ÕËÁÚÙ×ÁÔØ: SZ> __flash char str[]="ÓÔÒÏËÁ"; SZ> strlen_P(str);

SZ> ÷ÒÏÄÅ ÂÙ ÎÁ ÜÔÏ ÄÏÌÖÎÏ ÄÅÊÓÔ×Ï×ÁÔØ ÓÎÑÔÉÅ ÇÁÌÏÞËÉ "Place string literals SZ> and constats in initialized RAM", ÎÏ ÎÅ ÐÏÍÏÇÁÅÔ. þÔÏ Ñ ÄÅÌÁÀ ÎÅ ÔÁË?

ëÌÀÞ --initializers_in_flash. çÄÅ ÜÔÏ × ÏÂÏÌÏÞËÅ, ÎÅ ÚÎÁÀ, ÉÝÉ, ÄÏÌÖÎÏ ÂÙÔØ. îÁËÒÁÊÎÑË ÒÕËÁÍÉ ÄÏÐÉÛÉ.

Hello Sergey!

30 Jan 34 05:03, Sergey Zabelin wrote to All:

SZ> á ÎÅÌØÚÑ ÌÉ ËÁË-ÎÉÂÕÄØ IAR_C (ËÏÎËÒÅÔÎÏ - 4.11) ÎÁÕÞÉÔØ, ÞÔÏÂÙ ÏÎ SZ> ËÏÎÓÔÁÎÔÎÙÅ SZ> ÓÔÒÏËÏ×ÙÅ ÌÉÔÅÒÁÌÙ ÐÏ ÕÍÏÌÞÁÎÉÀ ×Ï ÆÌÅÛÅ ÒÁÚÍÅÝÁÌ? SZ> þÔÏÂÙ ÍÏÖÎÏ ÂÙÌÏ ÐÉÓÁÔØ ÔÁË SZ> strlen_P("ÓÔÒÏËÁ");

SZ> á ÓÅÊÞÁÓ ÐÒÉÈÏÄÉÔÓÑ ÅÍÕ Ñ×ÎÏ ÕËÁÚÙ×ÁÔØ: SZ> __flash char str[]="ÓÔÒÏËÁ"; SZ> strlen_P(str);

SZ> ÷ÒÏÄÅ ÂÙ ÎÁ ÜÔÏ ÄÏÌÖÎÏ ÄÅÊÓÔ×Ï×ÁÔØ ÓÎÑÔÉÅ ÇÁÌÏÞËÉ "Place string SZ> literals and constats in initialized RAM", ÎÏ ÎÅ ÐÏÍÏÇÁÅÔ. þÔÏ Ñ ÄÅÌÁÀ SZ> ÎÅ ÔÁË? SZ> á ÔÏ × ÐÒÏÅËÔÅ ÕÊÍÁ ÏÄÎÏËÒÁÔÎÏ ÉÓÐÏÌØÚÕÅÍÙÈ ÓÔÒÏËÏ×ÙÈ ÐÅÒÅÍÅÎÎÙÈ, SZ> ÕÐÏÔÅÌ Ñ ÕÖÅ ÉÍ ×ÍÅÎÑÅÍÙÅ ÉÍÅÎÁ ÐÒÉÄÕÍÙ×ÁÔØ.

ðÏÌØÚÕÊÓÑ ×ÏÚÍÏÖÎÏÓÔØÀ ÏÐÒÅÄÅÌÅÎÉÑ ÐÅÒÅÍÅÎÎÏÊ ×ÎÕÔÒÉ ÂÌÏËÁ (É, ÓÏÏÔ×ÅÔÓÔ×ÅÎÎÏ, ÏÇÒÁÎÉÞÅÎÉÅÍ ×ÉÄÉÍÏÓÔÉ ÜÔÏÊ ÐÅÒÅÍÅÎÎÏÊ ÜÔÉÍ ÂÌÏËÁ). ÷ÏÔ ÔÁËÏÊ ÍÁËÒÏÓ Õ ÍÅÎÑ ÒÁÂÏÔÁÅÔ ÄÌÑ ×ÙÄÁÞÉ ÓÔÒÏË, ÎÁÐÒÉÍÅÒ (ÒÁÚ×ÅÒÎÕÔØ ÎÕÖÎÏ × ÏÄÎÕ ÓÔÒÏËÕ):

=== Cut === #define PrintFlash(m) do{static __flash char message[]=m;printf_P(message);}while(0) === Cut ===

Sergei

Hi, Sergey !

SZ> á ÎÅÌØÚÑ ÌÉ ËÁË-ÎÉÂÕÄØ IAR_C (ËÏÎËÒÅÔÎÏ - 4.11) ÎÁÕÞÉÔØ, ÞÔÏÂÙ ÏÎ SZ> ËÏÎÓÔÁÎÔÎÙÅ ÓÔÒÏËÏ×ÙÅ ÌÉÔÅÒÁÌÙ ÐÏ ÕÍÏÌÞÁÎÉÀ ×Ï ÆÌÅÛÅ ÒÁÚÍÅÝÁÌ? SZ> þÔÏÂÙ ÍÏÖÎÏ ÂÙÌÏ ÐÉÓÁÔØ ÔÁË SZ> strlen_P("ÓÔÒÏËÁ"); SZ> á ÓÅÊÞÁÓ ÐÒÉÈÏÄÉÔÓÑ ÅÍÕ Ñ×ÎÏ ÕËÁÚÙ×ÁÔØ: SZ> __flash char str[]="ÓÔÒÏËÁ"; SZ> strlen_P(str);

SZ> ÷ÒÏÄÅ ÂÙ ÎÁ ÜÔÏ ÄÏÌÖÎÏ ÄÅÊÓÔ×Ï×ÁÔØ ÓÎÑÔÉÅ ÇÁÌÏÞËÉ "Place string SZ> literals and constats in initialized RAM", ÎÏ ÎÅ ÐÏÍÏÇÁÅÔ. þÔÏ Ñ ÄÅÌÁÀ SZ> ÔÁË? á ÔÏ × ÐÒÏÅËÔÅ ÕÊÍÁ ÏÄÎÏËÒÁÔÎÏ ÉÓÐÏÌØÚÕÅÍÙÈ ÓÔÒÏËÏ×ÙÈ ÐÅÒÅÍÅÎÎÙÈ, SZ> ÕÐÏÔÅÌ Ñ ÕÖÅ ÉÍ ×ÍÅÎÑÅÍÙÅ ÉÍÅÎÁ ÐÒÉÄÕÍÙ×ÁÔØ.

--string_literals_in_flash, ÅÓÌÉ ÎÅ ÏÛÉÂÁÀÓØ. ôÁËÏÊ ÇÁÌËÉ ÎÅÔ, ÎÕÖÎÏ ÄÏÂÁ×ÉÔØ ÜÔÕ ÆÒÁÚÕ × ÄÉÁÌÏÇÅ "ÜËÓÔÒÁ ÏÐÃÉÉ" ËÏÍÐÉÌÑÔÏÒÁ. òÁÂÏÔÁÅÔ, ÎÏ ÍÏÖÅÔ ×ÏÚÎÉËÎÕÔØ ÄÒÕÇÁÑ ÐÒÏÂÌÅÍÁ - × ÎÅËÏÔÏÒÙÈ ÓÔÁÎÄÁÒÔÎÙÈ h-ÆÁÊÌÁÈ ÅÓÔØ ÄÅÆÁÊÎÙ ÓÔÒÏË, ÒÁÓÓÞÉÔÁÎÙÅ ÎÁ ÏÂÙÞÎÙÊ ×ÁÒÉÁÎÔ...

÷ÓÅÇÏ ÎÁÉÌÕÞÛÅÇÏ, Sergey!

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required