Help with PROGMEM
i working on program , trying use progmem. noticed not getting results expected decided start basic code shown on site , have same issue. here sample code site. expect 65000 sent serial not case. missing here?
 							code: [select]
#include <pgmspace.h>
//#include <avr/pgmspace.h>
// setup routine runs once when press reset:
void setup() {             
  serial.begin(9600);
}
// loop routine runs on , on again forever:
void loop() {
  // save unsigned ints
  progmem  prog_uint16_t charset[]  = { 65000, 32796, 16843, 10, 11234};
  
  // save chars
  prog_uchar signmessage[] progmem  = {"i predator,  unseen combatant. created united states depart"};
  
  unsigned int displayint;
  int k = 0;    // counter variable
  char mychar;  
  
  // read 2-byte int
   displayint = pgm_read_word_near(charset + k);
  
  // read char 
  mychar =  pgm_read_byte_near(signmessage + k); 
  serial.println(displayint);
  delay(1000);
}
here:
progmem variables cannot on stack (in other words cannot auto variables). move declaration , works:
 							code: [select]
void loop() {
  // save unsigned ints
  progmem  prog_uint16_t charset[]  = { 65000, 32796, 16843, 10, 11234};
progmem variables cannot on stack (in other words cannot auto variables). move declaration , works:
code: [select]
// save unsigned ints
progmem  prog_uint16_t charset[]  = { 65000, 32796, 16843, 10, 11234};
void loop() {
            						 					Arduino Forum  						 						 							 >   					Using Arduino  						 						 							 >   					Programming Questions  						 						 							 >   					Help with PROGMEM  						 					
arduino
 
  
Comments
Post a Comment