0
我有一些问题,阅读从程序存储器中的字符串:AVR PROGMEM读取垃圾,而不是字符串
const char str[] PROGMEM = "Test string here\r\n";
这里是我的打印程序:
/** Send string over UART */
void uart_puts(char* str)
{
while (*str) {
uart_tx(*str++);
}
}
/** Send progmem string over UART */
void uart_puts_pgm(const char* str)
{
char c;
while (0 != (c = pgm_read_byte(&str))) {
uart_tx(c);
str++;
}
}
正常的一个工作得很好,但progmem打印无限流0xFF
。错误在哪里?
我以前和progmem一起工作过,而且它一直工作..我似乎无法在这里找到问题。