Hi there,
-
How do I clear what I put in PROGMEM?
-
Why am I getting garbage noise from the following, when I try to read from PROGMEM? I’ve spent hours trying to figure this out. Could someone please help! Thank you so much in advance.
#include <avr/pgmspace.h>
#define speaker A5
int k;
const int melody[56] PROGMEM = {
NOTE_G4, NOTE_C5, NOTE_G4, NOTE_E4,NOTE_G4,NOTE_C5,NOTE_C5,NOTE_C5,
NOTE_E5, NOTE_D5, NOTE_C5, NOTE_B4, NOTE_C5, NOTE_D5,
NOTE_G4, NOTE_C5, NOTE_G4, NOTE_E4, NOTE_C4, NOTE_G4,NOTE_G4,NOTE_G4,
NOTE_E5, NOTE_D5, NOTE_C5, NOTE_B4, NOTE_A4, NOTE_G4,
NOTE_G4, NOTE_A4, NOTE_B4, NOTE_C5, NOTE_A4, NOTE_G4, NOTE_F4, NOTE_E4,
NOTE_G4, NOTE_A4, NOTE_C5, NOTE_F5, NOTE_E5, NOTE_D5,
NOTE_G4, NOTE_A4,NOTE_B4, NOTE_C5, NOTE_A4, NOTE_G4, NOTE_C5, NOTE_C5,
NOTE_D5,NOTE_E5, NOTE_C5, NOTE_D5, NOTE_B4, NOTE_C5
};
void setup(){
pinMode(speaker, OUTPUT);
}
void loop() {
for (k = 0; k < 55; k++)
{
tone(A5, pgm_read_word_near(melody + k));
}
}