pgm_read_byte 8bit nach 32 bit

OP #3516970
Lesenswert?
• ▲
▼
Original U.Radig /8bit:
1
char b;
2
b = pgm_read_byte(http_entry[index].new_page_pointer++);

meine Änderung /32bit:
1
char pgm_read_bytex(uint8_t *x){
2
return *x;
3
}
4

5
...
6
unsigned char b[5];
7
http_entry[1].new_page_pointer=Page1;
8
b[0] = pgm_read_bytex(http_entry[1].new_page_pointer++);
9
b[1] = pgm_read_bytex(http_entry[1].new_page_pointer++);
10
b[2] = pgm_read_bytex(http_entry[1].new_page_pointer++);
11
b[3] = pgm_read_bytex(http_entry[1].new_page_pointer++);
12
b[4] = '\0';
13
lgw(10,1,b);

Der code funktioniert, es kommt aber sowohl bem Original wie bei der 
Änderung die Warnung "makes pointer from integer without a cast". Wieso 
die Warnung und wie bekomme ich sie weg?
OP #3517086
Lesenswert?
• ▲
▼
Glückwunsch zu Deinem Gedächtnis:
1
  struct   http_table
2
  {
3
//    PGM_P old_page_pointer          ;
4
//    PGM_P new_page_pointer          ;
5
    uint32_t old_page_pointer        ;
6
    uint32_t new_page_pointer        ;
7
    unsigned char *auth_ptr         ;
8
...

So macht das Sinn, bei progmem wird mit dem Integer das Feld eines 
arrays bezeichnet, nicht eine Adresse.

Ich muss also die Structur ändern, weil ich bei arm eine Speicheradresse 
brauche.

Danke

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.