Как прочитать строку, записанную во флэш-памяти в программном обеспечении Atmel Studio? - PullRequest
0 голосов
/ 08 июля 2019

Я использовал следующий код для записи строки во флэш-память микроконтроллера Atmega128.И я использовал функцию send_at_command для отправки этой строки.Но отправляется только первый символ (A).

.
.
.#include <avr/pgmspace.h>
.
.
const char PROGMEM at_emailcid[14]="AT+EMAILCID=1";
.
.
void send_at_command(const char str[])
{
 static unsigned int loop_counter=0;
 static char c=0;

 for(loop_counter=0;loop_counter<(sizeof(str)-1);loop_counter++)
 {
 c=pgm_read_byte(&str[loop_counter]);
 put_char_0(c);
 }
}
.
.
.
int main(void)
{
 send_at_command(at_emailcid);
.
.    
}

Я также написал функции 'memcpy_P (a, b, c)' и 'strcpy_P (x, y)' в " Какхранить константы в ROM (Atmel)"в моей функции 'send_at_command'.Но это не сработало должным образом.

Как мне написать правильную функцию для отправки этой строки?Спасибо.

...