-
Date: Fri, 27 Jul 2012 07:45:33 +0200
From: max441 <m...@w...pl>
User-Agent: Mozilla/5.0 (Windows NT 6.0; rv:14.0) Gecko/20120713 Thunderbird/14.0
MIME-Version: 1.0
Newsgroups: pl.misc.elektronika
Subject: Re: wskaźniki do flash w WinAVR
References: <e...@g...com>
In-Reply-To: <e...@g...com>
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
X-Antivirus: avast! (VPS 120726-2, 2012-07-26), Outbound message
X-Antivirus-Status: Clean
NNTP-Posting-Host: 212.85.112.42
Message-ID: <5...@n...home.net.pl>
X-Trace: news.home.net.pl 1343367954 212.85.112.42 (27 Jul 2012 07:45:54 +0200)
Organization: home.pl news server
Lines: 41
X-Authenticated-User: k...@m...pl
Path: news-archive.icm.edu.pl!news.icm.edu.pl!nf1.ipartners.pl!ipartners.pl!news.home
.net.pl!not-for-mail
Xref: news-archive.icm.edu.pl pl.misc.elektronika:634448
[ ukryj nagłówki ]W dniu 2012-07-25 08:15, slawek7 pisze:
> Wracając jeszcze do wskaźników w WinAVR.
> Powiedzmy że mam funkcję
> viod funkcja(byte *ptr)
> {
> char=read_pgm_byte(ptr); // np robi cos takiego
> }
>
> A teraz jej wywołanie
> funkcja(PSTR("cos do wyświetlenia bez sensu"));
> lub tak
> funkcja(tab);
> z tym że
> prog_char tab[] PROGMEM={"inny tekst"};
>
> Pytanie takie:
> 1. Czy byte powinno byc typu char czy prog_char?
Powinno być prog_char, albo właściwie const prog_char. Można używać
zdefiniowanego w <avr/pgmspace.h> PGM_P, definicja wygląda tak: #define
PGM_P const prog_char *.
> 2. Czy tab powinna mieć dwie deklaracje umieszczające łańcuch we Flash? czy albo
używa się prog_char czy albo PROGMEM?
Można tak:
prog_char tab[] = {"inny tekst"};
albo tak:
char PROGMEM tab[] = {"inny tekst"};
>
> Skoro prog_char jest zmienną z atrybutem PROGMEM to czy należny tego używać
podwójnie?
Nie.
> TAk samo wskaźnik w funkcji powinien być zmienną to czy deklarowanie go jako
zmienna będąca we flash ma sens?
>
Wskaźnik powinien wskazywać na stałą w pamięci flash, czyli coś takiego:
const prog_char *ptr
albo prościej
PGM_P ptr
Następne wpisy z tego wątku
- 27.07.12 11:18 Artur M. Piwko
- 27.07.12 13:40 WTK
- 28.07.12 19:03 Artur M. Piwko
- 30.07.12 10:45 max441
- 31.07.12 09:04 Artur M. Piwko
Najnowsze wątki z tej grupy
- Aliexpress zaczął oszukiwać na bezczelnego.
- OpenPnP
- taka skrzynka do kablowki
- e-paper
- 60 mA dużo czy spoko?
- Dziwne zachowanie magistrali adresowej w 8085
- Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- Jaki silikon lub może klej?
- Smar do video
- Litowe baterie AA Li/FeS2 a alkaliczne
- "ogrodowa linia napowietrzna"
- jaki zasilacz laboratoryjny
- jaki zasilacz laboratoryjny
- Puszka w ziemię
- T-1000 was here
Najnowsze wątki
- 2025-02-21 Warszawa => Key Account Manager IT <=
- 2025-02-21 Warszawa => Data Engineer (Tech Lead) <=
- 2025-02-21 Aliexpress zaczął oszukiwać na bezczelnego.
- 2025-02-21 Warszawa => System Architect (Java background) <=
- 2025-02-21 Kula w łeb
- 2025-02-21 Warszawa => System Architect (background deweloperski w Java) <=
- 2025-02-21 Warszawa => Solution Architect (Java background) <=
- 2025-02-21 Lublin => JavaScript / Node / Fullstack Developer <=
- 2025-02-21 Pawel S
- 2025-02-21 Warszawa => Key Account Manager (Usługi HR) <=
- 2025-02-21 Katowice => Senior Field Sales (system ERP) <=
- 2025-02-21 Chrzanów => Programista NodeJS <=
- 2025-02-21 Wrocław => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-02-21 Warszawa => Administrator Systemów Windows IT <=
- 2025-02-21 Wrocław => Specjalista ds. Sprzedaży (transport drogowy) <=